google-api-client 0.9.pre1 → 0.9.pre2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +5 -0
  3. data/README.md +4 -3
  4. data/api_names.yaml +42 -0
  5. data/api_names_out.yaml +977 -651
  6. data/generated/google/apis/adexchangebuyer_v1_3.rb +1 -1
  7. data/generated/google/apis/adexchangeseller_v2_0.rb +1 -1
  8. data/generated/google/apis/adsense_v1_4.rb +1 -1
  9. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  10. data/generated/google/apis/androidenterprise_v1/classes.rb +31 -24
  11. data/generated/google/apis/androidenterprise_v1/service.rb +11 -6
  12. data/generated/google/apis/androidenterprise_v1.rb +2 -1
  13. data/generated/google/apis/appstate_v1.rb +1 -1
  14. data/generated/google/apis/autoscaler_v1beta2.rb +1 -1
  15. data/generated/google/apis/bigquery_v2/classes.rb +34 -0
  16. data/generated/google/apis/bigquery_v2/representations.rb +14 -0
  17. data/generated/google/apis/bigquery_v2/service.rb +2 -2
  18. data/generated/google/apis/bigquery_v2.rb +1 -1
  19. data/generated/google/apis/calendar_v3/classes.rb +8 -0
  20. data/generated/google/apis/calendar_v3/representations.rb +1 -0
  21. data/generated/google/apis/calendar_v3.rb +1 -1
  22. data/generated/google/apis/civicinfo_v2/classes.rb +61 -0
  23. data/generated/google/apis/civicinfo_v2/representations.rb +8 -0
  24. data/generated/google/apis/civicinfo_v2.rb +1 -1
  25. data/generated/google/apis/classroom_v1beta1/classes.rb +447 -0
  26. data/generated/google/apis/classroom_v1beta1/representations.rb +190 -0
  27. data/generated/google/apis/classroom_v1beta1/service.rb +791 -0
  28. data/generated/google/apis/classroom_v1beta1.rb +49 -0
  29. data/generated/google/apis/cloudmonitoring_v2beta2.rb +4 -1
  30. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +20 -19
  31. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +34 -34
  32. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +2 -5
  33. data/generated/google/apis/compute_v1/classes.rb +2638 -1136
  34. data/generated/google/apis/compute_v1/representations.rb +580 -0
  35. data/generated/google/apis/compute_v1/service.rb +2448 -305
  36. data/generated/google/apis/compute_v1.rb +1 -1
  37. data/generated/google/apis/container_v1/classes.rb +438 -0
  38. data/generated/google/apis/container_v1/representations.rb +163 -0
  39. data/generated/google/apis/container_v1/service.rb +346 -0
  40. data/generated/google/apis/container_v1.rb +35 -0
  41. data/generated/google/apis/container_v1beta1.rb +1 -1
  42. data/generated/google/apis/content_v2/service.rb +48 -12
  43. data/generated/google/apis/content_v2.rb +1 -1
  44. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +13 -9
  45. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +110 -15
  46. data/generated/google/apis/deploymentmanager_v2beta2.rb +1 -1
  47. data/generated/google/apis/discovery_v1/classes.rb +7 -0
  48. data/generated/google/apis/discovery_v1/representations.rb +1 -0
  49. data/generated/google/apis/dns_v1/service.rb +4 -1
  50. data/generated/google/apis/dns_v1.rb +1 -1
  51. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  52. data/generated/google/apis/drive_v2.rb +1 -1
  53. data/generated/google/apis/fitness_v1/classes.rb +65 -2
  54. data/generated/google/apis/fitness_v1/representations.rb +27 -0
  55. data/generated/google/apis/fitness_v1.rb +1 -1
  56. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  57. data/generated/google/apis/games_v1.rb +1 -1
  58. data/generated/google/apis/genomics_v1/classes.rb +2287 -0
  59. data/generated/google/apis/genomics_v1/representations.rb +796 -0
  60. data/generated/google/apis/genomics_v1/service.rb +1520 -0
  61. data/generated/google/apis/genomics_v1.rb +47 -0
  62. data/generated/google/apis/genomics_v1beta2/service.rb +36 -0
  63. data/generated/google/apis/genomics_v1beta2.rb +1 -1
  64. data/generated/google/apis/identitytoolkit_v3.rb +1 -1
  65. data/generated/google/apis/mapsengine_v1.rb +1 -1
  66. data/generated/google/apis/oauth2_v2.rb +1 -1
  67. data/generated/google/apis/plus_domains_v1.rb +1 -1
  68. data/generated/google/apis/plus_v1.rb +1 -1
  69. data/generated/google/apis/prediction_v1_6/classes.rb +1 -1
  70. data/generated/google/apis/pubsub_v1beta2/classes.rb +42 -42
  71. data/generated/google/apis/pubsub_v1beta2/service.rb +26 -22
  72. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  73. data/generated/google/apis/replicapool_v1beta2/classes.rb +10 -0
  74. data/generated/google/apis/replicapool_v1beta2/representations.rb +1 -0
  75. data/generated/google/apis/replicapool_v1beta2.rb +1 -1
  76. data/generated/google/apis/resourceviews_v1beta2.rb +1 -1
  77. data/generated/google/apis/storage_v1/classes.rb +4 -2
  78. data/generated/google/apis/storage_v1.rb +1 -1
  79. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  80. data/generated/google/apis/youtube_v3/classes.rb +3 -3
  81. data/generated/google/apis/youtube_v3/representations.rb +1 -1
  82. data/generated/google/apis/youtube_v3/service.rb +78 -0
  83. data/generated/google/apis/youtube_v3.rb +1 -1
  84. data/google-api-client.gemspec +0 -1
  85. data/lib/google/api_client/auth/installed_app.rb +6 -4
  86. data/lib/google/api_client/auth/key_utils.rb +93 -0
  87. data/lib/google/apis/core/api_command.rb +12 -5
  88. data/lib/google/apis/core/http_command.rb +17 -7
  89. data/lib/google/apis/core/json_representation.rb +6 -2
  90. data/lib/google/apis/errors.rb +9 -2
  91. data/lib/google/apis/version.rb +1 -1
  92. data/script/generate +4 -3
  93. data/spec/google/apis/core/http_command_spec.rb +20 -0
  94. data/spec/google/apis/core/json_representation_spec.rb +1 -1
  95. metadata +15 -16
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/fit/rest/
26
26
  module FitnessV1
27
27
  VERSION = 'V1'
28
- REVISION = '20150527'
28
+ REVISION = '20150717'
29
29
 
30
30
  # View your activity information in Google Fit
31
31
  AUTH_FITNESS_ACTIVITY_READ = 'https://www.googleapis.com/auth/fitness.activity.read'
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/games/services
26
26
  module GamesConfigurationV1configuration
27
27
  VERSION = 'V1configuration'
28
- REVISION = '20150622'
28
+ REVISION = '20150713'
29
29
 
30
30
  # View and manage your Google Play Developer account
31
31
  AUTH_ANDROIDPUBLISHER = 'https://www.googleapis.com/auth/androidpublisher'
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/games/services/
26
26
  module GamesV1
27
27
  VERSION = 'V1'
28
- REVISION = '20150622'
28
+ REVISION = '20150713'
29
29
 
30
30
  # View and manage its own configuration data in your Google Drive
31
31
  AUTH_DRIVE_APPDATA = 'https://www.googleapis.com/auth/drive.appdata'
