# Genomics API . readgroupsets

## Instance Methods

Returns the coveragebuckets Resource.

Deletes a read group set.

Exports a read group set to a BAM file in Google Cloud Storage. Note that currently there may be some differences between exported BAM files and the original BAM file at the time of import. See [ImportReadGroupSets](google.genomics.v1.ReadServiceV1.ImportReadGroupSets) for caveats.

Gets a read group set by ID.

Creates read group sets by asynchronously importing the provided information. The caller must have WRITE permissions to the dataset. ## Notes on [BAM](https://samtools.github.io/hts-specs/SAMv1.pdf) import - Tags will be converted to strings - tag types are not preserved - Comments (`@CO`) in the input file header will not be preserved - Original header order of references (`@SQ`) will not be preserved - Any reverse stranded unmapped reads will be reverse complemented, and their qualities (and "BQ" tag, if any) will be reversed - Unmapped reads will be stripped of positional information (reference name and position)

Updates a read group set. This method supports patch semantics.

Searches for read group sets matching the criteria. Implements [GlobalAllianceApi.searchReadGroupSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/readmethods.avdl#L135).

### Method Details

`delete(readGroupSetId, x__xgafv=None)`

    Deletes a read group set.

    Args:
      readGroupSetId: string, The ID of the read group set to be deleted. The caller must have WRITE permissions to the dataset associated with this read group set. (required)
      x__xgafv: string, V1 error format.

    Returns:
      An object of the form:

        { # A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The JSON representation for `Empty` is empty JSON object `{}`.
      }

`export(readGroupSetId, body, x__xgafv=None)`

    Exports a read group set to a BAM file in Google Cloud Storage. Note that currently there may be some differences between exported BAM files and the original BAM file at the time of import. See [ImportReadGroupSets](google.genomics.v1.ReadServiceV1.ImportReadGroupSets) for caveats.

    Args:
      readGroupSetId: string, Required. The ID of the read group set to export. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # The read group set export request.
        "projectId": "A String", # Required. The Google Developers Console project ID that owns this export.
        "referenceNames": [ # The reference names to export. If this is not specified, all reference sequences, including unmapped reads, are exported. Use `*` to export only unmapped reads.
          "A String",
        ],
        "exportUri": "A String", # Required. A Google Cloud Storage URI for the exported BAM file. The currently authenticated user must have write access to the new file. An error will be returned if the URI already contains data.
      }

      x__xgafv: string, V1 error format.

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a network API call.
        "response": { # If importing [ReadGroupSets][google.genomics.v1.ReadGroupSet], an [ImportReadGroupSetsResponse][google.genomics.v1.ImportReadGroupSetsResponse] is returned. If importing [Variants][google.genomics.v1.Variant], an [ImportVariantsResponse][google.genomics.v1.ImportVariantsResponse] is returned. For exports, an empty response is returned.
          "a_key": "", # Properties of the object. Contains field @ype with type URL.
        },
        "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). The error model is designed to be: - Simple to use and understand for most users - Flexible enough to meet unexpected needs # Overview The `Status` message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of [google.rpc.Code][google.rpc.Code], but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers *understand* and *resolve* the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package `google.rpc` which can be used for common error conditions. # Language mapping The `Status` message is the logical representation of the error model, but it is not necessarily the actual wire format. When the `Status` message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C. # Other uses The error model and the `Status` message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments. Example uses of this error model include: - Partial errors. If a service needs to return partial errors to the client, it may embed the `Status` in the normal response to indicate the partial errors. - Workflow errors. A typical workflow has multiple steps. Each step may have a `Status` message for error reporting purpose. - Batch operations. If a client uses batch request and batch response, the `Status` message should be used directly inside batch response, one for each error sub-response. - Asynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the `Status` message. - Logging. If some API errors are stored in logs, the message `Status` could be used directly after any stripping needed for security/privacy reasons. # The error result of the operation in case of failure.
          "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
          "code": 42, # The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
          "details": [ # A list of messages that carry the error details. There will be a common set of message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @ype with type URL.
            },
          ],
        },
        "done": True or False, # If the value is `false`, it means the operation is still in progress. If true, the operation is completed, and either `error` or `response` is available.
        "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. For example: `operations/CJHU7Oi_ChDrveSpBRjfuL-qzoWAgEw`
        "metadata": { # An [OperationMetadata][google.genomics.v1.OperationMetadata] object. This will always be returned with the [Operation][google.longrunning.Operation].
          "a_key": "", # Properties of the object. Contains field @ype with type URL.
        },
      }

`get(readGroupSetId, x__xgafv=None)`

    Gets a read group set by ID.

    Args:
      readGroupSetId: string, The ID of the read group set. (required)
      x__xgafv: string, V1 error format.

    Returns:
      An object of the form:

        { # A read group set is a logical collection of read groups, which are collections of reads produced by a sequencer. A read group set typically models reads corresponding to one sample, sequenced one way, and aligned one way. * A read group set belongs to one dataset. * A read group belongs to one read group set. * A read belongs to one read group.
        "info": { # A map of additional read group set information.
          "a_key": [
            "",
          ],
        },
        "name": "A String", # The read group set name. By default this will be initialized to the sample name of the sequenced data contained in this set.
        "readGroups": [ # The read groups in this set. There are typically 1-10 read groups in a read group set.
          { # A read group is all the data that's processed the same way by the sequencer.
            "info": { # A map of additional read group information. This must be of the form map (string key mapping to a list of string values).
              "a_key": [
                "",
              ],
            },
            "predictedInsertSize": 42, # The predicted insert size of this read group. The insert size is the length the sequenced DNA fragment from end-to-end, not including the adapters.
            "description": "A String", # A free-form text description of this read group.
            "programs": [ # The programs used to generate this read group. Programs are always identical for all read groups within a read group set. For this reason, only the first read group in a returned set will have this field populated.
              {
                "commandLine": "A String", # The command line used to run this program.
                "prevProgramId": "A String", # The ID of the program run before this one.
                "id": "A String", # The user specified locally unique ID of the program. Used along with `prevProgramId` to define an ordering between programs.
                "version": "A String", # The version of the program run.
                "name": "A String", # The name of the program.
              },
            ],
            "sampleId": "A String", # The sample this read group's data was generated from. Note: This is not an actual ID within this repository, but rather an identifier for a sample which may be meaningful to some external system.
            "experiment": { # The experiment used to generate this read group.
              "sequencingCenter": "A String", # The sequencing center used as part of this experiment.
              "libraryId": "A String", # The library used as part of this experiment. Note: This is not an actual ID within this repository, but rather an identifier for a library which may be meaningful to some external system.
              "instrumentModel": "A String", # The instrument model used as part of this experiment. This maps to sequencing technology in BAM.
              "platformUnit": "A String", # The platform unit used as part of this experiment e.g. flowcell-barcode.lane for Illumina or slide for SOLiD. Corresponds to the @RG PU field in the SAM spec.
            },
            "referenceSetId": "A String", # The reference set the reads in this read group are aligned to. Required if there are any read alignments.
            "id": "A String", # The server-generated read group ID, unique for all read groups. Note: This is different than the `@RG ID` field in the SAM spec. For that value, see the `name` field.
            "datasetId": "A String", # The ID of the dataset this read group belongs to.
            "name": "A String", # The read group name. This corresponds to the @RG ID field in the SAM spec.
          },
        ],
        "filename": "A String", # The filename of the original source file for this read group set, if any.
        "referenceSetId": "A String", # The reference set the reads in this read group set are aligned to.
        "id": "A String", # The server-generated read group set ID, unique for all read group sets.
        "datasetId": "A String", # The dataset ID.
      }