@@ -0,0 +1,2287 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module GenomicsV1
24
+
25
+ # The dataset list response.
26
+ class ListDatasetsResponse
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # The list of matching Datasets.
30
+ # Corresponds to the JSON property `datasets`
31
+ # @return [Array<Google::Apis::GenomicsV1::Dataset>]
32
+ attr_accessor :datasets
33
+
34
+ # The continuation token, which is used to page through large result sets.
35
+ # Provide this value in a subsequent request to return the next page of results.
36
+ # This field will be empty if there aren't any additional results.
37
+ # Corresponds to the JSON property `nextPageToken`
38
+ # @return [String]
39
+ attr_accessor :next_page_token
40
+
41
+ def initialize(**args)
42
+ update!(**args)
43
+ end
44
+
45
+ # Update properties of this object
46
+ def update!(**args)
47
+ @datasets = args[:datasets] unless args[:datasets].nil?
48
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
49
+ end
50
+ end
51
+
52
+ # A Dataset is a collection of genomic data.
53
+ class Dataset
54
+ include Google::Apis::Core::Hashable
55
+
56
+ # The server-generated dataset ID, unique across all datasets.
57
+ # Corresponds to the JSON property `id`
58
+ # @return [String]
59
+ attr_accessor :id
60
+
61
+ # The Google Developers Console project ID that this dataset belongs to.
62
+ # Corresponds to the JSON property `projectId`
63
+ # @return [String]
64
+ attr_accessor :project_id
65
+
66
+ # The dataset name.
67
+ # Corresponds to the JSON property `name`
68
+ # @return [String]
69
+ attr_accessor :name
70
+
71
+ # The time this dataset was created, in seconds from the epoch.
72
+ # Corresponds to the JSON property `createTime`
73
+ # @return [String]
74
+ attr_accessor :create_time
75
+
76
+ def initialize(**args)
77
+ update!(**args)
78
+ end
79
+
80
+ # Update properties of this object
81
+ def update!(**args)
82
+ @id = args[:id] unless args[:id].nil?
83
+ @project_id = args[:project_id] unless args[:project_id].nil?
84
+ @name = args[:name] unless args[:name].nil?
85
+ @create_time = args[:create_time] unless args[:create_time].nil?
86
+ end
87
+ end
88
+
89
+ # A generic empty message that you can re-use to avoid defining duplicated empty
90
+ # messages in your APIs. A typical example is to use it as the request or the
91
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
92
+ # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
93
+ # `Empty` is empty JSON object ````.
94
+ class Empty
95
+ include Google::Apis::Core::Hashable
96
+
97
+ def initialize(**args)
98
+ update!(**args)
99
+ end
100
+
101
+ # Update properties of this object
102
+ def update!(**args)
103
+ end
104
+ end
105
+
106
+ #
107
+ class UndeleteDatasetRequest
108
+ include Google::Apis::Core::Hashable
109
+
110
+ def initialize(**args)
111
+ update!(**args)
112
+ end
113
+
114
+ # Update properties of this object
115
+ def update!(**args)
116
+ end
117
+ end
118
+
119
+ # This resource represents a long-running operation that is the result of a
120
+ # network API call.
121
+ class Operation
122
+ include Google::Apis::Core::Hashable
123
+
124
+ # The server-assigned name, which is only unique within the same service that
125
+ # originally returns it. For example: `operations/CJHU7Oi_ChDrveSpBRjfuL-
126
+ # qzoWAgEw`
127
+ # Corresponds to the JSON property `name`
128
+ # @return [String]
129
+ attr_accessor :name
130
+
131
+ # An [OperationMetadata][google.genomics.v1.OperationMetadata] object. This will
132
+ # always be returned with the [Operation][google.longrunning.Operation].
133
+ # Corresponds to the JSON property `metadata`
134
+ # @return [Hash<String,Object>]
135
+ attr_accessor :metadata
136
+
137
+ # If the value is `false`, it means the operation is still in progress. If true,
138
+ # the operation is completed and the `result` is available.
139
+ # Corresponds to the JSON property `done`
140
+ # @return [Boolean]
141
+ attr_accessor :done
142
+ alias_method :done?, :done
143
+
144
+ # The `Status` defines a logical error model that is suitable for different
145
+ # programming environments, including REST APIs and RPC APIs. It is used by [
146
+ # gRPC](https://github.com/grpc). The error model is designed to be: - Simple to
147
+ # use and understand for most users. - Flexible enough to meet unexpected needs.
148
+ # # Overview The `Status` message contains 3 pieces of data: error code, error
149
+ # message, and error details. The error code should be an enum value of [google.
150
+ # rpc.Code][google.rpc.Code], but it may accept additional error codes if needed.
151
+ # The error message should be a developer-facing English message that helps
152
+ # developers *understand* and *resolve* the error. If a localized user-facing
153
+ # error message is needed, it can be sent in the error details or localized by
154
+ # the client. The optional error details may contain arbitrary information about
155
+ # the error. There is a predefined set of error detail types in the package `
156
+ # google.rpc` which can be used for common error conditions. # Language mapping
157
+ # The `Status` message is the logical representation of the error model, but it
158
+ # is not necessarily the actual wire format. When the `Status` message is
159
+ # exposed in different client libraries and different wire protocols, it can be
160
+ # mapped differently. For example, it will likely be mapped to some exceptions
161
+ # in Java, but more likely mapped to some error codes in C. # Other uses The
162
+ # error model and the `Status` message can be used in a variety of environments -
163
+ # either with or without APIs - to provide consistent developer experience
164
+ # across different environments. Example uses of this error model include: -
165
+ # Partial errors. If a service needs to return partial errors to the client, it
166
+ # may embed the `Status` in the normal response to indicate the partial errors. -
167
+ # Workflow errors. A typical workflow has multiple steps. Each step may have a `
168
+ # Status` message for error reporting purpose. - Batch operations. If a client
169
+ # uses batch request and batch response, the `Status` message should be used
170
+ # directly inside batch response, one for each error sub-response. -
171
+ # Asynchronous operations. If an API call embeds asynchronous operation results
172
+ # in its response, the status of those operations should be represented directly
173
+ # using the `Status` message. - Logging. If some API errors are stored in logs,
174
+ # the message `Status` could be used directly after any stripping needed for
175
+ # security/privacy reasons.
176
+ # Corresponds to the JSON property `error`
177
+ # @return [Google::Apis::GenomicsV1::Status]
178
+ attr_accessor :error
179
+
180
+ # If importing [ReadGroupSets][google.genomics.v1.ReadGroupSet], an [
181
+ # ImportReadGroupSetsResponse][google.genomics.v1.ImportReadGroupSetsResponse]
182
+ # is returned. If importing [Variants][google.genomics.v1.Variant], an [
183
+ # ImportVariantsResponse][google.genomics.v1.ImportVariantsResponse] is returned.
184
+ # For exports, an empty response is returned.
185
+ # Corresponds to the JSON property `response`
186
+ # @return [Hash<String,Object>]
187
+ attr_accessor :response
188
+
189
+ def initialize(**args)
190
+ update!(**args)
191
+ end
192
+
193
+ # Update properties of this object
194
+ def update!(**args)
195
+ @name = args[:name] unless args[:name].nil?
196
+ @metadata = args[:metadata] unless args[:metadata].nil?
197
+ @done = args[:done] unless args[:done].nil?
198
+ @error = args[:error] unless args[:error].nil?
199
+ @response = args[:response] unless args[:response].nil?
200
+ end
201
+ end
202
+
203
+ # The `Status` defines a logical error model that is suitable for different
204
+ # programming environments, including REST APIs and RPC APIs. It is used by [
205
+ # gRPC](https://github.com/grpc). The error model is designed to be: - Simple to
206
+ # use and understand for most users. - Flexible enough to meet unexpected needs.
207
+ # # Overview The `Status` message contains 3 pieces of data: error code, error
208
+ # message, and error details. The error code should be an enum value of [google.
209
+ # rpc.Code][google.rpc.Code], but it may accept additional error codes if needed.
210
+ # The error message should be a developer-facing English message that helps
211
+ # developers *understand* and *resolve* the error. If a localized user-facing
212
+ # error message is needed, it can be sent in the error details or localized by
213
+ # the client. The optional error details may contain arbitrary information about
214
+ # the error. There is a predefined set of error detail types in the package `
215
+ # google.rpc` which can be used for common error conditions. # Language mapping
216
+ # The `Status` message is the logical representation of the error model, but it
217
+ # is not necessarily the actual wire format. When the `Status` message is
218
+ # exposed in different client libraries and different wire protocols, it can be
219
+ # mapped differently. For example, it will likely be mapped to some exceptions
220
+ # in Java, but more likely mapped to some error codes in C. # Other uses The
221
+ # error model and the `Status` message can be used in a variety of environments -
222
+ # either with or without APIs - to provide consistent developer experience
223
+ # across different environments. Example uses of this error model include: -
224
+ # Partial errors. If a service needs to return partial errors to the client, it
225
+ # may embed the `Status` in the normal response to indicate the partial errors. -
226
+ # Workflow errors. A typical workflow has multiple steps. Each step may have a `
227
+ # Status` message for error reporting purpose. - Batch operations. If a client
228
+ # uses batch request and batch response, the `Status` message should be used
229
+ # directly inside batch response, one for each error sub-response. -
230
+ # Asynchronous operations. If an API call embeds asynchronous operation results
231
+ # in its response, the status of those operations should be represented directly
232
+ # using the `Status` message. - Logging. If some API errors are stored in logs,
233
+ # the message `Status` could be used directly after any stripping needed for
234
+ # security/privacy reasons.
235
+ class Status
236
+ include Google::Apis::Core::Hashable
237
+
238
+ # The status code, which should be an enum value of [google.rpc.Code][google.rpc.
239
+ # Code].
240
+ # Corresponds to the JSON property `code`
241
+ # @return [Fixnum]
242
+ attr_accessor :code
243
+
244
+ # A developer-facing error message, which should be in English. Any user-facing
245
+ # error message should be localized and sent in the [google.rpc.Status.details][
246
+ # google.rpc.Status.details] field, or localized by the client.
247
+ # Corresponds to the JSON property `message`
248
+ # @return [String]
249
+ attr_accessor :message
250
+
251
+ # A list of messages that carry the error details. There will be a common set of
252
+ # message types for APIs to use.
253
+ # Corresponds to the JSON property `details`
254
+ # @return [Array<Hash<String,Object>>]
255
+ attr_accessor :details
256
+
257
+ def initialize(**args)
258
+ update!(**args)
259
+ end
260
+
261
+ # Update properties of this object
262
+ def update!(**args)
263
+ @code = args[:code] unless args[:code].nil?
264
+ @message = args[:message] unless args[:message].nil?
265
+ @details = args[:details] unless args[:details].nil?
266
+ end
267
+ end
268
+
269
+ # The response message for [Operations.ListOperations][google.longrunning.
270
+ # Operations.ListOperations].
271
+ class ListOperationsResponse
272
+ include Google::Apis::Core::Hashable
273
+
274
+ # A list of operations that matches the specified filter in the request.
275
+ # Corresponds to the JSON property `operations`
276
+ # @return [Array<Google::Apis::GenomicsV1::Operation>]
277
+ attr_accessor :operations
278
+
279
+ # The standard List next-page token.
280
+ # Corresponds to the JSON property `nextPageToken`
281
+ # @return [String]
282
+ attr_accessor :next_page_token
283
+
284
+ def initialize(**args)
285
+ update!(**args)
286
+ end
287
+
288
+ # Update properties of this object
289
+ def update!(**args)
290
+ @operations = args[:operations] unless args[:operations].nil?
291
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
292
+ end
293
+ end
294
+
295
+ # The request message for [Operations.CancelOperation][google.longrunning.
296
+ # Operations.CancelOperation].
297
+ class CancelOperationRequest
298
+ include Google::Apis::Core::Hashable
299
+
300
+ def initialize(**args)
301
+ update!(**args)
302
+ end
303
+
304
+ # Update properties of this object
305
+ def update!(**args)
306
+ end
307
+ end
308
+
309
+ # The read group set import request.
310
+ class ImportReadGroupSetsRequest
311
+ include Google::Apis::Core::Hashable
312
+
313
+ # Required. The ID of the dataset these read group sets will belong to. The
314
+ # caller must have WRITE permissions to this dataset.
315
+ # Corresponds to the JSON property `datasetId`
316
+ # @return [String]
317
+ attr_accessor :dataset_id
318
+
319
+ # The reference set to which the imported read group sets are aligned to, if any.
320
+ # The reference names of this reference set must be a superset of those found
321
+ # in the imported file headers. If no reference set id is provided, a best
322
+ # effort is made to associate with a matching reference set.
323
+ # Corresponds to the JSON property `referenceSetId`
324
+ # @return [String]
325
+ attr_accessor :reference_set_id
326
+
327
+ # A list of URIs pointing at BAM files in Google Cloud Storage.
328
+ # Corresponds to the JSON property `sourceUris`
329
+ # @return [Array<String>]
330
+ attr_accessor :source_uris
331
+
332
+ # The partition strategy describes how read groups are partitioned into read
333
+ # group sets.
334
+ # Corresponds to the JSON property `partitionStrategy`
335
+ # @return [String]
336
+ attr_accessor :partition_strategy
337
+
338
+ def initialize(**args)
339
+ update!(**args)
340
+ end
341
+
342
+ # Update properties of this object
343
+ def update!(**args)
344
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
345
+ @reference_set_id = args[:reference_set_id] unless args[:reference_set_id].nil?
346
+ @source_uris = args[:source_uris] unless args[:source_uris].nil?
347
+ @partition_strategy = args[:partition_strategy] unless args[:partition_strategy].nil?
348
+ end
349
+ end
350
+
351
+ # The read group set export request.
352
+ class ExportReadGroupSetRequest
353
+ include Google::Apis::Core::Hashable
354
+
355
+ # Required. The Google Developers Console project ID that owns this export.
356
+ # Corresponds to the JSON property `projectId`
357
+ # @return [String]
358
+ attr_accessor :project_id
359
+
360
+ # Required. A Google Cloud Storage URI for the exported BAM file. The currently
361
+ # authenticated user must have write access to the new file. An error will be
362
+ # returned if the URI already contains data.
363
+ # Corresponds to the JSON property `exportUri`
364
+ # @return [String]
365
+ attr_accessor :export_uri
366
+
367
+ # The reference names to export. If this is not specified, all reference
368
+ # sequences, including unmapped reads, are exported. Use `*` to export only
369
+ # unmapped reads.
370
+ # Corresponds to the JSON property `referenceNames`
371
+ # @return [Array<String>]
372
+ attr_accessor :reference_names
373
+
374
+ def initialize(**args)
375
+ update!(**args)
376
+ end
377
+
378
+ # Update properties of this object
379
+ def update!(**args)
380
+ @project_id = args[:project_id] unless args[:project_id].nil?
381
+ @export_uri = args[:export_uri] unless args[:export_uri].nil?
382
+ @reference_names = args[:reference_names] unless args[:reference_names].nil?
383
+ end
384
+ end
385
+
386
+ # The read group set search request.
387
+ class SearchReadGroupSetsRequest
388
+ include Google::Apis::Core::Hashable
389
+
390
+ # Restricts this query to read group sets within the given datasets. At least
391
+ # one ID must be provided.
392
+ # Corresponds to the JSON property `datasetIds`
393
+ # @return [Array<String>]
394
+ attr_accessor :dataset_ids
395
+
396
+ # Only return read group sets for which a substring of the name matches this
397
+ # string.
398
+ # Corresponds to the JSON property `name`
399
+ # @return [String]
400
+ attr_accessor :name
401
+
402
+ # The continuation token, which is used to page through large result sets. To
403
+ # get the next page of results, set this parameter to the value of `
404
+ # nextPageToken` from the previous response.
405
+ # Corresponds to the JSON property `pageToken`
406
+ # @return [String]
407
+ attr_accessor :page_token
408
+
409
+ # Specifies number of results to return in a single page. If unspecified, it
410
+ # will default to 256. The maximum value is 1024.
411
+ # Corresponds to the JSON property `pageSize`
412
+ # @return [Fixnum]
413
+ attr_accessor :page_size
414
+
415
+ def initialize(**args)
416
+ update!(**args)
417
+ end
418
+
419
+ # Update properties of this object
420
+ def update!(**args)
421
+ @dataset_ids = args[:dataset_ids] unless args[:dataset_ids].nil?
422
+ @name = args[:name] unless args[:name].nil?
423
+ @page_token = args[:page_token] unless args[:page_token].nil?
424
+ @page_size = args[:page_size] unless args[:page_size].nil?
425
+ end
426
+ end
427
+
428
+ # The read group set search response.
429
+ class SearchReadGroupSetsResponse
430
+ include Google::Apis::Core::Hashable
431
+
432
+ # The list of matching read group sets.
433
+ # Corresponds to the JSON property `readGroupSets`
434
+ # @return [Array<Google::Apis::GenomicsV1::ReadGroupSet>]
435
+ attr_accessor :read_group_sets
436
+
437
+ # The continuation token, which is used to page through large result sets.
438
+ # Provide this value in a subsequent request to return the next page of results.
439
+ # This field will be empty if there aren't any additional results.
440
+ # Corresponds to the JSON property `nextPageToken`
441
+ # @return [String]
442
+ attr_accessor :next_page_token
443
+
444
+ def initialize(**args)
445
+ update!(**args)
446
+ end
447
+
448
+ # Update properties of this object
449
+ def update!(**args)
450
+ @read_group_sets = args[:read_group_sets] unless args[:read_group_sets].nil?
451
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
452
+ end
453
+ end
454
+
455
+ # A read group set is a logical collection of read groups, which are collections
456
+ # of reads produced by a sequencer. A read group set typically models reads
457
+ # corresponding to one sample, sequenced one way, and aligned one way. * A read
458
+ # group set belongs to one dataset. * A read group belongs to one read group set.
459
+ # * A read belongs to one read group.
460
+ class ReadGroupSet
461
+ include Google::Apis::Core::Hashable
462
+
463
+ # The server-generated read group set ID, unique for all read group sets.
464
+ # Corresponds to the JSON property `id`
465
+ # @return [String]
466
+ attr_accessor :id
467
+
468
+ # The dataset ID.
469
+ # Corresponds to the JSON property `datasetId`
470
+ # @return [String]
471
+ attr_accessor :dataset_id
472
+
473
+ # The reference set the reads in this read group set are aligned to.
474
+ # Corresponds to the JSON property `referenceSetId`
475
+ # @return [String]
476
+ attr_accessor :reference_set_id
477
+
478
+ # The read group set name. By default this will be initialized to the sample
479
+ # name of the sequenced data contained in this set.
480
+ # Corresponds to the JSON property `name`
481
+ # @return [String]
482
+ attr_accessor :name
483
+
484
+ # The filename of the original source file for this read group set, if any.
485
+ # Corresponds to the JSON property `filename`
486
+ # @return [String]
487
+ attr_accessor :filename
488
+
489
+ # The read groups in this set. There are typically 1-10 read groups in a read
490
+ # group set.
491
+ # Corresponds to the JSON property `readGroups`
492
+ # @return [Array<Google::Apis::GenomicsV1::ReadGroup>]
493
+ attr_accessor :read_groups
494
+
495
+ # A map of additional read group set information.
496
+ # Corresponds to the JSON property `info`
497
+ # @return [Hash<String,Array<Object>>]
498
+ attr_accessor :info
499
+
500
+ def initialize(**args)
501
+ update!(**args)
502
+ end
503
+
504
+ # Update properties of this object
505
+ def update!(**args)
506
+ @id = args[:id] unless args[:id].nil?
507
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
508
+ @reference_set_id = args[:reference_set_id] unless args[:reference_set_id].nil?
509
+ @name = args[:name] unless args[:name].nil?
510
+ @filename = args[:filename] unless args[:filename].nil?
511
+ @read_groups = args[:read_groups] unless args[:read_groups].nil?
512
+ @info = args[:info] unless args[:info].nil?
513
+ end
514
+ end
515
+
516
+ # A read group is all the data that's processed the same way by the sequencer.
517
+ class ReadGroup
518
+ include Google::Apis::Core::Hashable
519
+
520
+ # The server-generated read group ID, unique for all read groups. Note: This is
521
+ # different than the `@RG ID` field in the SAM spec. For that value, see the `
522
+ # name` field.
523
+ # Corresponds to the JSON property `id`
524
+ # @return [String]
525
+ attr_accessor :id
526
+
527
+ # The ID of the dataset this read group belongs to.
528
+ # Corresponds to the JSON property `datasetId`
529
+ # @return [String]
530
+ attr_accessor :dataset_id
531
+
532
+ # The read group name. This corresponds to the @RG ID field in the SAM spec.
533
+ # Corresponds to the JSON property `name`
534
+ # @return [String]
535
+ attr_accessor :name
536
+
537
+ # A free-form text description of this read group.
538
+ # Corresponds to the JSON property `description`
539
+ # @return [String]
540
+ attr_accessor :description
541
+
542
+ # The sample this read group's data was generated from. Note: This is not an
543
+ # actual ID within this repository, but rather an identifier for a sample which
544
+ # may be meaningful to some external system.
545
+ # Corresponds to the JSON property `sampleId`
546
+ # @return [String]
547
+ attr_accessor :sample_id
548
+
549
+ # The experiment used to generate this read group.
550
+ # Corresponds to the JSON property `experiment`
551
+ # @return [Google::Apis::GenomicsV1::Experiment]
552
+ attr_accessor :experiment
553
+
554
+ # The predicted insert size of this read group. The insert size is the length
555
+ # the sequenced DNA fragment from end-to-end, not including the adapters.
556
+ # Corresponds to the JSON property `predictedInsertSize`
557
+ # @return [Fixnum]
558
+ attr_accessor :predicted_insert_size
559
+
560
+ # The programs used to generate this read group. Programs are always identical
561
+ # for all read groups within a read group set. For this reason, only the first
562
+ # read group in a returned set will have this field populated.
563
+ # Corresponds to the JSON property `programs`
564
+ # @return [Array<Google::Apis::GenomicsV1::Program>]
565
+ attr_accessor :programs
566
+
567
+ # The reference set the reads in this read group are aligned to. Required if
568
+ # there are any read alignments.
569
+ # Corresponds to the JSON property `referenceSetId`
570
+ # @return [String]
571
+ attr_accessor :reference_set_id
572
+
573
+ # A map of additional read group information. This must be of the form map (
574
+ # string key mapping to a list of string values).
575
+ # Corresponds to the JSON property `info`
576
+ # @return [Hash<String,Array<Object>>]
577
+ attr_accessor :info
578
+
579
+ def initialize(**args)
580
+ update!(**args)
581
+ end
582
+
583
+ # Update properties of this object
584
+ def update!(**args)
585
+ @id = args[:id] unless args[:id].nil?
586
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
587
+ @name = args[:name] unless args[:name].nil?
588
+ @description = args[:description] unless args[:description].nil?
589
+ @sample_id = args[:sample_id] unless args[:sample_id].nil?
590
+ @experiment = args[:experiment] unless args[:experiment].nil?
591
+ @predicted_insert_size = args[:predicted_insert_size] unless args[:predicted_insert_size].nil?
592
+ @programs = args[:programs] unless args[:programs].nil?
593
+ @reference_set_id = args[:reference_set_id] unless args[:reference_set_id].nil?
594
+ @info = args[:info] unless args[:info].nil?
595
+ end
596
+ end
597
+
598
+ #
599
+ class Experiment
600
+ include Google::Apis::Core::Hashable
601
+
602
+ # The library used as part of this experiment. Note: This is not an actual ID
603
+ # within this repository, but rather an identifier for a library which may be
604
+ # meaningful to some external system.
605
+ # Corresponds to the JSON property `libraryId`
606
+ # @return [String]
607
+ attr_accessor :library_id
608
+
609
+ # The platform unit used as part of this experiment e.g. flowcell-barcode.lane
610
+ # for Illumina or slide for SOLiD. Corresponds to the @RG PU field in the SAM
611
+ # spec.
612
+ # Corresponds to the JSON property `platformUnit`
613
+ # @return [String]
614
+ attr_accessor :platform_unit
615
+
616
+ # The sequencing center used as part of this experiment.
617
+ # Corresponds to the JSON property `sequencingCenter`
618
+ # @return [String]
619
+ attr_accessor :sequencing_center
620
+
621
+ # The instrument model used as part of this experiment. This maps to sequencing
622
+ # technology in BAM.
623
+ # Corresponds to the JSON property `instrumentModel`
624
+ # @return [String]
625
+ attr_accessor :instrument_model
626
+
627
+ def initialize(**args)
628
+ update!(**args)
629
+ end
630
+
631
+ # Update properties of this object
632
+ def update!(**args)
633
+ @library_id = args[:library_id] unless args[:library_id].nil?
634
+ @platform_unit = args[:platform_unit] unless args[:platform_unit].nil?
635
+ @sequencing_center = args[:sequencing_center] unless args[:sequencing_center].nil?
636
+ @instrument_model = args[:instrument_model] unless args[:instrument_model].nil?
637
+ end
638
+ end
639
+
640
+ #
641
+ class Program
642
+ include Google::Apis::Core::Hashable
643
+
644
+ # The command line used to run this program.
645
+ # Corresponds to the JSON property `commandLine`
646
+ # @return [String]
647
+ attr_accessor :command_line
648
+
649
+ # The user specified locally unique ID of the program. Used along with `
650
+ # prevProgramId` to define an ordering between programs.
651
+ # Corresponds to the JSON property `id`
652
+ # @return [String]
653
+ attr_accessor :id
654
+
655
+ # The name of the program.
656
+ # Corresponds to the JSON property `name`
657
+ # @return [String]
658
+ attr_accessor :name
659
+
660
+ # The ID of the program run before this one.
661
+ # Corresponds to the JSON property `prevProgramId`
662
+ # @return [String]
663
+ attr_accessor :prev_program_id
664
+
665
+ # The version of the program run.
666
+ # Corresponds to the JSON property `version`
667
+ # @return [String]
668
+ attr_accessor :version
669
+
670
+ def initialize(**args)
671
+ update!(**args)
672
+ end
673
+
674
+ # Update properties of this object
675
+ def update!(**args)
676
+ @command_line = args[:command_line] unless args[:command_line].nil?
677
+ @id = args[:id] unless args[:id].nil?
678
+ @name = args[:name] unless args[:name].nil?
679
+ @prev_program_id = args[:prev_program_id] unless args[:prev_program_id].nil?
680
+ @version = args[:version] unless args[:version].nil?
681
+ end
682
+ end
683
+
684
+ #
685
+ class ListCoverageBucketsResponse
686
+ include Google::Apis::Core::Hashable
687
+
688
+ # The length of each coverage bucket in base pairs. Note that buckets at the end
689
+ # of a reference sequence may be shorter. This value is omitted if the bucket
690
+ # width is infinity (the default behaviour, with no range or `targetBucketWidth`)
691
+ # .
692
+ # Corresponds to the JSON property `bucketWidth`
693
+ # @return [String]
694
+ attr_accessor :bucket_width
695
+
696
+ # The coverage buckets. The list of buckets is sparse; a bucket with 0
697
+ # overlapping reads is not returned. A bucket never crosses more than one
698
+ # reference sequence. Each bucket has width `bucketWidth`, unless its end is the
699
+ # end of the reference sequence.
700
+ # Corresponds to the JSON property `coverageBuckets`
701
+ # @return [Array<Google::Apis::GenomicsV1::CoverageBucket>]
702
+ attr_accessor :coverage_buckets
703
+
704
+ # The continuation token, which is used to page through large result sets.
705
+ # Provide this value in a subsequent request to return the next page of results.
706
+ # This field will be empty if there aren't any additional results.
707
+ # Corresponds to the JSON property `nextPageToken`
708
+ # @return [String]
709
+ attr_accessor :next_page_token
710
+
711
+ def initialize(**args)
712
+ update!(**args)
713
+ end
714
+
715
+ # Update properties of this object
716
+ def update!(**args)
717
+ @bucket_width = args[:bucket_width] unless args[:bucket_width].nil?
718
+ @coverage_buckets = args[:coverage_buckets] unless args[:coverage_buckets].nil?
719
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
720
+ end
721
+ end
722
+
723
+ # A bucket over which read coverage has been precomputed. A bucket corresponds
724
+ # to a specific range of the reference sequence.
725
+ class CoverageBucket
726
+ include Google::Apis::Core::Hashable
727
+
728
+ # A 0-based half-open genomic coordinate range for search requests.
729
+ # Corresponds to the JSON property `range`
730
+ # @return [Google::Apis::GenomicsV1::Range]
731
+ attr_accessor :range
732
+
733
+ # The average number of reads which are aligned to each individual reference
734
+ # base in this bucket.
735
+ # Corresponds to the JSON property `meanCoverage`
736
+ # @return [Float]
737
+ attr_accessor :mean_coverage
738
+
739
+ def initialize(**args)
740
+ update!(**args)
741
+ end
742
+
743
+ # Update properties of this object
744
+ def update!(**args)
745
+ @range = args[:range] unless args[:range].nil?
746
+ @mean_coverage = args[:mean_coverage] unless args[:mean_coverage].nil?
747
+ end
748
+ end
749
+
750
+ # A 0-based half-open genomic coordinate range for search requests.
751
+ class Range
752
+ include Google::Apis::Core::Hashable
753
+
754
+ # The reference sequence name, for example `chr1`, `1`, or `chrX`.
755
+ # Corresponds to the JSON property `referenceName`
756
+ # @return [String]
757
+ attr_accessor :reference_name
758
+
759
+ # The start position of the range on the reference, 0-based inclusive.
760
+ # Corresponds to the JSON property `start`
761
+ # @return [String]
762
+ attr_accessor :start
763
+
764
+ # The end position of the range on the reference, 0-based exclusive.
765
+ # Corresponds to the JSON property `end`
766
+ # @return [String]
767
+ attr_accessor :end
768
+
769
+ def initialize(**args)
770
+ update!(**args)
771
+ end
772
+
773
+ # Update properties of this object
774
+ def update!(**args)
775
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
776
+ @start = args[:start] unless args[:start].nil?
777
+ @end = args[:end] unless args[:end].nil?
778
+ end
779
+ end
780
+
781
+ # The read search request.
782
+ class SearchReadsRequest
783
+ include Google::Apis::Core::Hashable
784
+
785
+ # The IDs of the read groups sets within which to search for reads. All
786
+ # specified read group sets must be aligned against a common set of reference
787
+ # sequences; this defines the genomic coordinates for the query. Must specify
788
+ # one of `readGroupSetIds` or `readGroupIds`.
789
+ # Corresponds to the JSON property `readGroupSetIds`
790
+ # @return [Array<String>]
791
+ attr_accessor :read_group_set_ids
792
+
793
+ # The IDs of the read groups within which to search for reads. All specified
794
+ # read groups must belong to the same read group sets. Must specify one of `
795
+ # readGroupSetIds` or `readGroupIds`.
796
+ # Corresponds to the JSON property `readGroupIds`
797
+ # @return [Array<String>]
798
+ attr_accessor :read_group_ids
799
+
800
+ # The reference sequence name, for example `chr1`, `1`, or `chrX`. If set to *,
801
+ # only unmapped reads are returned.
802
+ # Corresponds to the JSON property `referenceName`
803
+ # @return [String]
804
+ attr_accessor :reference_name
805
+
806
+ # The start position of the range on the reference, 0-based inclusive. If
807
+ # specified, `referenceName` must also be specified.
808
+ # Corresponds to the JSON property `start`
809
+ # @return [String]
810
+ attr_accessor :start
811
+
812
+ # The end position of the range on the reference, 0-based exclusive. If
813
+ # specified, `referenceName` must also be specified.
814
+ # Corresponds to the JSON property `end`
815
+ # @return [String]
816
+ attr_accessor :end
817
+
818
+ # The continuation token, which is used to page through large result sets. To
819
+ # get the next page of results, set this parameter to the value of `
820
+ # nextPageToken` from the previous response.
821
+ # Corresponds to the JSON property `pageToken`
822
+ # @return [String]
823
+ attr_accessor :page_token
824
+
825
+ # Specifies number of results to return in a single page. If unspecified, it
826
+ # will default to 256. The maximum value is 2048.
827
+ # Corresponds to the JSON property `pageSize`
828
+ # @return [Fixnum]
829
+ attr_accessor :page_size
830
+
831
+ def initialize(**args)
832
+ update!(**args)
833
+ end
834
+
835
+ # Update properties of this object
836
+ def update!(**args)
837
+ @read_group_set_ids = args[:read_group_set_ids] unless args[:read_group_set_ids].nil?
838
+ @read_group_ids = args[:read_group_ids] unless args[:read_group_ids].nil?
839
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
840
+ @start = args[:start] unless args[:start].nil?
841
+ @end = args[:end] unless args[:end].nil?
842
+ @page_token = args[:page_token] unless args[:page_token].nil?
843
+ @page_size = args[:page_size] unless args[:page_size].nil?
844
+ end
845
+ end
846
+
847
+ # The read search response.
848
+ class SearchReadsResponse
849
+ include Google::Apis::Core::Hashable
850
+
851
+ # The list of matching alignments sorted by mapped genomic coordinate, if any,
852
+ # ascending in position within the same reference. Unmapped reads, which have no
853
+ # position, are returned last and are further sorted in ascending lexicographic
854
+ # order by fragment name.
855
+ # Corresponds to the JSON property `alignments`
856
+ # @return [Array<Google::Apis::GenomicsV1::Read>]
857
+ attr_accessor :alignments
858
+
859
+ # The continuation token, which is used to page through large result sets.
860
+ # Provide this value in a subsequent request to return the next page of results.
861
+ # This field will be empty if there aren't any additional results.
862
+ # Corresponds to the JSON property `nextPageToken`
863
+ # @return [String]
864
+ attr_accessor :next_page_token
865
+
866
+ def initialize(**args)
867
+ update!(**args)
868
+ end
869
+
870
+ # Update properties of this object
871
+ def update!(**args)
872
+ @alignments = args[:alignments] unless args[:alignments].nil?
873
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
874
+ end
875
+ end
876
+
877
+ # A read alignment describes a linear alignment of a string of DNA to a [
878
+ # reference sequence][google.genomics.v1.Reference], in addition to metadata
879
+ # about the fragment (the molecule of DNA sequenced) and the read (the bases
880
+ # which were read by the sequencer). A read is equivalent to a line in a SAM
881
+ # file. A read belongs to exactly one read group and exactly one [read group set]
882
+ # [google.genomics.v1.ReadGroupSet]. ### Generating a reference-aligned sequence
883
+ # string When interacting with mapped reads, it's often useful to produce a
884
+ # string representing the local alignment of the read to reference. The
885
+ # following pseudocode demonstrates one way of doing this: out = "" offset = 0
886
+ # for c in read.alignment.cigar ` switch c.operation ` case "ALIGNMENT_MATCH", "
887
+ # SEQUENCE_MATCH", "SEQUENCE_MISMATCH": out += read.alignedSequence[offset:
888
+ # offset+c.operationLength] offset += c.operationLength break case "CLIP_SOFT", "
889
+ # INSERT": offset += c.operationLength break case "PAD": out += repeat("*", c.
890
+ # operationLength) break case "DELETE": out += repeat("-", c.operationLength)
891
+ # break case "SKIP": out += repeat(" ", c.operationLength) break case "CLIP_HARD"
892
+ # : break ` ` return out ### Converting to SAM's CIGAR string The following
893
+ # pseudocode generates a SAM CIGAR string from the `cigar` field. Note that this
894
+ # is a lossy conversion (`cigar.referenceSequence` is lost). cigarMap = ` "
895
+ # ALIGNMENT_MATCH": "M", "INSERT": "I", "DELETE": "D", "SKIP": "N", "CLIP_SOFT":
896
+ # "S", "CLIP_HARD": "H", "PAD": "P", "SEQUENCE_MATCH": "=", "SEQUENCE_MISMATCH":
897
+ # "X", ` cigarStr = "" for c in read.alignment.cigar ` cigarStr += c.
898
+ # operationLength + cigarMap[c.operation] ` return cigarStr
899
+ class Read
900
+ include Google::Apis::Core::Hashable
901
+
902
+ # The server-generated read ID, unique across all reads. This is different from
903
+ # the `fragmentName`.
904
+ # Corresponds to the JSON property `id`
905
+ # @return [String]
906
+ attr_accessor :id
907
+
908
+ # The ID of the read group this read belongs to. (Every read must belong to
909
+ # exactly one read group.)
910
+ # Corresponds to the JSON property `readGroupId`
911
+ # @return [String]
912
+ attr_accessor :read_group_id
913
+
914
+ # The ID of the read group set this read belongs to. (Every read must belong to
915
+ # exactly one read group set.)
916
+ # Corresponds to the JSON property `readGroupSetId`
917
+ # @return [String]
918
+ attr_accessor :read_group_set_id
919
+
920
+ # The fragment name. Equivalent to QNAME (query template name) in SAM.
921
+ # Corresponds to the JSON property `fragmentName`
922
+ # @return [String]
923
+ attr_accessor :fragment_name
924
+
925
+ # The orientation and the distance between reads from the fragment are
926
+ # consistent with the sequencing protocol (SAM flag 0x2)
927
+ # Corresponds to the JSON property `properPlacement`
928
+ # @return [Boolean]
929
+ attr_accessor :proper_placement
930
+ alias_method :proper_placement?, :proper_placement
931
+
932
+ # The fragment is a PCR or optical duplicate (SAM flag 0x400)
933
+ # Corresponds to the JSON property `duplicateFragment`
934
+ # @return [Boolean]
935
+ attr_accessor :duplicate_fragment
936
+ alias_method :duplicate_fragment?, :duplicate_fragment
937
+
938
+ # The observed length of the fragment, equivalent to TLEN in SAM.
939
+ # Corresponds to the JSON property `fragmentLength`
940
+ # @return [Fixnum]
941
+ attr_accessor :fragment_length
942
+
943
+ # The read number in sequencing. 0-based and less than numberReads. This field
944
+ # replaces SAM flag 0x40 and 0x80.
945
+ # Corresponds to the JSON property `readNumber`
946
+ # @return [Fixnum]
947
+ attr_accessor :read_number
948
+
949
+ # The number of reads in the fragment (extension to SAM flag 0x1).
950
+ # Corresponds to the JSON property `numberReads`
951
+ # @return [Fixnum]
952
+ attr_accessor :number_reads
953
+
954
+ # SAM flag 0x200
955
+ # Corresponds to the JSON property `failedVendorQualityChecks`
956
+ # @return [Boolean]
957
+ attr_accessor :failed_vendor_quality_checks
958
+ alias_method :failed_vendor_quality_checks?, :failed_vendor_quality_checks
959
+
960
+ # A linear alignment can be represented by one CIGAR string. Describes the
961
+ # mapped position and local alignment of the read to the reference.
962
+ # Corresponds to the JSON property `alignment`
963
+ # @return [Google::Apis::GenomicsV1::LinearAlignment]
964
+ attr_accessor :alignment
965
+
966
+ # Whether this alignment is secondary. Equivalent to SAM flag 0x100. A secondary
967
+ # alignment represents an alternative to the primary alignment for this read.
968
+ # Aligners may return secondary alignments if a read can map ambiguously to
969
+ # multiple coordinates in the genome. By convention, each read has one and only
970
+ # one alignment where both `secondaryAlignment` and `supplementaryAlignment` are
971
+ # false.
972
+ # Corresponds to the JSON property `secondaryAlignment`
973
+ # @return [Boolean]
974
+ attr_accessor :secondary_alignment
975
+ alias_method :secondary_alignment?, :secondary_alignment
976
+
977
+ # Whether this alignment is supplementary. Equivalent to SAM flag 0x800.
978
+ # Supplementary alignments are used in the representation of a chimeric
979
+ # alignment. In a chimeric alignment, a read is split into multiple linear
980
+ # alignments that map to different reference contigs. The first linear alignment
981
+ # in the read will be designated as the representative alignment; the remaining
982
+ # linear alignments will be designated as supplementary alignments. These
983
+ # alignments may have different mapping quality scores. In each linear alignment
984
+ # in a chimeric alignment, the read will be hard clipped. The `alignedSequence`
985
+ # and `alignedQuality` fields in the alignment record will only represent the
986
+ # bases for its respective linear alignment.
987
+ # Corresponds to the JSON property `supplementaryAlignment`
988
+ # @return [Boolean]
989
+ attr_accessor :supplementary_alignment
990
+ alias_method :supplementary_alignment?, :supplementary_alignment
991
+
992
+ # The bases of the read sequence contained in this alignment record, *without
993
+ # CIGAR operations applied*. `alignedSequence` and `alignedQuality` may be
994
+ # shorter than the full read sequence and quality. This will occur if the
995
+ # alignment is part of a chimeric alignment, or if the read was trimmed. When
996
+ # this occurs, the CIGAR for this read will begin/end with a hard clip operator
997
+ # that will indicate the length of the excised sequence.
998
+ # Corresponds to the JSON property `alignedSequence`
999
+ # @return [String]
1000
+ attr_accessor :aligned_sequence
1001
+
1002
+ # The quality of the read sequence contained in this alignment record. `
1003
+ # alignedSequence` and `alignedQuality` may be shorter than the full read
1004
+ # sequence and quality. This will occur if the alignment is part of a chimeric
1005
+ # alignment, or if the read was trimmed. When this occurs, the CIGAR for this
1006
+ # read will begin/end with a hard clip operator that will indicate the length of
1007
+ # the excised sequence.
1008
+ # Corresponds to the JSON property `alignedQuality`
1009
+ # @return [Array<Fixnum>]
1010
+ attr_accessor :aligned_quality
1011
+
1012
+ # An abstraction for referring to a genomic position, in relation to some
1013
+ # already known reference. For now, represents a genomic position as a reference
1014
+ # name, a base number on that reference (0-based), and a determination of
1015
+ # forward or reverse strand.
1016
+ # Corresponds to the JSON property `nextMatePosition`
1017
+ # @return [Google::Apis::GenomicsV1::Position]
1018
+ attr_accessor :next_mate_position
1019
+
1020
+ # A map of additional read alignment information. This must be of the form map (
1021
+ # string key mapping to a list of string values).
1022
+ # Corresponds to the JSON property `info`
1023
+ # @return [Hash<String,Array<Object>>]
1024
+ attr_accessor :info
1025
+
1026
+ def initialize(**args)
1027
+ update!(**args)
1028
+ end
1029
+
1030
+ # Update properties of this object
1031
+ def update!(**args)
1032
+ @id = args[:id] unless args[:id].nil?
1033
+ @read_group_id = args[:read_group_id] unless args[:read_group_id].nil?
1034
+ @read_group_set_id = args[:read_group_set_id] unless args[:read_group_set_id].nil?
1035
+ @fragment_name = args[:fragment_name] unless args[:fragment_name].nil?
1036
+ @proper_placement = args[:proper_placement] unless args[:proper_placement].nil?
1037
+ @duplicate_fragment = args[:duplicate_fragment] unless args[:duplicate_fragment].nil?
1038
+ @fragment_length = args[:fragment_length] unless args[:fragment_length].nil?
1039
+ @read_number = args[:read_number] unless args[:read_number].nil?
1040
+ @number_reads = args[:number_reads] unless args[:number_reads].nil?
1041
+ @failed_vendor_quality_checks = args[:failed_vendor_quality_checks] unless args[:failed_vendor_quality_checks].nil?
1042
+ @alignment = args[:alignment] unless args[:alignment].nil?
1043
+ @secondary_alignment = args[:secondary_alignment] unless args[:secondary_alignment].nil?
1044
+ @supplementary_alignment = args[:supplementary_alignment] unless args[:supplementary_alignment].nil?
1045
+ @aligned_sequence = args[:aligned_sequence] unless args[:aligned_sequence].nil?
1046
+ @aligned_quality = args[:aligned_quality] unless args[:aligned_quality].nil?
1047
+ @next_mate_position = args[:next_mate_position] unless args[:next_mate_position].nil?
1048
+ @info = args[:info] unless args[:info].nil?
1049
+ end
1050
+ end
1051
+
1052
+ # A linear alignment can be represented by one CIGAR string. Describes the
1053
+ # mapped position and local alignment of the read to the reference.
1054
+ class LinearAlignment
1055
+ include Google::Apis::Core::Hashable
1056
+
1057
+ # An abstraction for referring to a genomic position, in relation to some
1058
+ # already known reference. For now, represents a genomic position as a reference
1059
+ # name, a base number on that reference (0-based), and a determination of
1060
+ # forward or reverse strand.
1061
+ # Corresponds to the JSON property `position`
1062
+ # @return [Google::Apis::GenomicsV1::Position]
1063
+ attr_accessor :position
1064
+
1065
+ # The mapping quality of this alignment. Represents how likely the read maps to
1066
+ # this position as opposed to other locations.
1067
+ # Corresponds to the JSON property `mappingQuality`
1068
+ # @return [Fixnum]
1069
+ attr_accessor :mapping_quality
1070
+
1071
+ # Represents the local alignment of this sequence (alignment matches, indels,
1072
+ # etc) against the reference.
1073
+ # Corresponds to the JSON property `cigar`
1074
+ # @return [Array<Google::Apis::GenomicsV1::CigarUnit>]
1075
+ attr_accessor :cigar
1076
+
1077
+ def initialize(**args)
1078
+ update!(**args)
1079
+ end
1080
+
1081
+ # Update properties of this object
1082
+ def update!(**args)
1083
+ @position = args[:position] unless args[:position].nil?
1084
+ @mapping_quality = args[:mapping_quality] unless args[:mapping_quality].nil?
1085
+ @cigar = args[:cigar] unless args[:cigar].nil?
1086
+ end
1087
+ end
1088
+
1089
+ # An abstraction for referring to a genomic position, in relation to some
1090
+ # already known reference. For now, represents a genomic position as a reference
1091
+ # name, a base number on that reference (0-based), and a determination of
1092
+ # forward or reverse strand.
1093
+ class Position
1094
+ include Google::Apis::Core::Hashable
1095
+
1096
+ # The name of the reference in whatever reference set is being used.
1097
+ # Corresponds to the JSON property `referenceName`
1098
+ # @return [String]
1099
+ attr_accessor :reference_name
1100
+
1101
+ # The 0-based offset from the start of the forward strand for that reference.
1102
+ # Corresponds to the JSON property `position`
1103
+ # @return [String]
1104
+ attr_accessor :position
1105
+
1106
+ # Whether this position is on the reverse strand, as opposed to the forward
1107
+ # strand.
1108
+ # Corresponds to the JSON property `reverseStrand`
1109
+ # @return [Boolean]
1110
+ attr_accessor :reverse_strand
1111
+ alias_method :reverse_strand?, :reverse_strand
1112
+
1113
+ def initialize(**args)
1114
+ update!(**args)
1115
+ end
1116
+
1117
+ # Update properties of this object
1118
+ def update!(**args)
1119
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
1120
+ @position = args[:position] unless args[:position].nil?
1121
+ @reverse_strand = args[:reverse_strand] unless args[:reverse_strand].nil?
1122
+ end
1123
+ end
1124
+
1125
+ # A single CIGAR operation.
1126
+ class CigarUnit
1127
+ include Google::Apis::Core::Hashable
1128
+
1129
+ #
1130
+ # Corresponds to the JSON property `operation`
1131
+ # @return [String]
1132
+ attr_accessor :operation
1133
+
1134
+ # The number of genomic bases that the operation runs for. Required.
1135
+ # Corresponds to the JSON property `operationLength`
1136
+ # @return [String]
1137
+ attr_accessor :operation_length
1138
+
1139
+ # `referenceSequence` is only used at mismatches (`SEQUENCE_MISMATCH`) and
1140
+ # deletions (`DELETE`). Filling this field replaces SAM's MD tag. If the
1141
+ # relevant information is not available, this field is unset.
1142
+ # Corresponds to the JSON property `referenceSequence`
1143
+ # @return [String]
1144
+ attr_accessor :reference_sequence
1145
+
1146
+ def initialize(**args)
1147
+ update!(**args)
1148
+ end
1149
+
1150
+ # Update properties of this object
1151
+ def update!(**args)
1152
+ @operation = args[:operation] unless args[:operation].nil?
1153
+ @operation_length = args[:operation_length] unless args[:operation_length].nil?
1154
+ @reference_sequence = args[:reference_sequence] unless args[:reference_sequence].nil?
1155
+ end
1156
+ end
1157
+
1158
+ #
1159
+ class SearchReferenceSetsRequest
1160
+ include Google::Apis::Core::Hashable
1161
+
1162
+ # If present, return references for which the `md5checksum` matches. See `
1163
+ # ReferenceSet.md5checksum` for details.
1164
+ # Corresponds to the JSON property `md5checksums`
1165
+ # @return [Array<String>]
1166
+ attr_accessor :md5checksums
1167
+
1168
+ # If present, return references for which the accession matches any of these
1169
+ # strings. Best to give a version number, for example `GCF_000001405.26`. If
1170
+ # only the main accession number is given then all records with that main
1171
+ # accession will be returned, whichever version. Note that different versions
1172
+ # will have different sequences.
1173
+ # Corresponds to the JSON property `accessions`
1174
+ # @return [Array<String>]
1175
+ attr_accessor :accessions
1176
+
1177
+ # If present, return reference sets for which a substring of their `assemblyId`
1178
+ # matches this string (case insensitive).
1179
+ # Corresponds to the JSON property `assemblyId`
1180
+ # @return [String]
1181
+ attr_accessor :assembly_id
1182
+
1183
+ # The continuation token, which is used to page through large result sets. To
1184
+ # get the next page of results, set this parameter to the value of `
1185
+ # nextPageToken` from the previous response.
1186
+ # Corresponds to the JSON property `pageToken`
1187
+ # @return [String]
1188
+ attr_accessor :page_token
1189
+
1190
+ # Specifies the maximum number of results to return in a single page.
1191
+ # Corresponds to the JSON property `pageSize`
1192
+ # @return [Fixnum]
1193
+ attr_accessor :page_size
1194
+
1195
+ def initialize(**args)
1196
+ update!(**args)
1197
+ end
1198
+
1199
+ # Update properties of this object
1200
+ def update!(**args)
1201
+ @md5checksums = args[:md5checksums] unless args[:md5checksums].nil?
1202
+ @accessions = args[:accessions] unless args[:accessions].nil?
1203
+ @assembly_id = args[:assembly_id] unless args[:assembly_id].nil?
1204
+ @page_token = args[:page_token] unless args[:page_token].nil?
1205
+ @page_size = args[:page_size] unless args[:page_size].nil?
1206
+ end
1207
+ end
1208
+
1209
+ #
1210
+ class SearchReferenceSetsResponse
1211
+ include Google::Apis::Core::Hashable
1212
+
1213
+ # The matching references sets.
1214
+ # Corresponds to the JSON property `referenceSets`
1215
+ # @return [Array<Google::Apis::GenomicsV1::ReferenceSet>]
1216
+ attr_accessor :reference_sets
1217
+
1218
+ # The continuation token, which is used to page through large result sets.
1219
+ # Provide this value in a subsequent request to return the next page of results.
1220
+ # This field will be empty if there aren't any additional results.
1221
+ # Corresponds to the JSON property `nextPageToken`
1222
+ # @return [String]
1223
+ attr_accessor :next_page_token
1224
+
1225
+ def initialize(**args)
1226
+ update!(**args)
1227
+ end
1228
+
1229
+ # Update properties of this object
1230
+ def update!(**args)
1231
+ @reference_sets = args[:reference_sets] unless args[:reference_sets].nil?
1232
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1233
+ end
1234
+ end
1235
+
1236
+ # A reference set is a set of references which typically comprise a reference
1237
+ # assembly for a species, such as `GRCh38` which is representative of the human
1238
+ # genome. A reference set defines a common coordinate space for comparing
1239
+ # reference-aligned experimental data. A reference set contains 1 or more
1240
+ # references.
1241
+ class ReferenceSet
1242
+ include Google::Apis::Core::Hashable
1243
+
1244
+ # The server-generated reference set ID, unique across all reference sets.
1245
+ # Corresponds to the JSON property `id`
1246
+ # @return [String]
1247
+ attr_accessor :id
1248
+
1249
+ # The IDs of the reference objects that are part of this set. `Reference.
1250
+ # md5checksum` must be unique within this set.
1251
+ # Corresponds to the JSON property `referenceIds`
1252
+ # @return [Array<String>]
1253
+ attr_accessor :reference_ids
1254
+
1255
+ # Order-independent MD5 checksum which identifies this reference set. The
1256
+ # checksum is computed by sorting all lower case hexidecimal string `reference.
1257
+ # md5checksum` (for all reference in this set) in ascending lexicographic order,
1258
+ # concatenating, and taking the MD5 of that value. The resulting value is
1259
+ # represented in lower case hexadecimal format.
1260
+ # Corresponds to the JSON property `md5checksum`
1261
+ # @return [String]
1262
+ attr_accessor :md5checksum
1263
+
1264
+ # ID from http://www.ncbi.nlm.nih.gov/taxonomy (e.g. 9606->human) indicating the
1265
+ # species which this assembly is intended to model. Note that contained
1266
+ # references may specify a different `ncbiTaxonId`, as assemblies may contain
1267
+ # reference sequences which do not belong to the modeled species, e.g. EBV in a
1268
+ # human reference genome.
1269
+ # Corresponds to the JSON property `ncbiTaxonId`
1270
+ # @return [Fixnum]
1271
+ attr_accessor :ncbi_taxon_id
1272
+
1273
+ # Free text description of this reference set.
1274
+ # Corresponds to the JSON property `description`
1275
+ # @return [String]
1276
+ attr_accessor :description
1277
+
1278
+ # Public id of this reference set, such as `GRCh37`.
1279
+ # Corresponds to the JSON property `assemblyId`
1280
+ # @return [String]
1281
+ attr_accessor :assembly_id
1282
+
1283
+ # The URI from which the references were obtained.
1284
+ # Corresponds to the JSON property `sourceUri`
1285
+ # @return [String]
1286
+ attr_accessor :source_uri
1287
+
1288
+ # All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally with
1289
+ # a version number, for example `NC_000001.11`.
1290
+ # Corresponds to the JSON property `sourceAccessions`
1291
+ # @return [Array<String>]
1292
+ attr_accessor :source_accessions
1293
+
1294
+ def initialize(**args)
1295
+ update!(**args)
1296
+ end
1297
+
1298
+ # Update properties of this object
1299
+ def update!(**args)
1300
+ @id = args[:id] unless args[:id].nil?
1301
+ @reference_ids = args[:reference_ids] unless args[:reference_ids].nil?
1302
+ @md5checksum = args[:md5checksum] unless args[:md5checksum].nil?
1303
+ @ncbi_taxon_id = args[:ncbi_taxon_id] unless args[:ncbi_taxon_id].nil?
1304
+ @description = args[:description] unless args[:description].nil?
1305
+ @assembly_id = args[:assembly_id] unless args[:assembly_id].nil?
1306
+ @source_uri = args[:source_uri] unless args[:source_uri].nil?
1307
+ @source_accessions = args[:source_accessions] unless args[:source_accessions].nil?
1308
+ end
1309
+ end
1310
+
1311
+ #
1312
+ class SearchReferencesRequest
1313
+ include Google::Apis::Core::Hashable
1314
+
1315
+ # If present, return references for which the `md5checksum` matches. See `
1316
+ # Reference.md5checksum` for construction details.
1317
+ # Corresponds to the JSON property `md5checksums`
1318
+ # @return [Array<String>]
1319
+ attr_accessor :md5checksums
1320
+
1321
+ # If present, return references for which the accession matches this string.
1322
+ # Best to give a version number, for example `GCF_000001405.26`. If only the
1323
+ # main accession number is given then all records with that main accession will
1324
+ # be returned, whichever version. Note that different versions will have
1325
+ # different sequences.
1326
+ # Corresponds to the JSON property `accessions`
1327
+ # @return [Array<String>]
1328
+ attr_accessor :accessions
1329
+
1330
+ # If present, return only references which belong to this reference set.
1331
+ # Corresponds to the JSON property `referenceSetId`
1332
+ # @return [String]
1333
+ attr_accessor :reference_set_id
1334
+
1335
+ # The continuation token, which is used to page through large result sets. To
1336
+ # get the next page of results, set this parameter to the value of `
1337
+ # nextPageToken` from the previous response.
1338
+ # Corresponds to the JSON property `pageToken`
1339
+ # @return [String]
1340
+ attr_accessor :page_token
1341
+
1342
+ # Specifies the maximum number of results to return in a single page.
1343
+ # Corresponds to the JSON property `pageSize`
1344
+ # @return [Fixnum]
1345
+ attr_accessor :page_size
1346
+
1347
+ def initialize(**args)
1348
+ update!(**args)
1349
+ end
1350
+
1351
+ # Update properties of this object
1352
+ def update!(**args)
1353
+ @md5checksums = args[:md5checksums] unless args[:md5checksums].nil?
1354
+ @accessions = args[:accessions] unless args[:accessions].nil?
1355
+ @reference_set_id = args[:reference_set_id] unless args[:reference_set_id].nil?
1356
+ @page_token = args[:page_token] unless args[:page_token].nil?
1357
+ @page_size = args[:page_size] unless args[:page_size].nil?
1358
+ end
1359
+ end
1360
+
1361
+ #
1362
+ class SearchReferencesResponse
1363
+ include Google::Apis::Core::Hashable
1364
+
1365
+ # The matching references.
1366
+ # Corresponds to the JSON property `references`
1367
+ # @return [Array<Google::Apis::GenomicsV1::Reference>]
1368
+ attr_accessor :references
1369
+
1370
+ # The continuation token, which is used to page through large result sets.
1371
+ # Provide this value in a subsequent request to return the next page of results.
1372
+ # This field will be empty if there aren't any additional results.
1373
+ # Corresponds to the JSON property `nextPageToken`
1374
+ # @return [String]
1375
+ attr_accessor :next_page_token
1376
+
1377
+ def initialize(**args)
1378
+ update!(**args)
1379
+ end
1380
+
1381
+ # Update properties of this object
1382
+ def update!(**args)
1383
+ @references = args[:references] unless args[:references].nil?
1384
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1385
+ end
1386
+ end
1387
+
1388
+ # A reference is a canonical assembled DNA sequence, intended to act as a
1389
+ # reference coordinate space for other genomic annotations. A single reference
1390
+ # might represent the human chromosome 1 or mitochandrial DNA, for instance. A
1391
+ # reference belongs to one or more reference sets.
1392
+ class Reference
1393
+ include Google::Apis::Core::Hashable
1394
+
1395
+ # The server-generated reference ID, unique across all references.
1396
+ # Corresponds to the JSON property `id`
1397
+ # @return [String]
1398
+ attr_accessor :id
1399
+
1400
+ # The length of this reference's sequence.
1401
+ # Corresponds to the JSON property `length`
1402
+ # @return [String]
1403
+ attr_accessor :length
1404
+
1405
+ # MD5 of the upper-case sequence excluding all whitespace characters (this is
1406
+ # equivalent to SQ:M5 in SAM). This value is represented in lower case
1407
+ # hexadecimal format.
1408
+ # Corresponds to the JSON property `md5checksum`
1409
+ # @return [String]
1410
+ attr_accessor :md5checksum
1411
+
1412
+ # The name of this reference, for example `22`.
1413
+ # Corresponds to the JSON property `name`
1414
+ # @return [String]
1415
+ attr_accessor :name
1416
+
1417
+ # The URI from which the sequence was obtained. Specifies a FASTA format file/
1418
+ # string with one name, sequence pair.
1419
+ # Corresponds to the JSON property `sourceUri`
1420
+ # @return [String]
1421
+ attr_accessor :source_uri
1422
+
1423
+ # All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally with
1424
+ # a version number, for example `GCF_000001405.26`.
1425
+ # Corresponds to the JSON property `sourceAccessions`
1426
+ # @return [Array<String>]
1427
+ attr_accessor :source_accessions
1428
+
1429
+ # ID from http://www.ncbi.nlm.nih.gov/taxonomy (e.g. 9606->human) if not
1430
+ # specified by the containing reference set.
1431
+ # Corresponds to the JSON property `ncbiTaxonId`
1432
+ # @return [Fixnum]
1433
+ attr_accessor :ncbi_taxon_id
1434
+
1435
+ def initialize(**args)
1436
+ update!(**args)
1437
+ end
1438
+
1439
+ # Update properties of this object
1440
+ def update!(**args)
1441
+ @id = args[:id] unless args[:id].nil?
1442
+ @length = args[:length] unless args[:length].nil?
1443
+ @md5checksum = args[:md5checksum] unless args[:md5checksum].nil?
1444
+ @name = args[:name] unless args[:name].nil?
1445
+ @source_uri = args[:source_uri] unless args[:source_uri].nil?
1446
+ @source_accessions = args[:source_accessions] unless args[:source_accessions].nil?
1447
+ @ncbi_taxon_id = args[:ncbi_taxon_id] unless args[:ncbi_taxon_id].nil?
1448
+ end
1449
+ end
1450
+
1451
+ #
1452
+ class ListBasesResponse
1453
+ include Google::Apis::Core::Hashable
1454
+
1455
+ # The offset position (0-based) of the given `sequence` from the start of this `
1456
+ # Reference`. This value will differ for each page in a paginated request.
1457
+ # Corresponds to the JSON property `offset`
1458
+ # @return [String]
1459
+ attr_accessor :offset
1460
+
1461
+ # A substring of the bases that make up this reference.
1462
+ # Corresponds to the JSON property `sequence`
1463
+ # @return [String]
1464
+ attr_accessor :sequence
1465
+
1466
+ # The continuation token, which is used to page through large result sets.
1467
+ # Provide this value in a subsequent request to return the next page of results.
1468
+ # This field will be empty if there aren't any additional results.
1469
+ # Corresponds to the JSON property `nextPageToken`
1470
+ # @return [String]
1471
+ attr_accessor :next_page_token
1472
+
1473
+ def initialize(**args)
1474
+ update!(**args)
1475
+ end
1476
+
1477
+ # Update properties of this object
1478
+ def update!(**args)
1479
+ @offset = args[:offset] unless args[:offset].nil?
1480
+ @sequence = args[:sequence] unless args[:sequence].nil?
1481
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1482
+ end
1483
+ end
1484
+
1485
+ # The variant data import request.
1486
+ class ImportVariantsRequest
1487
+ include Google::Apis::Core::Hashable
1488
+
1489
+ # Required. The variant set to which variant data should be imported.
1490
+ # Corresponds to the JSON property `variantSetId`
1491
+ # @return [String]
1492
+ attr_accessor :variant_set_id
1493
+
1494
+ # A list of URIs referencing variant files in Google Cloud Storage. URIs can
1495
+ # include wildcards [as described here](https://cloud.google.com/storage/docs/
1496
+ # gsutil/addlhelp/WildcardNames). Note that recursive wildcards ('**') are not
1497
+ # supported.
1498
+ # Corresponds to the JSON property `sourceUris`
1499
+ # @return [Array<String>]
1500
+ attr_accessor :source_uris
1501
+
1502
+ # The format of the variant data being imported. If unspecified, defaults to to `
1503
+ # VCF`.
1504
+ # Corresponds to the JSON property `format`
1505
+ # @return [String]
1506
+ attr_accessor :format
1507
+
1508
+ # Convert reference names to the canonical representation. hg19 haploytypes (
1509
+ # those reference names containing "_hap") are not modified in any way. All
1510
+ # other reference names are modified according to the following rules: The
1511
+ # reference name is capitalized. The "chr" prefix is dropped for all autosomes
1512
+ # and sex chromsomes. For example "chr17" becomes "17" and "chrX" becomes "X".
1513
+ # All mitochondrial chromosomes ("chrM", "chrMT", etc) become "MT".
1514
+ # Corresponds to the JSON property `normalizeReferenceNames`
1515
+ # @return [Boolean]
1516
+ attr_accessor :normalize_reference_names
1517
+ alias_method :normalize_reference_names?, :normalize_reference_names
1518
+
1519
+ def initialize(**args)
1520
+ update!(**args)
1521
+ end
1522
+
1523
+ # Update properties of this object
1524
+ def update!(**args)
1525
+ @variant_set_id = args[:variant_set_id] unless args[:variant_set_id].nil?
1526
+ @source_uris = args[:source_uris] unless args[:source_uris].nil?
1527
+ @format = args[:format] unless args[:format].nil?
1528
+ @normalize_reference_names = args[:normalize_reference_names] unless args[:normalize_reference_names].nil?
1529
+ end
1530
+ end
1531
+
1532
+ # A variant set is a collection of call sets and variants. It contains summary
1533
+ # statistics of those contents. A variant set belongs to a dataset.
1534
+ class VariantSet
1535
+ include Google::Apis::Core::Hashable
1536
+
1537
+ # The dataset to which this variant set belongs.
1538
+ # Corresponds to the JSON property `datasetId`
1539
+ # @return [String]
1540
+ attr_accessor :dataset_id
1541
+
1542
+ # The server-generated variant set ID, unique across all variant sets.
1543
+ # Corresponds to the JSON property `id`
1544
+ # @return [String]
1545
+ attr_accessor :id
1546
+
1547
+ # A list of all references used by the variants in a variant set with associated
1548
+ # coordinate upper bounds for each one.
1549
+ # Corresponds to the JSON property `referenceBounds`
1550
+ # @return [Array<Google::Apis::GenomicsV1::ReferenceBound>]
1551
+ attr_accessor :reference_bounds
1552
+
1553
+ # The metadata associated with this variant set.
1554
+ # Corresponds to the JSON property `metadata`
1555
+ # @return [Array<Google::Apis::GenomicsV1::VariantSetMetadata>]
1556
+ attr_accessor :metadata
1557
+
1558
+ def initialize(**args)
1559
+ update!(**args)
1560
+ end
1561
+
1562
+ # Update properties of this object
1563
+ def update!(**args)
1564
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
1565
+ @id = args[:id] unless args[:id].nil?
1566
+ @reference_bounds = args[:reference_bounds] unless args[:reference_bounds].nil?
1567
+ @metadata = args[:metadata] unless args[:metadata].nil?
1568
+ end
1569
+ end
1570
+
1571
+ # ReferenceBound records an upper bound for the starting coordinate of variants
1572
+ # in a particular reference.
1573
+ class ReferenceBound
1574
+ include Google::Apis::Core::Hashable
1575
+
1576
+ # The reference the bound is associate with.
1577
+ # Corresponds to the JSON property `referenceName`
1578
+ # @return [String]
1579
+ attr_accessor :reference_name
1580
+
1581
+ # An upper bound (inclusive) on the starting coordinate of any variant in the
1582
+ # reference sequence.
1583
+ # Corresponds to the JSON property `upperBound`
1584
+ # @return [String]
1585
+ attr_accessor :upper_bound
1586
+
1587
+ def initialize(**args)
1588
+ update!(**args)
1589
+ end
1590
+
1591
+ # Update properties of this object
1592
+ def update!(**args)
1593
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
1594
+ @upper_bound = args[:upper_bound] unless args[:upper_bound].nil?
1595
+ end
1596
+ end
1597
+
1598
+ # Metadata describes a single piece of variant call metadata. These data include
1599
+ # a top level key and either a single value string (value) or a list of key-
1600
+ # value pairs (info.) Value and info are mutually exclusive.
1601
+ class VariantSetMetadata
1602
+ include Google::Apis::Core::Hashable
1603
+
1604
+ # The top-level key.
1605
+ # Corresponds to the JSON property `key`
1606
+ # @return [String]
1607
+ attr_accessor :key
1608
+
1609
+ # The value field for simple metadata
1610
+ # Corresponds to the JSON property `value`
1611
+ # @return [String]
1612
+ attr_accessor :value
1613
+
1614
+ # User-provided ID field, not enforced by this API. Two or more pieces of
1615
+ # structured metadata with identical id and key fields are considered equivalent.
1616
+ # Corresponds to the JSON property `id`
1617
+ # @return [String]
1618
+ attr_accessor :id
1619
+
1620
+ # The type of data. Possible types include: Integer, Float, Flag, Character, and
1621
+ # String.
1622
+ # Corresponds to the JSON property `type`
1623
+ # @return [String]
1624
+ attr_accessor :type
1625
+
1626
+ # The number of values that can be included in a field described by this
1627
+ # metadata.
1628
+ # Corresponds to the JSON property `number`
1629
+ # @return [Fixnum]
1630
+ attr_accessor :number
1631
+
1632
+ # A textual description of this metadata.
1633
+ # Corresponds to the JSON property `description`
1634
+ # @return [String]
1635
+ attr_accessor :description
1636
+
1637
+ # Remaining structured metadata key-value pairs. This must be of the form map (
1638
+ # string key mapping to a list of string values).
1639
+ # Corresponds to the JSON property `info`
1640
+ # @return [Hash<String,Array<Object>>]
1641
+ attr_accessor :info
1642
+
1643
+ def initialize(**args)
1644
+ update!(**args)
1645
+ end
1646
+
1647
+ # Update properties of this object
1648
+ def update!(**args)
1649
+ @key = args[:key] unless args[:key].nil?
1650
+ @value = args[:value] unless args[:value].nil?
1651
+ @id = args[:id] unless args[:id].nil?
1652
+ @type = args[:type] unless args[:type].nil?
1653
+ @number = args[:number] unless args[:number].nil?
1654
+ @description = args[:description] unless args[:description].nil?
1655
+ @info = args[:info] unless args[:info].nil?
1656
+ end
1657
+ end
1658
+
1659
+ # The variant data export request.
1660
+ class ExportVariantSetRequest
1661
+ include Google::Apis::Core::Hashable
1662
+
1663
+ # If provided, only variant call information from the specified call sets will
1664
+ # be exported. By default all variant calls are exported.
1665
+ # Corresponds to the JSON property `callSetIds`
1666
+ # @return [Array<String>]
1667
+ attr_accessor :call_set_ids
1668
+
1669
+ # Required. The Google Cloud project ID that owns the destination BigQuery
1670
+ # dataset. The caller must have WRITE access to this project. This project will
1671
+ # also own the resulting export job.
1672
+ # Corresponds to the JSON property `projectId`
1673
+ # @return [String]
1674
+ attr_accessor :project_id
1675
+
1676
+ # The format for the exported data.
1677
+ # Corresponds to the JSON property `format`
1678
+ # @return [String]
1679
+ attr_accessor :format
1680
+
1681
+ # Required. The BigQuery dataset to export data to. This dataset must already
1682
+ # exist. Note that this is distinct from the Genomics concept of "dataset".
1683
+ # Corresponds to the JSON property `bigqueryDataset`
1684
+ # @return [String]
1685
+ attr_accessor :bigquery_dataset
1686
+
1687
+ # Required. The BigQuery table to export data to. If the table doesn't exist, it
1688
+ # will be created. If it already exists, it will be overwritten.
1689
+ # Corresponds to the JSON property `bigqueryTable`
1690
+ # @return [String]
1691
+ attr_accessor :bigquery_table
1692
+
1693
+ def initialize(**args)
1694
+ update!(**args)
1695
+ end
1696
+
1697
+ # Update properties of this object
1698
+ def update!(**args)
1699
+ @call_set_ids = args[:call_set_ids] unless args[:call_set_ids].nil?
1700
+ @project_id = args[:project_id] unless args[:project_id].nil?
1701
+ @format = args[:format] unless args[:format].nil?
1702
+ @bigquery_dataset = args[:bigquery_dataset] unless args[:bigquery_dataset].nil?
1703
+ @bigquery_table = args[:bigquery_table] unless args[:bigquery_table].nil?
1704
+ end
1705
+ end
1706
+
1707
+ # The search variant sets request.
1708
+ class SearchVariantSetsRequest
1709
+ include Google::Apis::Core::Hashable
1710
+
1711
+ # Exactly one dataset ID must be provided here. Only variant sets which belong
1712
+ # to this dataset will be returned.
1713
+ # Corresponds to the JSON property `datasetIds`
1714
+ # @return [Array<String>]
1715
+ attr_accessor :dataset_ids
1716
+
1717
+ # The continuation token, which is used to page through large result sets. To
1718
+ # get the next page of results, set this parameter to the value of `
1719
+ # nextPageToken` from the previous response.
1720
+ # Corresponds to the JSON property `pageToken`
1721
+ # @return [String]
1722
+ attr_accessor :page_token
1723
+
1724
+ # The maximum number of variant sets to return in a request.
1725
+ # Corresponds to the JSON property `pageSize`
1726
+ # @return [Fixnum]
1727
+ attr_accessor :page_size
1728
+
1729
+ def initialize(**args)
1730
+ update!(**args)
1731
+ end
1732
+
1733
+ # Update properties of this object
1734
+ def update!(**args)
1735
+ @dataset_ids = args[:dataset_ids] unless args[:dataset_ids].nil?
1736
+ @page_token = args[:page_token] unless args[:page_token].nil?
1737
+ @page_size = args[:page_size] unless args[:page_size].nil?
1738
+ end
1739
+ end
1740
+
1741
+ # The search variant sets response.
1742
+ class SearchVariantSetsResponse
1743
+ include Google::Apis::Core::Hashable
1744
+
1745
+ # The variant sets belonging to the requested dataset.
1746
+ # Corresponds to the JSON property `variantSets`
1747
+ # @return [Array<Google::Apis::GenomicsV1::VariantSet>]
1748
+ attr_accessor :variant_sets
1749
+
1750
+ # The continuation token, which is used to page through large result sets.
1751
+ # Provide this value in a subsequent request to return the next page of results.
1752
+ # This field will be empty if there aren't any additional results.
1753
+ # Corresponds to the JSON property `nextPageToken`
1754
+ # @return [String]
1755
+ attr_accessor :next_page_token
1756
+
1757
+ def initialize(**args)
1758
+ update!(**args)
1759
+ end
1760
+
1761
+ # Update properties of this object
1762
+ def update!(**args)
1763
+ @variant_sets = args[:variant_sets] unless args[:variant_sets].nil?
1764
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1765
+ end
1766
+ end
1767
+
1768
+ # The variant search request.
1769
+ class SearchVariantsRequest
1770
+ include Google::Apis::Core::Hashable
1771
+
1772
+ # At most one variant set ID must be provided. Only variants from this variant
1773
+ # set will be returned. If omitted, a call set id must be included in the
1774
+ # request.
1775
+ # Corresponds to the JSON property `variantSetIds`
1776
+ # @return [Array<String>]
1777
+ attr_accessor :variant_set_ids
1778
+
1779
+ # Only return variants which have exactly this name.
1780
+ # Corresponds to the JSON property `variantName`
1781
+ # @return [String]
1782
+ attr_accessor :variant_name
1783
+
1784
+ # Only return variant calls which belong to call sets with these ids. Leaving
1785
+ # this blank returns all variant calls. If a variant has no calls belonging to
1786
+ # any of these call sets, it won't be returned at all. Currently, variants with
1787
+ # no calls from any call set will never be returned.
1788
+ # Corresponds to the JSON property `callSetIds`
1789
+ # @return [Array<String>]
1790
+ attr_accessor :call_set_ids
1791
+
1792
+ # Required. Only return variants in this reference sequence.
1793
+ # Corresponds to the JSON property `referenceName`
1794
+ # @return [String]
1795
+ attr_accessor :reference_name
1796
+
1797
+ # The beginning of the window (0-based, inclusive) for which overlapping
1798
+ # variants should be returned. If unspecified, defaults to 0.
1799
+ # Corresponds to the JSON property `start`
1800
+ # @return [String]
1801
+ attr_accessor :start
1802
+
1803
+ # The end of the window, 0-based exclusive. If unspecified or 0, defaults to the
1804
+ # length of the reference.
1805
+ # Corresponds to the JSON property `end`
1806
+ # @return [String]
1807
+ attr_accessor :end
1808
+
1809
+ # The continuation token, which is used to page through large result sets. To
1810
+ # get the next page of results, set this parameter to the value of `
1811
+ # nextPageToken` from the previous response.
1812
+ # Corresponds to the JSON property `pageToken`
1813
+ # @return [String]
1814
+ attr_accessor :page_token
1815
+
1816
+ # The maximum number of variants to return. If unspecified, defaults to 5000.
1817
+ # Corresponds to the JSON property `pageSize`
1818
+ # @return [Fixnum]
1819
+ attr_accessor :page_size
1820
+
1821
+ # The maximum number of calls to return. However, at least one variant will
1822
+ # always be returned, even if it has more calls than this limit. If unspecified,
1823
+ # defaults to 5000.
1824
+ # Corresponds to the JSON property `maxCalls`
1825
+ # @return [Fixnum]
1826
+ attr_accessor :max_calls
1827
+
1828
+ def initialize(**args)
1829
+ update!(**args)
1830
+ end
1831
+
1832
+ # Update properties of this object
1833
+ def update!(**args)
1834
+ @variant_set_ids = args[:variant_set_ids] unless args[:variant_set_ids].nil?
1835
+ @variant_name = args[:variant_name] unless args[:variant_name].nil?
1836
+ @call_set_ids = args[:call_set_ids] unless args[:call_set_ids].nil?
1837
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
1838
+ @start = args[:start] unless args[:start].nil?
1839
+ @end = args[:end] unless args[:end].nil?
1840
+ @page_token = args[:page_token] unless args[:page_token].nil?
1841
+ @page_size = args[:page_size] unless args[:page_size].nil?
1842
+ @max_calls = args[:max_calls] unless args[:max_calls].nil?
1843
+ end
1844
+ end
1845
+
1846
+ # The variant search response.
1847
+ class SearchVariantsResponse
1848
+ include Google::Apis::Core::Hashable
1849
+
1850
+ # The list of matching Variants.
1851
+ # Corresponds to the JSON property `variants`
1852
+ # @return [Array<Google::Apis::GenomicsV1::Variant>]
1853
+ attr_accessor :variants
1854
+
1855
+ # The continuation token, which is used to page through large result sets.
1856
+ # Provide this value in a subsequent request to return the next page of results.
1857
+ # This field will be empty if there aren't any additional results.
1858
+ # Corresponds to the JSON property `nextPageToken`
1859
+ # @return [String]
1860
+ attr_accessor :next_page_token
1861
+
1862
+ def initialize(**args)
1863
+ update!(**args)
1864
+ end
1865
+
1866
+ # Update properties of this object
1867
+ def update!(**args)
1868
+ @variants = args[:variants] unless args[:variants].nil?
1869
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1870
+ end
1871
+ end
1872
+
1873
+ # A variant represents a change in DNA sequence relative to a reference sequence.
1874
+ # For example, a variant could represent a SNP or an insertion. Variants belong
1875
+ # to a variant set. Each of the calls on a variant represent a determination of
1876
+ # genotype with respect to that variant. For example, a call might assign
1877
+ # probability of 0.32 to the occurrence of a SNP named rs1234 in a sample named
1878
+ # NA12345. A call belongs to a call set, which contains related calls typically
1879
+ # from one sample.
1880
+ class Variant
1881
+ include Google::Apis::Core::Hashable
1882
+
1883
+ # The ID of the variant set this variant belongs to.
1884
+ # Corresponds to the JSON property `variantSetId`
1885
+ # @return [String]
1886
+ attr_accessor :variant_set_id
1887
+
1888
+ # The server-generated variant ID, unique across all variants.
1889
+ # Corresponds to the JSON property `id`
1890
+ # @return [String]
1891
+ attr_accessor :id
1892
+
1893
+ # Names for the variant, for example a RefSNP ID.
1894
+ # Corresponds to the JSON property `names`
1895
+ # @return [Array<String>]
1896
+ attr_accessor :names
1897
+
1898
+ # The date this variant was created, in milliseconds from the epoch.
1899
+ # Corresponds to the JSON property `created`
1900
+ # @return [String]
1901
+ attr_accessor :created
1902
+
1903
+ # The reference on which this variant occurs. (such as `chr20` or `X`)
1904
+ # Corresponds to the JSON property `referenceName`
1905
+ # @return [String]
1906
+ attr_accessor :reference_name
1907
+
1908
+ # The position at which this variant occurs (0-based). This corresponds to the
1909
+ # first base of the string of reference bases.
1910
+ # Corresponds to the JSON property `start`
1911
+ # @return [String]
1912
+ attr_accessor :start
1913
+
1914
+ # The end position (0-based) of this variant. This corresponds to the first base
1915
+ # after the last base in the reference allele. So, the length of the reference
1916
+ # allele is (end - start). This is useful for variants that don't explicitly
1917
+ # give alternate bases, for example large deletions.
1918
+ # Corresponds to the JSON property `end`
1919
+ # @return [String]
1920
+ attr_accessor :end
1921
+
1922
+ # The reference bases for this variant. They start at the given position.
1923
+ # Corresponds to the JSON property `referenceBases`
1924
+ # @return [String]
1925
+ attr_accessor :reference_bases
1926
+
1927
+ # The bases that appear instead of the reference bases.
1928
+ # Corresponds to the JSON property `alternateBases`
1929
+ # @return [Array<String>]
1930
+ attr_accessor :alternate_bases
1931
+
1932
+ # A measure of how likely this variant is to be real. A higher value is better.
1933
+ # Corresponds to the JSON property `quality`
1934
+ # @return [Float]
1935
+ attr_accessor :quality
1936
+
1937
+ # A list of filters (normally quality filters) this variant has failed. `PASS`
1938
+ # indicates this variant has passed all filters.
1939
+ # Corresponds to the JSON property `filter`
1940
+ # @return [Array<String>]
1941
+ attr_accessor :filter
1942
+
1943
+ # A map of additional variant information. This must be of the form map (string
1944
+ # key mapping to a list of string values).
1945
+ # Corresponds to the JSON property `info`
1946
+ # @return [Hash<String,Array<Object>>]
1947
+ attr_accessor :info
1948
+
1949
+ # The variant calls for this particular variant. Each one represents the
1950
+ # determination of genotype with respect to this variant.
1951
+ # Corresponds to the JSON property `calls`
1952
+ # @return [Array<Google::Apis::GenomicsV1::VariantCall>]
1953
+ attr_accessor :calls
1954
+
1955
+ def initialize(**args)
1956
+ update!(**args)
1957
+ end
1958
+
1959
+ # Update properties of this object
1960
+ def update!(**args)
1961
+ @variant_set_id = args[:variant_set_id] unless args[:variant_set_id].nil?
1962
+ @id = args[:id] unless args[:id].nil?
1963
+ @names = args[:names] unless args[:names].nil?
1964
+ @created = args[:created] unless args[:created].nil?
1965
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
1966
+ @start = args[:start] unless args[:start].nil?
1967
+ @end = args[:end] unless args[:end].nil?
1968
+ @reference_bases = args[:reference_bases] unless args[:reference_bases].nil?
1969
+ @alternate_bases = args[:alternate_bases] unless args[:alternate_bases].nil?
1970
+ @quality = args[:quality] unless args[:quality].nil?
1971
+ @filter = args[:filter] unless args[:filter].nil?
1972
+ @info = args[:info] unless args[:info].nil?
1973
+ @calls = args[:calls] unless args[:calls].nil?
1974
+ end
1975
+ end
1976
+
1977
+ # A call represents the determination of genotype with respect to a particular
1978
+ # variant. It may include associated information such as quality and phasing.
1979
+ # For example, a call might assign a probability of 0.32 to the occurrence of a
1980
+ # SNP named rs1234 in a call set with the name NA12345.
1981
+ class VariantCall
1982
+ include Google::Apis::Core::Hashable
1983
+
1984
+ # The ID of the call set this variant call belongs to.
1985
+ # Corresponds to the JSON property `callSetId`
1986
+ # @return [String]
1987
+ attr_accessor :call_set_id
1988
+
1989
+ # The name of the call set this variant call belongs to.
1990
+ # Corresponds to the JSON property `callSetName`
1991
+ # @return [String]
1992
+ attr_accessor :call_set_name
1993
+
1994
+ # The genotype of this variant call. Each value represents either the value of
1995
+ # the `referenceBases` field or a 1-based index into `alternateBases`. If a
1996
+ # variant had a `referenceBases` value of `T` and an `alternateBases` value of `[
1997
+ # "A", "C"]`, and the `genotype` was `[2, 1]`, that would mean the call
1998
+ # represented the heterozygous value `CA` for this variant. If the `genotype`
1999
+ # was instead `[0, 1]`, the represented value would be `TA`. Ordering of the
2000
+ # genotype values is important if the `phaseset` is present. If a genotype is
2001
+ # not called (that is, a `.` is present in the GT string) -1 is returned.
2002
+ # Corresponds to the JSON property `genotype`
2003
+ # @return [Array<Fixnum>]
2004
+ attr_accessor :genotype
2005
+
2006
+ # If this field is present, this variant call's genotype ordering implies the
2007
+ # phase of the bases and is consistent with any other variant calls in the same
2008
+ # reference sequence which have the same phaseset value. When importing data
2009
+ # from VCF, if the genotype data was phased but no phase set was specified this
2010
+ # field will be set to `*`.
2011
+ # Corresponds to the JSON property `phaseset`
2012
+ # @return [String]
2013
+ attr_accessor :phaseset
2014
+
2015
+ # The genotype likelihoods for this variant call. Each array entry represents
2016
+ # how likely a specific genotype is for this call. The value ordering is defined
2017
+ # by the GL tag in the VCF spec. If Phred-scaled genotype likelihood scores (PL)
2018
+ # are available and log10(P) genotype likelihood scores (GL) are not, PL scores
2019
+ # are converted to GL scores. If both are available, PL scores are stored in `
2020
+ # info`.
2021
+ # Corresponds to the JSON property `genotypeLikelihood`
2022
+ # @return [Array<Float>]
2023
+ attr_accessor :genotype_likelihood
2024
+
2025
+ # A map of additional variant call information. This must be of the form map (
2026
+ # string key mapping to a list of string values).
2027
+ # Corresponds to the JSON property `info`
2028
+ # @return [Hash<String,Array<Object>>]
2029
+ attr_accessor :info
2030
+
2031
+ def initialize(**args)
2032
+ update!(**args)
2033
+ end
2034
+
2035
+ # Update properties of this object
2036
+ def update!(**args)
2037
+ @call_set_id = args[:call_set_id] unless args[:call_set_id].nil?
2038
+ @call_set_name = args[:call_set_name] unless args[:call_set_name].nil?
2039
+ @genotype = args[:genotype] unless args[:genotype].nil?
2040
+ @phaseset = args[:phaseset] unless args[:phaseset].nil?
2041
+ @genotype_likelihood = args[:genotype_likelihood] unless args[:genotype_likelihood].nil?
2042
+ @info = args[:info] unless args[:info].nil?
2043
+ end
2044
+ end
2045
+
2046
+ #
2047
+ class MergeVariantsRequest
2048
+ include Google::Apis::Core::Hashable
2049
+
2050
+ # The destination variant set.
2051
+ # Corresponds to the JSON property `variantSetId`
2052
+ # @return [String]
2053
+ attr_accessor :variant_set_id
2054
+
2055
+ # The variants to be merged with existing variants.
2056
+ # Corresponds to the JSON property `variants`
2057
+ # @return [Array<Google::Apis::GenomicsV1::Variant>]
2058
+ attr_accessor :variants
2059
+
2060
+ def initialize(**args)
2061
+ update!(**args)
2062
+ end
2063
+
2064
+ # Update properties of this object
2065
+ def update!(**args)
2066
+ @variant_set_id = args[:variant_set_id] unless args[:variant_set_id].nil?
2067
+ @variants = args[:variants] unless args[:variants].nil?
2068
+ end
2069
+ end
2070
+
2071
+ # The call set search request.
2072
+ class SearchCallSetsRequest
2073
+ include Google::Apis::Core::Hashable
2074
+
2075
+ # Restrict the query to call sets within the given variant sets. At least one ID
2076
+ # must be provided.
2077
+ # Corresponds to the JSON property `variantSetIds`
2078
+ # @return [Array<String>]
2079
+ attr_accessor :variant_set_ids
2080
+
2081
+ # Only return call sets for which a substring of the name matches this string.
2082
+ # Corresponds to the JSON property `name`
2083
+ # @return [String]
2084
+ attr_accessor :name
2085
+
2086
+ # The continuation token, which is used to page through large result sets. To
2087
+ # get the next page of results, set this parameter to the value of `
2088
+ # nextPageToken` from the previous response.
2089
+ # Corresponds to the JSON property `pageToken`
2090
+ # @return [String]
2091
+ attr_accessor :page_token
2092
+
2093
+ # The maximum number of call sets to return. If unspecified, defaults to 1000.
2094
+ # Corresponds to the JSON property `pageSize`
2095
+ # @return [Fixnum]
2096
+ attr_accessor :page_size
2097
+
2098
+ def initialize(**args)
2099
+ update!(**args)
2100
+ end
2101
+
2102
+ # Update properties of this object
2103
+ def update!(**args)
2104
+ @variant_set_ids = args[:variant_set_ids] unless args[:variant_set_ids].nil?
2105
+ @name = args[:name] unless args[:name].nil?
2106
+ @page_token = args[:page_token] unless args[:page_token].nil?
2107
+ @page_size = args[:page_size] unless args[:page_size].nil?
2108
+ end
2109
+ end
2110
+
2111
+ # The call set search response.
2112
+ class SearchCallSetsResponse
2113
+ include Google::Apis::Core::Hashable
2114
+
2115
+ # The list of matching call sets.
2116
+ # Corresponds to the JSON property `callSets`
2117
+ # @return [Array<Google::Apis::GenomicsV1::CallSet>]
2118
+ attr_accessor :call_sets
2119
+
2120
+ # The continuation token, which is used to page through large result sets.
2121
+ # Provide this value in a subsequent request to return the next page of results.
2122
+ # This field will be empty if there aren't any additional results.
2123
+ # Corresponds to the JSON property `nextPageToken`
2124
+ # @return [String]
2125
+ attr_accessor :next_page_token
2126
+
2127
+ def initialize(**args)
2128
+ update!(**args)
2129
+ end
2130
+
2131
+ # Update properties of this object
2132
+ def update!(**args)
2133
+ @call_sets = args[:call_sets] unless args[:call_sets].nil?
2134
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2135
+ end
2136
+ end
2137
+
2138
+ # A call set is a collection of variant calls, typically for one sample. It
2139
+ # belongs to a variant set.
2140
+ class CallSet
2141
+ include Google::Apis::Core::Hashable
2142
+
2143
+ # The server-generated call set ID, unique across all call sets.
2144
+ # Corresponds to the JSON property `id`
2145
+ # @return [String]
2146
+ attr_accessor :id
2147
+
2148
+ # The call set name.
2149
+ # Corresponds to the JSON property `name`
2150
+ # @return [String]
2151
+ attr_accessor :name
2152
+
2153
+ # The sample ID this call set corresponds to.
2154
+ # Corresponds to the JSON property `sampleId`
2155
+ # @return [String]
2156
+ attr_accessor :sample_id
2157
+
2158
+ # The IDs of the variant sets this call set belongs to.
2159
+ # Corresponds to the JSON property `variantSetIds`
2160
+ # @return [Array<String>]
2161
+ attr_accessor :variant_set_ids
2162
+
2163
+ # The date this call set was created in milliseconds from the epoch.
2164
+ # Corresponds to the JSON property `created`
2165
+ # @return [String]
2166
+ attr_accessor :created
2167
+
2168
+ # A map of additional call set information. This must be of the form map (string
2169
+ # key mapping to a list of string values).
2170
+ # Corresponds to the JSON property `info`
2171
+ # @return [Hash<String,Array<Object>>]
2172
+ attr_accessor :info
2173
+
2174
+ def initialize(**args)
2175
+ update!(**args)
2176
+ end
2177
+
2178
+ # Update properties of this object
2179
+ def update!(**args)
2180
+ @id = args[:id] unless args[:id].nil?
2181
+ @name = args[:name] unless args[:name].nil?
2182
+ @sample_id = args[:sample_id] unless args[:sample_id].nil?
2183
+ @variant_set_ids = args[:variant_set_ids] unless args[:variant_set_ids].nil?
2184
+ @created = args[:created] unless args[:created].nil?
2185
+ @info = args[:info] unless args[:info].nil?
2186
+ end
2187
+ end
2188
+
2189
+ # The read group set import response.
2190
+ class ImportReadGroupSetsResponse
2191
+ include Google::Apis::Core::Hashable
2192
+
2193
+ # IDs of the read group sets that were created.
2194
+ # Corresponds to the JSON property `readGroupSetIds`
2195
+ # @return [Array<String>]
2196
+ attr_accessor :read_group_set_ids
2197
+
2198
+ def initialize(**args)
2199
+ update!(**args)
2200
+ end
2201
+
2202
+ # Update properties of this object
2203
+ def update!(**args)
2204
+ @read_group_set_ids = args[:read_group_set_ids] unless args[:read_group_set_ids].nil?
2205
+ end
2206
+ end
2207
+
2208
+ # The variant data import response.
2209
+ class ImportVariantsResponse
2210
+ include Google::Apis::Core::Hashable
2211
+
2212
+ # IDs of the call sets that were created.
2213
+ # Corresponds to the JSON property `callSetIds`
2214
+ # @return [Array<String>]
2215
+ attr_accessor :call_set_ids
2216
+
2217
+ def initialize(**args)
2218
+ update!(**args)
2219
+ end
2220
+
2221
+ # Update properties of this object
2222
+ def update!(**args)
2223
+ @call_set_ids = args[:call_set_ids] unless args[:call_set_ids].nil?
2224
+ end
2225
+ end
2226
+
2227
+ # Metadata describing an [Operation][google.longrunning.Operation].
2228
+ class OperationMetadata
2229
+ include Google::Apis::Core::Hashable
2230
+
2231
+ # The Google Cloud Project in which the job is scoped.
2232
+ # Corresponds to the JSON property `projectId`
2233
+ # @return [String]
2234
+ attr_accessor :project_id
2235
+
2236
+ # The time at which the job was submitted to the Genomics service.
2237
+ # Corresponds to the JSON property `createTime`
2238
+ # @return [String]
2239
+ attr_accessor :create_time
2240
+
2241
+ # The original request that started the operation. Note that this will be in
2242
+ # current version of the API. If the operation was started with v1beta2 API and
2243
+ # a GetOperation is performed on v1 API, a v1 request will be returned.
2244
+ # Corresponds to the JSON property `request`
2245
+ # @return [Hash<String,Object>]
2246
+ attr_accessor :request
2247
+
2248
+ # Optional event messages that were generated during the job's execution. This
2249
+ # also contains any warnings that were generated during import or export.
2250
+ # Corresponds to the JSON property `events`
2251
+ # @return [Array<Google::Apis::GenomicsV1::OperationEvent>]
2252
+ attr_accessor :events
2253
+
2254
+ def initialize(**args)
2255
+ update!(**args)
2256
+ end
2257
+
2258
+ # Update properties of this object
2259
+ def update!(**args)
2260
+ @project_id = args[:project_id] unless args[:project_id].nil?
2261
+ @create_time = args[:create_time] unless args[:create_time].nil?
2262
+ @request = args[:request] unless args[:request].nil?
2263
+ @events = args[:events] unless args[:events].nil?
2264
+ end
2265
+ end
2266
+
2267
+ # An event that occurred during an [Operation][google.longrunning.Operation].
2268
+ class OperationEvent
2269
+ include Google::Apis::Core::Hashable
2270
+
2271
+ # Required description of event.
2272
+ # Corresponds to the JSON property `description`
2273
+ # @return [String]
2274
+ attr_accessor :description
2275
+
2276
+ def initialize(**args)
2277
+ update!(**args)
2278
+ end
2279
+
2280
+ # Update properties of this object
2281
+ def update!(**args)
2282
+ @description = args[:description] unless args[:description].nil?
2283
+ end
2284
+ end
2285
+ end
2286
+ end
2287
+ end