`import_(body, x__xgafv=None)`

    Creates read group sets by asynchronously importing the provided information. The caller must have WRITE permissions to the dataset. ## Notes on [BAM](https://samtools.github.io/hts-specs/SAMv1.pdf) import - Tags will be converted to strings - tag types are not preserved - Comments (`@CO`) in the input file header will not be preserved - Original header order of references (`@SQ`) will not be preserved - Any reverse stranded unmapped reads will be reverse complemented, and their qualities (and "BQ" tag, if any) will be reversed - Unmapped reads will be stripped of positional information (reference name and position)

    Args:
      body: object, The request body. (required)
        The object takes the form of:

    { # The read group set import request.
        "sourceUris": [ # A list of URIs pointing at [BAM files](https://samtools.github.io/hts-specs/SAMv1.pdf) in Google Cloud Storage.
          "A String",
        ],
        "referenceSetId": "A String", # The reference set to which the imported read group sets are aligned to, if any. The reference names of this reference set must be a superset of those found in the imported file headers. If no reference set id is provided, a best effort is made to associate with a matching reference set.
        "partitionStrategy": "A String", # The partition strategy describes how read groups are partitioned into read group sets.
        "datasetId": "A String", # Required. The ID of the dataset these read group sets will belong to. The caller must have WRITE permissions to this dataset.
      }

      x__xgafv: string, V1 error format.

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a network API call.
        "response": { # If importing [ReadGroupSets][google.genomics.v1.ReadGroupSet], an [ImportReadGroupSetsResponse][google.genomics.v1.ImportReadGroupSetsResponse] is returned. If importing [Variants][google.genomics.v1.Variant], an [ImportVariantsResponse][google.genomics.v1.ImportVariantsResponse] is returned. For exports, an empty response is returned.
          "a_key": "", # Properties of the object. Contains field @ype with type URL.
        },
        "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). The error model is designed to be: - Simple to use and understand for most users - Flexible enough to meet unexpected needs # Overview The `Status` message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of [google.rpc.Code][google.rpc.Code], but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers *understand* and *resolve* the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package `google.rpc` which can be used for common error conditions. # Language mapping The `Status` message is the logical representation of the error model, but it is not necessarily the actual wire format. When the `Status` message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C. # Other uses The error model and the `Status` message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments. Example uses of this error model include: - Partial errors. If a service needs to return partial errors to the client, it may embed the `Status` in the normal response to indicate the partial errors. - Workflow errors. A typical workflow has multiple steps. Each step may have a `Status` message for error reporting purpose. - Batch operations. If a client uses batch request and batch response, the `Status` message should be used directly inside batch response, one for each error sub-response. - Asynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the `Status` message. - Logging. If some API errors are stored in logs, the message `Status` could be used directly after any stripping needed for security/privacy reasons. # The error result of the operation in case of failure.
          "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
          "code": 42, # The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
          "details": [ # A list of messages that carry the error details. There will be a common set of message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @ype with type URL.
            },
          ],
        },
        "done": True or False, # If the value is `false`, it means the operation is still in progress. If true, the operation is completed, and either `error` or `response` is available.
        "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. For example: `operations/CJHU7Oi_ChDrveSpBRjfuL-qzoWAgEw`
        "metadata": { # An [OperationMetadata][google.genomics.v1.OperationMetadata] object. This will always be returned with the [Operation][google.longrunning.Operation].
          "a_key": "", # Properties of the object. Contains field @ype with type URL.
        },
      }

`patch(readGroupSetId, body, updateMask=None, x__xgafv=None)`

    Updates a read group set. This method supports patch semantics.

    Args:
      readGroupSetId: string, The ID of the read group set to be updated. The caller must have WRITE permissions to the dataset associated with this read group set. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # A read group set is a logical collection of read groups, which are collections of reads produced by a sequencer. A read group set typically models reads corresponding to one sample, sequenced one way, and aligned one way. * A read group set belongs to one dataset. * A read group belongs to one read group set. * A read belongs to one read group.
      "info": { # A map of additional read group set information.
        "a_key": [
          "",
        ],
      },
      "name": "A String", # The read group set name. By default this will be initialized to the sample name of the sequenced data contained in this set.
      "readGroups": [ # The read groups in this set. There are typically 1-10 read groups in a read group set.
        { # A read group is all the data that's processed the same way by the sequencer.
          "info": { # A map of additional read group information. This must be of the form map (string key mapping to a list of string values).
            "a_key": [
              "",
            ],
          },
          "predictedInsertSize": 42, # The predicted insert size of this read group. The insert size is the length the sequenced DNA fragment from end-to-end, not including the adapters.
          "description": "A String", # A free-form text description of this read group.
          "programs": [ # The programs used to generate this read group. Programs are always identical for all read groups within a read group set. For this reason, only the first read group in a returned set will have this field populated.
            {
              "commandLine": "A String", # The command line used to run this program.
              "prevProgramId": "A String", # The ID of the program run before this one.
              "id": "A String", # The user specified locally unique ID of the program. Used along with `prevProgramId` to define an ordering between programs.
              "version": "A String", # The version of the program run.
              "name": "A String", # The name of the program.
            },
          ],
          "sampleId": "A String", # The sample this read group's data was generated from. Note: This is not an actual ID within this repository, but rather an identifier for a sample which may be meaningful to some external system.
          "experiment": { # The experiment used to generate this read group.
            "sequencingCenter": "A String", # The sequencing center used as part of this experiment.
            "libraryId": "A String", # The library used as part of this experiment. Note: This is not an actual ID within this repository, but rather an identifier for a library which may be meaningful to some external system.
            "instrumentModel": "A String", # The instrument model used as part of this experiment. This maps to sequencing technology in BAM.
            "platformUnit": "A String", # The platform unit used as part of this experiment e.g. flowcell-barcode.lane for Illumina or slide for SOLiD. Corresponds to the @RG PU field in the SAM spec.
          },
          "referenceSetId": "A String", # The reference set the reads in this read group are aligned to. Required if there are any read alignments.
          "id": "A String", # The server-generated read group ID, unique for all read groups. Note: This is different than the `@RG ID` field in the SAM spec. For that value, see the `name` field.
          "datasetId": "A String", # The ID of the dataset this read group belongs to.
          "name": "A String", # The read group name. This corresponds to the @RG ID field in the SAM spec.
        },
      ],
      "filename": "A String", # The filename of the original source file for this read group set, if any.
      "referenceSetId": "A String", # The reference set the reads in this read group set are aligned to.
      "id": "A String", # The server-generated read group set ID, unique for all read group sets.
      "datasetId": "A String", # The dataset ID.
    }

      updateMask: string, An optional mask specifying which fields to update. At this time, mutable fields are [referenceSetId][google.genomics.v1.ReadGroupSet.reference_set_id] and [name][google.genomics.v1.ReadGroupSet.name]. Acceptable values are "referenceSetId" and "name". If unspecified, all mutable fields will be updated.
      x__xgafv: string, V1 error format.

    Returns:
      An object of the form:

        { # A read group set is a logical collection of read groups, which are collections of reads produced by a sequencer. A read group set typically models reads corresponding to one sample, sequenced one way, and aligned one way. * A read group set belongs to one dataset. * A read group belongs to one read group set. * A read belongs to one read group.
        "info": { # A map of additional read group set information.
          "a_key": [
            "",
          ],
        },
        "name": "A String", # The read group set name. By default this will be initialized to the sample name of the sequenced data contained in this set.
        "readGroups": [ # The read groups in this set. There are typically 1-10 read groups in a read group set.
          { # A read group is all the data that's processed the same way by the sequencer.
            "info": { # A map of additional read group information. This must be of the form map (string key mapping to a list of string values).
              "a_key": [
                "",
              ],
            },
            "predictedInsertSize": 42, # The predicted insert size of this read group. The insert size is the length the sequenced DNA fragment from end-to-end, not including the adapters.
            "description": "A String", # A free-form text description of this read group.
            "programs": [ # The programs used to generate this read group. Programs are always identical for all read groups within a read group set. For this reason, only the first read group in a returned set will have this field populated.
              {
                "commandLine": "A String", # The command line used to run this program.
                "prevProgramId": "A String", # The ID of the program run before this one.
                "id": "A String", # The user specified locally unique ID of the program. Used along with `prevProgramId` to define an ordering between programs.
                "version": "A String", # The version of the program run.
                "name": "A String", # The name of the program.
              },
            ],
            "sampleId": "A String", # The sample this read group's data was generated from. Note: This is not an actual ID within this repository, but rather an identifier for a sample which may be meaningful to some external system.
            "experiment": { # The experiment used to generate this read group.
              "sequencingCenter": "A String", # The sequencing center used as part of this experiment.
              "libraryId": "A String", # The library used as part of this experiment. Note: This is not an actual ID within this repository, but rather an identifier for a library which may be meaningful to some external system.
              "instrumentModel": "A String", # The instrument model used as part of this experiment. This maps to sequencing technology in BAM.
              "platformUnit": "A String", # The platform unit used as part of this experiment e.g. flowcell-barcode.lane for Illumina or slide for SOLiD. Corresponds to the @RG PU field in the SAM spec.
            },
            "referenceSetId": "A String", # The reference set the reads in this read group are aligned to. Required if there are any read alignments.
            "id": "A String", # The server-generated read group ID, unique for all read groups. Note: This is different than the `@RG ID` field in the SAM spec. For that value, see the `name` field.
            "datasetId": "A String", # The ID of the dataset this read group belongs to.
            "name": "A String", # The read group name. This corresponds to the @RG ID field in the SAM spec.
          },
        ],
        "filename": "A String", # The filename of the original source file for this read group set, if any.
        "referenceSetId": "A String", # The reference set the reads in this read group set are aligned to.
        "id": "A String", # The server-generated read group set ID, unique for all read group sets.
        "datasetId": "A String", # The dataset ID.
      }

`search(body, x__xgafv=None)`

    Searches for read group sets matching the criteria. Implements [GlobalAllianceApi.searchReadGroupSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/readmethods.avdl#L135).

    Args:
      body: object, The request body. (required)
        The object takes the form of:

    { # The read group set search request.
        "pageToken": "A String", # The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of `nextPageToken` from the previous response.
        "datasetIds": [ # Restricts this query to read group sets within the given datasets. At least one ID must be provided.
          "A String",
        ],
        "name": "A String", # Only return read group sets for which a substring of the name matches this string.
        "pageSize": 42, # Specifies number of results to return in a single page. If unspecified, it will default to 256. The maximum value is 1024.
      }

      x__xgafv: string, V1 error format.

    Returns:
      An object of the form:

        { # The read group set search response.
        "nextPageToken": "A String", # The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results. This field will be empty if there aren't any additional results.
        "readGroupSets": [ # The list of matching read group sets.
          { # A read group set is a logical collection of read groups, which are collections of reads produced by a sequencer. A read group set typically models reads corresponding to one sample, sequenced one way, and aligned one way. * A read group set belongs to one dataset. * A read group belongs to one read group set. * A read belongs to one read group.
            "info": { # A map of additional read group set information.
              "a_key": [
                "",
              ],
            },
            "name": "A String", # The read group set name. By default this will be initialized to the sample name of the sequenced data contained in this set.
            "readGroups": [ # The read groups in this set. There are typically 1-10 read groups in a read group set.
              { # A read group is all the data that's processed the same way by the sequencer.
                "info": { # A map of additional read group information. This must be of the form map (string key mapping to a list of string values).
                  "a_key": [
                    "",
                  ],
                },
                "predictedInsertSize": 42, # The predicted insert size of this read group. The insert size is the length the sequenced DNA fragment from end-to-end, not including the adapters.
                "description": "A String", # A free-form text description of this read group.
                "programs": [ # The programs used to generate this read group. Programs are always identical for all read groups within a read group set. For this reason, only the first read group in a returned set will have this field populated.
                  {
                    "commandLine": "A String", # The command line used to run this program.
                    "prevProgramId": "A String", # The ID of the program run before this one.
                    "id": "A String", # The user specified locally unique ID of the program. Used along with `prevProgramId` to define an ordering between programs.
                    "version": "A String", # The version of the program run.
                    "name": "A String", # The name of the program.
                  },
                ],
                "sampleId": "A String", # The sample this read group's data was generated from. Note: This is not an actual ID within this repository, but rather an identifier for a sample which may be meaningful to some external system.
                "experiment": { # The experiment used to generate this read group.
                  "sequencingCenter": "A String", # The sequencing center used as part of this experiment.
                  "libraryId": "A String", # The library used as part of this experiment. Note: This is not an actual ID within this repository, but rather an identifier for a library which may be meaningful to some external system.
                  "instrumentModel": "A String", # The instrument model used as part of this experiment. This maps to sequencing technology in BAM.
                  "platformUnit": "A String", # The platform unit used as part of this experiment e.g. flowcell-barcode.lane for Illumina or slide for SOLiD. Corresponds to the @RG PU field in the SAM spec.
                },
                "referenceSetId": "A String", # The reference set the reads in this read group are aligned to. Required if there are any read alignments.
                "id": "A String", # The server-generated read group ID, unique for all read groups. Note: This is different than the `@RG ID` field in the SAM spec. For that value, see the `name` field.
                "datasetId": "A String", # The ID of the dataset this read group belongs to.
                "name": "A String", # The read group name. This corresponds to the @RG ID field in the SAM spec.
              },
            ],
            "filename": "A String", # The filename of the original source file for this read group set, if any.
            "referenceSetId": "A String", # The reference set the reads in this read group set are aligned to.
            "id": "A String", # The server-generated read group set ID, unique for all read group sets.
            "datasetId": "A String", # The dataset ID.
          },
        ],
      }