google-api-client 0.8.7 → 0.9.pre1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (397) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +20 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +7 -0
  5. data/.rubocop_todo.yml +63 -0
  6. data/.travis.yml +21 -0
  7. data/.yardopts +12 -0
  8. data/CHANGELOG.md +6 -3
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +28 -2
  11. data/MIGRATING.md +171 -0
  12. data/README.md +158 -150
  13. data/Rakefile +1 -40
  14. data/api_names.yaml +872 -0
  15. data/api_names_out.yaml +20843 -0
  16. data/bin/generate-api +93 -0
  17. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  18. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1124 -0
  19. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +375 -0
  20. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +893 -0
  21. data/generated/google/apis/adexchangeseller_v2_0.rb +38 -0
  22. data/generated/google/apis/adexchangeseller_v2_0/classes.rb +792 -0
  23. data/generated/google/apis/adexchangeseller_v2_0/representations.rb +309 -0
  24. data/generated/google/apis/adexchangeseller_v2_0/service.rb +682 -0
  25. data/generated/google/apis/admin_directory_v1.rb +89 -0
  26. data/generated/google/apis/admin_directory_v1/classes.rb +2389 -0
  27. data/generated/google/apis/admin_directory_v1/representations.rb +780 -0
  28. data/generated/google/apis/admin_directory_v1/service.rb +2805 -0
  29. data/generated/google/apis/admin_reports_v1.rb +38 -0
  30. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  31. data/generated/google/apis/admin_reports_v1/representations.rb +231 -0
  32. data/generated/google/apis/admin_reports_v1/service.rb +341 -0
  33. data/generated/google/apis/adsense_v1_4.rb +38 -0
  34. data/generated/google/apis/adsense_v1_4/classes.rb +1279 -0
  35. data/generated/google/apis/adsense_v1_4/representations.rb +493 -0
  36. data/generated/google/apis/adsense_v1_4/service.rb +1752 -0
  37. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  38. data/generated/google/apis/adsensehost_v4_1/classes.rb +834 -0
  39. data/generated/google/apis/adsensehost_v4_1/representations.rb +327 -0
  40. data/generated/google/apis/adsensehost_v4_1/service.rb +1190 -0
  41. data/generated/google/apis/analytics_v3.rb +49 -0
  42. data/generated/google/apis/analytics_v3/classes.rb +5113 -0
  43. data/generated/google/apis/analytics_v3/representations.rb +1661 -0
  44. data/generated/google/apis/analytics_v3/service.rb +3600 -0
  45. data/generated/google/apis/androidenterprise_v1.rb +34 -0
  46. data/generated/google/apis/androidenterprise_v1/classes.rb +1162 -0
  47. data/generated/google/apis/androidenterprise_v1/representations.rb +431 -0
  48. data/generated/google/apis/androidenterprise_v1/service.rb +1979 -0
  49. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  50. data/generated/google/apis/androidpublisher_v2/classes.rb +1374 -0
  51. data/generated/google/apis/androidpublisher_v2/representations.rb +630 -0
  52. data/generated/google/apis/androidpublisher_v2/service.rb +2390 -0
  53. data/generated/google/apis/appsactivity_v1.rb +46 -0
  54. data/generated/google/apis/appsactivity_v1/classes.rb +392 -0
  55. data/generated/google/apis/appsactivity_v1/representations.rb +184 -0
  56. data/generated/google/apis/appsactivity_v1/service.rb +129 -0
  57. data/generated/google/apis/appstate_v1.rb +34 -0
  58. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  59. data/generated/google/apis/appstate_v1/representations.rb +79 -0
  60. data/generated/google/apis/appstate_v1/service.rb +265 -0
  61. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  62. data/generated/google/apis/autoscaler_v1beta2/classes.rb +747 -0
  63. data/generated/google/apis/autoscaler_v1beta2/representations.rb +281 -0
  64. data/generated/google/apis/autoscaler_v1beta2/service.rb +488 -0
  65. data/generated/google/apis/bigquery_v2.rb +49 -0
  66. data/generated/google/apis/bigquery_v2/classes.rb +2255 -0
  67. data/generated/google/apis/bigquery_v2/representations.rb +754 -0
  68. data/generated/google/apis/bigquery_v2/service.rb +1003 -0
  69. data/generated/google/apis/blogger_v3.rb +37 -0
  70. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  71. data/generated/google/apis/blogger_v3/representations.rb +562 -0
  72. data/generated/google/apis/blogger_v3/service.rb +1620 -0
  73. data/generated/google/apis/books_v1.rb +34 -0
  74. data/generated/google/apis/books_v1/classes.rb +3515 -0
  75. data/generated/google/apis/books_v1/representations.rb +1361 -0
  76. data/generated/google/apis/books_v1/service.rb +2170 -0
  77. data/generated/google/apis/calendar_v3.rb +37 -0
  78. data/generated/google/apis/calendar_v3/classes.rb +1702 -0
  79. data/generated/google/apis/calendar_v3/representations.rb +566 -0
  80. data/generated/google/apis/calendar_v3/service.rb +1943 -0
  81. data/generated/google/apis/civicinfo_v2.rb +31 -0
  82. data/generated/google/apis/civicinfo_v2/classes.rb +1057 -0
  83. data/generated/google/apis/civicinfo_v2/representations.rb +374 -0
  84. data/generated/google/apis/civicinfo_v2/service.rb +284 -0
  85. data/generated/google/apis/cloudmonitoring_v2beta2.rb +34 -0
  86. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  87. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +311 -0
  88. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +458 -0
  89. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  90. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +139 -0
  91. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +65 -0
  92. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +301 -0
  93. data/generated/google/apis/compute_v1.rb +49 -0
  94. data/generated/google/apis/compute_v1/classes.rb +6391 -0
  95. data/generated/google/apis/compute_v1/representations.rb +2209 -0
  96. data/generated/google/apis/compute_v1/service.rb +6352 -0
  97. data/generated/google/apis/container_v1beta1.rb +35 -0
  98. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  99. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  100. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  101. data/generated/google/apis/content_v2.rb +35 -0
  102. data/generated/google/apis/content_v2/classes.rb +3780 -0
  103. data/generated/google/apis/content_v2/representations.rb +1456 -0
  104. data/generated/google/apis/content_v2/service.rb +1706 -0
  105. data/generated/google/apis/coordinate_v1.rb +37 -0
  106. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  107. data/generated/google/apis/coordinate_v1/representations.rb +285 -0
  108. data/generated/google/apis/coordinate_v1/service.rb +687 -0
  109. data/{lib/google/api_client/auth/compute_service_account.rb → generated/google/apis/customsearch_v1.rb} +13 -10
  110. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  111. data/generated/google/apis/customsearch_v1/representations.rb +276 -0
  112. data/generated/google/apis/customsearch_v1/service.rb +208 -0
  113. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  114. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  115. data/generated/google/apis/datastore_v1beta2/representations.rb +526 -0
  116. data/generated/google/apis/datastore_v1beta2/service.rb +300 -0
  117. data/generated/google/apis/deploymentmanager_v2beta2.rb +41 -0
  118. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +820 -0
  119. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +303 -0
  120. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +647 -0
  121. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  122. data/generated/google/apis/dfareporting_v2_1/classes.rb +10755 -0
  123. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  124. data/generated/google/apis/dfareporting_v2_1/service.rb +8775 -0
  125. data/generated/google/apis/discovery_v1.rb +32 -0
  126. data/generated/google/apis/discovery_v1/classes.rb +947 -0
  127. data/generated/google/apis/discovery_v1/representations.rb +355 -0
  128. data/generated/google/apis/discovery_v1/service.rb +144 -0
  129. data/generated/google/apis/dns_v1.rb +41 -0
  130. data/generated/google/apis/dns_v1/classes.rb +406 -0
  131. data/generated/google/apis/dns_v1/representations.rb +151 -0
  132. data/generated/google/apis/dns_v1/service.rb +460 -0
  133. data/{spec/google/api_client/request_spec.rb → generated/google/apis/doubleclickbidmanager_v1.rb} +15 -13
  134. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +709 -0
  135. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +297 -0
  136. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +349 -0
  137. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  138. data/generated/google/apis/doubleclicksearch_v2/classes.rb +947 -0
  139. data/generated/google/apis/doubleclicksearch_v2/representations.rb +315 -0
  140. data/generated/google/apis/doubleclicksearch_v2/service.rb +490 -0
  141. data/generated/google/apis/drive_v2.rb +55 -0
  142. data/generated/google/apis/drive_v2/classes.rb +2519 -0
  143. data/generated/google/apis/drive_v2/representations.rb +781 -0
  144. data/generated/google/apis/drive_v2/service.rb +2685 -0
  145. data/generated/google/apis/fitness_v1.rb +49 -0
  146. data/generated/google/apis/fitness_v1/classes.rb +809 -0
  147. data/generated/google/apis/fitness_v1/representations.rb +295 -0
  148. data/generated/google/apis/fitness_v1/service.rb +684 -0
  149. data/generated/google/apis/fusiontables_v2.rb +37 -0
  150. data/generated/google/apis/fusiontables_v2/classes.rb +1048 -0
  151. data/generated/google/apis/fusiontables_v2/representations.rb +409 -0
  152. data/generated/google/apis/fusiontables_v2/service.rb +1496 -0
  153. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  154. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  155. data/generated/google/apis/games_configuration_v1configuration/representations.rb +206 -0
  156. data/generated/google/apis/games_configuration_v1configuration/service.rb +578 -0
  157. data/generated/google/apis/games_v1.rb +40 -0
  158. data/generated/google/apis/games_v1/classes.rb +4578 -0
  159. data/generated/google/apis/games_v1/representations.rb +1570 -0
  160. data/generated/google/apis/games_v1/service.rb +2306 -0
  161. data/generated/google/apis/gan_v1beta1.rb +31 -0
  162. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  163. data/generated/google/apis/gan_v1beta1/representations.rb +428 -0
  164. data/generated/google/apis/gan_v1beta1/service.rb +692 -0
  165. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  166. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  167. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  168. data/generated/google/apis/genomics_v1beta2/service.rb +2356 -0
  169. data/generated/google/apis/gmail_v1.rb +49 -0
  170. data/generated/google/apis/gmail_v1/classes.rb +794 -0
  171. data/generated/google/apis/gmail_v1/representations.rb +339 -0
  172. data/generated/google/apis/gmail_v1/service.rb +1502 -0
  173. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  174. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  175. data/generated/google/apis/groupsmigration_v1/representations.rb +38 -0
  176. data/generated/google/apis/groupsmigration_v1/service.rb +111 -0
  177. data/generated/google/apis/groupssettings_v1.rb +34 -0
  178. data/generated/google/apis/groupssettings_v1/classes.rb +221 -0
  179. data/generated/google/apis/groupssettings_v1/representations.rb +64 -0
  180. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  181. data/generated/google/apis/identitytoolkit_v3.rb +31 -0
  182. data/generated/google/apis/identitytoolkit_v3/classes.rb +1229 -0
  183. data/generated/google/apis/identitytoolkit_v3/representations.rb +422 -0
  184. data/generated/google/apis/identitytoolkit_v3/service.rb +491 -0
  185. data/generated/google/apis/licensing_v1.rb +34 -0
  186. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  187. data/generated/google/apis/licensing_v1/representations.rb +68 -0
  188. data/generated/google/apis/licensing_v1/service.rb +376 -0
  189. data/generated/google/apis/logging_v1beta3.rb +35 -0
  190. data/generated/google/apis/logging_v1beta3/classes.rb +505 -0
  191. data/generated/google/apis/logging_v1beta3/representations.rb +222 -0
  192. data/generated/google/apis/logging_v1beta3/service.rb +670 -0
  193. data/generated/google/apis/manager_v1beta2.rb +50 -0
  194. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  195. data/generated/google/apis/manager_v1beta2/representations.rb +536 -0
  196. data/generated/google/apis/manager_v1beta2/service.rb +380 -0
  197. data/generated/google/apis/mapsengine_v1.rb +38 -0
  198. data/generated/google/apis/mapsengine_v1/classes.rb +2873 -0
  199. data/generated/google/apis/mapsengine_v1/representations.rb +1235 -0
  200. data/generated/google/apis/mapsengine_v1/service.rb +3465 -0
  201. data/generated/google/apis/mirror_v1.rb +37 -0
  202. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  203. data/generated/google/apis/mirror_v1/representations.rb +350 -0
  204. data/generated/google/apis/mirror_v1/service.rb +1001 -0
  205. data/generated/google/apis/oauth2_v2.rb +43 -0
  206. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  207. data/generated/google/apis/oauth2_v2/representations.rb +94 -0
  208. data/generated/google/apis/oauth2_v2/service.rb +203 -0
  209. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  210. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  211. data/generated/google/apis/pagespeedonline_v2/representations.rb +244 -0
  212. data/generated/google/apis/pagespeedonline_v2/service.rb +120 -0
  213. data/generated/google/apis/plus_domains_v1.rb +61 -0
  214. data/generated/google/apis/plus_domains_v1/classes.rb +2402 -0
  215. data/generated/google/apis/plus_domains_v1/representations.rb +873 -0
  216. data/generated/google/apis/plus_domains_v1/service.rb +924 -0
  217. data/generated/google/apis/plus_v1.rb +43 -0
  218. data/generated/google/apis/plus_v1/classes.rb +2384 -0
  219. data/generated/google/apis/plus_v1/representations.rb +812 -0
  220. data/generated/google/apis/plus_v1/service.rb +616 -0
  221. data/generated/google/apis/prediction_v1_6.rb +44 -0
  222. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  223. data/generated/google/apis/prediction_v1_6/representations.rb +327 -0
  224. data/generated/google/apis/prediction_v1_6/service.rb +388 -0
  225. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  226. data/generated/google/apis/pubsub_v1beta2/classes.rb +824 -0
  227. data/generated/google/apis/pubsub_v1beta2/representations.rb +366 -0
  228. data/generated/google/apis/pubsub_v1beta2/service.rb +778 -0
  229. data/generated/google/apis/qpx_express_v1.rb +31 -0
  230. data/generated/google/apis/qpx_express_v1/classes.rb +1268 -0
  231. data/generated/google/apis/qpx_express_v1/representations.rb +424 -0
  232. data/generated/google/apis/qpx_express_v1/service.rb +101 -0
  233. data/generated/google/apis/replicapool_v1beta2.rb +41 -0
  234. data/generated/google/apis/replicapool_v1beta2/classes.rb +621 -0
  235. data/generated/google/apis/replicapool_v1beta2/representations.rb +235 -0
  236. data/generated/google/apis/replicapool_v1beta2/service.rb +620 -0
  237. data/generated/google/apis/replicapoolupdater_v1beta1.rb +41 -0
  238. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +682 -0
  239. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +247 -0
  240. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +472 -0
  241. data/generated/google/apis/reseller_v1.rb +37 -0
  242. data/generated/google/apis/reseller_v1/classes.rb +502 -0
  243. data/generated/google/apis/reseller_v1/representations.rb +199 -0
  244. data/generated/google/apis/reseller_v1/service.rb +637 -0
  245. data/generated/google/apis/resourceviews_v1beta2.rb +47 -0
  246. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  247. data/generated/google/apis/resourceviews_v1beta2/representations.rb +269 -0
  248. data/generated/google/apis/resourceviews_v1beta2/service.rb +574 -0
  249. data/generated/google/apis/site_verification_v1.rb +37 -0
  250. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  251. data/generated/google/apis/site_verification_v1/representations.rb +101 -0
  252. data/generated/google/apis/site_verification_v1/service.rb +322 -0
  253. data/generated/google/apis/sqladmin_v1beta4.rb +37 -0
  254. data/generated/google/apis/sqladmin_v1beta4/classes.rb +1817 -0
  255. data/generated/google/apis/sqladmin_v1beta4/representations.rb +688 -0
  256. data/generated/google/apis/sqladmin_v1beta4/service.rb +1534 -0
  257. data/generated/google/apis/storage_v1.rb +43 -0
  258. data/generated/google/apis/storage_v1/classes.rb +1177 -0
  259. data/generated/google/apis/storage_v1/representations.rb +427 -0
  260. data/generated/google/apis/storage_v1/service.rb +1920 -0
  261. data/generated/google/apis/tagmanager_v1.rb +52 -0
  262. data/generated/google/apis/tagmanager_v1/classes.rb +1226 -0
  263. data/generated/google/apis/tagmanager_v1/representations.rb +461 -0
  264. data/generated/google/apis/tagmanager_v1/service.rb +1978 -0
  265. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  266. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  267. data/generated/google/apis/taskqueue_v1beta2/representations.rb +114 -0
  268. data/generated/google/apis/taskqueue_v1beta2/service.rb +416 -0
  269. data/generated/google/apis/tasks_v1.rb +37 -0
  270. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  271. data/generated/google/apis/tasks_v1/representations.rb +115 -0
  272. data/generated/google/apis/tasks_v1/service.rb +657 -0
  273. data/generated/google/apis/translate_v2.rb +31 -0
  274. data/generated/google/apis/translate_v2/classes.rb +168 -0
  275. data/generated/google/apis/translate_v2/representations.rb +109 -0
  276. data/generated/google/apis/translate_v2/service.rb +185 -0
  277. data/generated/google/apis/urlshortener_v1.rb +34 -0
  278. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  279. data/generated/google/apis/urlshortener_v1/representations.rb +111 -0
  280. data/generated/google/apis/urlshortener_v1/service.rb +179 -0
  281. data/generated/google/apis/webmasters_v3.rb +37 -0
  282. data/generated/google/apis/webmasters_v3/classes.rb +563 -0
  283. data/generated/google/apis/webmasters_v3/representations.rb +250 -0
  284. data/generated/google/apis/webmasters_v3/service.rb +587 -0
  285. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  286. data/generated/google/apis/youtube_analytics_v1/classes.rb +540 -0
  287. data/generated/google/apis/youtube_analytics_v1/representations.rb +242 -0
  288. data/generated/google/apis/youtube_analytics_v1/service.rb +567 -0
  289. data/generated/google/apis/youtube_v3.rb +49 -0
  290. data/generated/google/apis/youtube_v3/classes.rb +7225 -0
  291. data/generated/google/apis/youtube_v3/representations.rb +2529 -0
  292. data/generated/google/apis/youtube_v3/service.rb +4051 -0
  293. data/google-api-client.gemspec +27 -39
  294. data/lib/google/api_client/auth/storage.rb +3 -2
  295. data/lib/google/api_client/auth/storages/file_store.rb +1 -3
  296. data/lib/google/api_client/auth/storages/redis_store.rb +6 -2
  297. data/lib/google/apis.rb +48 -0
  298. data/lib/google/apis/core/api_command.rb +128 -0
  299. data/lib/google/apis/core/base_service.rb +314 -0
  300. data/lib/google/apis/core/batch.rb +222 -0
  301. data/lib/google/apis/core/download.rb +94 -0
  302. data/lib/google/apis/core/hashable.rb +44 -0
  303. data/lib/google/apis/core/http_command.rb +275 -0
  304. data/lib/google/apis/core/json_representation.rb +122 -0
  305. data/lib/google/{api_client/version.rb → apis/core/logging.rb} +12 -8
  306. data/lib/google/apis/core/multipart.rb +173 -0
  307. data/lib/google/apis/core/upload.rb +275 -0
  308. data/lib/google/{api_client → apis}/errors.rb +32 -28
  309. data/lib/google/apis/generator.rb +70 -0
  310. data/lib/google/apis/generator/annotator.rb +271 -0
  311. data/lib/google/apis/generator/helpers.rb +74 -0
  312. data/lib/google/apis/generator/model.rb +130 -0
  313. data/lib/google/apis/generator/template.rb +124 -0
  314. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  315. data/lib/google/apis/generator/templates/_method.tmpl +90 -0
  316. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  317. data/lib/google/apis/generator/templates/_representation_stub.tmpl +15 -0
  318. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  319. data/lib/google/{api_client/reference.rb → apis/generator/templates/classes.rb.tmpl} +11 -9
  320. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  321. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  322. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  323. data/lib/google/apis/options.rb +79 -0
  324. data/lib/google/apis/version.rb +39 -0
  325. data/rakelib/metrics.rake +22 -0
  326. data/rakelib/rubocop.rake +10 -0
  327. data/rakelib/spec.rake +11 -0
  328. data/rakelib/yard.rake +11 -0
  329. data/samples/calendar/calendar.rb +43 -0
  330. data/samples/drive/drive.rb +40 -0
  331. data/samples/pubsub/pubsub.rb +52 -0
  332. data/{lib/google/api_client/discovery.rb → samples/translate/translate.rb} +14 -5
  333. data/script/generate +79 -0
  334. data/script/package +8 -0
  335. data/script/release +15 -0
  336. data/spec/fixtures/files/api_names.yaml +3 -0
  337. data/spec/fixtures/files/auth_stored_credentials.json +8 -0
  338. data/spec/fixtures/files/client_secrets.json +1 -0
  339. data/spec/fixtures/files/test.blah +1 -0
  340. data/spec/fixtures/files/test.txt +1 -0
  341. data/spec/fixtures/files/test_api.json +440 -0
  342. data/spec/google/api_client/auth/storage_spec.rb +1 -3
  343. data/spec/google/api_client/auth/storages/file_store_spec.rb +1 -2
  344. data/spec/google/api_client/auth/storages/redis_store_spec.rb +1 -3
  345. data/spec/google/apis/core/api_command_spec.rb +170 -0
  346. data/spec/google/apis/core/batch_spec.rb +128 -0
  347. data/spec/google/apis/core/download_spec.rb +90 -0
  348. data/spec/google/apis/core/hashable_spec.rb +60 -0
  349. data/spec/google/apis/core/http_command_spec.rb +238 -0
  350. data/spec/google/apis/core/json_representation_spec.rb +192 -0
  351. data/spec/google/apis/core/service_spec.rb +247 -0
  352. data/spec/google/apis/core/upload_spec.rb +238 -0
  353. data/{lib/google/api_client/service_account.rb → spec/google/apis/generated_spec.rb} +14 -8
  354. data/spec/google/apis/generator/generator_spec.rb +272 -0
  355. data/spec/google/apis/logging_spec.rb +45 -0
  356. data/spec/google/apis/options_spec.rb +40 -0
  357. data/spec/integration_tests/drive_spec.rb +35 -0
  358. data/spec/integration_tests/pubsub_spec.rb +48 -0
  359. data/spec/integration_tests/url_shortener_spec.rb +31 -0
  360. data/spec/spec_helper.rb +102 -46
  361. metadata +433 -178
  362. data/lib/compat/multi_json.rb +0 -19
  363. data/lib/google/api_client.rb +0 -750
  364. data/lib/google/api_client/auth/file_storage.rb +0 -59
  365. data/lib/google/api_client/auth/jwt_asserter.rb +0 -126
  366. data/lib/google/api_client/auth/key_utils.rb +0 -93
  367. data/lib/google/api_client/auth/pkcs12.rb +0 -41
  368. data/lib/google/api_client/batch.rb +0 -326
  369. data/lib/google/api_client/charset.rb +0 -33
  370. data/lib/google/api_client/discovery/api.rb +0 -310
  371. data/lib/google/api_client/discovery/media.rb +0 -77
  372. data/lib/google/api_client/discovery/method.rb +0 -363
  373. data/lib/google/api_client/discovery/resource.rb +0 -156
  374. data/lib/google/api_client/discovery/schema.rb +0 -117
  375. data/lib/google/api_client/environment.rb +0 -42
  376. data/lib/google/api_client/gzip.rb +0 -28
  377. data/lib/google/api_client/logging.rb +0 -32
  378. data/lib/google/api_client/media.rb +0 -259
  379. data/lib/google/api_client/railtie.rb +0 -18
  380. data/lib/google/api_client/request.rb +0 -350
  381. data/lib/google/api_client/result.rb +0 -255
  382. data/lib/google/api_client/service.rb +0 -233
  383. data/lib/google/api_client/service/batch.rb +0 -110
  384. data/lib/google/api_client/service/request.rb +0 -144
  385. data/lib/google/api_client/service/resource.rb +0 -40
  386. data/lib/google/api_client/service/result.rb +0 -162
  387. data/lib/google/api_client/service/simple_file_store.rb +0 -151
  388. data/lib/google/api_client/service/stub_generator.rb +0 -61
  389. data/spec/google/api_client/batch_spec.rb +0 -248
  390. data/spec/google/api_client/discovery_spec.rb +0 -708
  391. data/spec/google/api_client/gzip_spec.rb +0 -98
  392. data/spec/google/api_client/media_spec.rb +0 -178
  393. data/spec/google/api_client/result_spec.rb +0 -207
  394. data/spec/google/api_client/service_account_spec.rb +0 -169
  395. data/spec/google/api_client/service_spec.rb +0 -618
  396. data/spec/google/api_client/simple_file_store_spec.rb +0 -133
  397. data/spec/google/api_client_spec.rb +0 -352
@@ -0,0 +1,46 @@
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 'google/apis/genomics_v1beta2/service.rb'
16
+ require 'google/apis/genomics_v1beta2/classes.rb'
17
+ require 'google/apis/genomics_v1beta2/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Genomics API
22
+ #
23
+ # Provides access to Genomics data.
24
+ #
25
+ # @see https://developers.google.com/genomics/v1beta2/reference
26
+ module GenomicsV1beta2
27
+ VERSION = 'V1beta2'
28
+ REVISION = '20150623'
29
+
30
+ # View and manage your data in Google BigQuery
31
+ AUTH_BIGQUERY = 'https://www.googleapis.com/auth/bigquery'
32
+
33
+ # View and manage your data across Google Cloud Platform services
34
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
35
+
36
+ # Manage your data in Google Cloud Storage
37
+ AUTH_DEVSTORAGE_READ_WRITE = 'https://www.googleapis.com/auth/devstorage.read_write'
38
+
39
+ # View and manage Genomics data
40
+ AUTH_GENOMICS = 'https://www.googleapis.com/auth/genomics'
41
+
42
+ # View Genomics data
43
+ AUTH_GENOMICS_READONLY = 'https://www.googleapis.com/auth/genomics.readonly'
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,3288 @@
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 GenomicsV1beta2
24
+
25
+ # The read group set align request.
26
+ class AlignReadGroupSetsRequest
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # The BAM source files for alignment. Exactly one of readGroupSetId,
30
+ # bamSourceUris, interleavedFastqSource or pairedFastqSource must be provided.
31
+ # The caller must have READ permissions for these files.
32
+ # Corresponds to the JSON property `bamSourceUris`
33
+ # @return [Array<String>]
34
+ attr_accessor :bam_source_uris
35
+
36
+ # Required. The ID of the dataset the newly aligned read group sets will belong
37
+ # to. The caller must have WRITE permissions to this dataset.
38
+ # Corresponds to the JSON property `datasetId`
39
+ # @return [String]
40
+ attr_accessor :dataset_id
41
+
42
+ # Describes an interleaved FASTQ file source for alignment.
43
+ # Corresponds to the JSON property `interleavedFastqSource`
44
+ # @return [Google::Apis::GenomicsV1beta2::InterleavedFastqSource]
45
+ attr_accessor :interleaved_fastq_source
46
+
47
+ # Describes a paired-end FASTQ file source for alignment.
48
+ # Corresponds to the JSON property `pairedFastqSource`
49
+ # @return [Google::Apis::GenomicsV1beta2::PairedFastqSource]
50
+ attr_accessor :paired_fastq_source
51
+
52
+ # The ID of the read group set which will be aligned. A new read group set will
53
+ # be generated to hold the aligned data, the originals will not be modified. The
54
+ # caller must have READ permissions for this read group set. Exactly one of
55
+ # readGroupSetId, bamSourceUris, interleavedFastqSource or pairedFastqSource
56
+ # must be provided.
57
+ # Corresponds to the JSON property `readGroupSetId`
58
+ # @return [String]
59
+ attr_accessor :read_group_set_id
60
+
61
+ def initialize(**args)
62
+ update!(**args)
63
+ end
64
+
65
+ # Update properties of this object
66
+ def update!(**args)
67
+ @bam_source_uris = args[:bam_source_uris] unless args[:bam_source_uris].nil?
68
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
69
+ @interleaved_fastq_source = args[:interleaved_fastq_source] unless args[:interleaved_fastq_source].nil?
70
+ @paired_fastq_source = args[:paired_fastq_source] unless args[:paired_fastq_source].nil?
71
+ @read_group_set_id = args[:read_group_set_id] unless args[:read_group_set_id].nil?
72
+ end
73
+ end
74
+
75
+ # The read group set align response.
76
+ class AlignReadGroupSetsResponse
77
+ include Google::Apis::Core::Hashable
78
+
79
+ # A job ID that can be used to get status information.
80
+ # Corresponds to the JSON property `jobId`
81
+ # @return [String]
82
+ attr_accessor :job_id
83
+
84
+ def initialize(**args)
85
+ update!(**args)
86
+ end
87
+
88
+ # Update properties of this object
89
+ def update!(**args)
90
+ @job_id = args[:job_id] unless args[:job_id].nil?
91
+ end
92
+ end
93
+
94
+ # An annotation describes a region of reference genome. The value of an
95
+ # annotation may be one of several canonical types, supplemented by arbitrary
96
+ # info tags. A variant annotation is represented by one or more of these
97
+ # canonical types. An annotation is not inherently associated with a specific
98
+ # sample or individual (though a client could choose to use annotations in this
99
+ # way). Example canonical annotation types are 'Gene' and 'Variant'.
100
+ class Annotation
101
+ include Google::Apis::Core::Hashable
102
+
103
+ # The ID of the containing annotation set.
104
+ # Corresponds to the JSON property `annotationSetId`
105
+ # @return [String]
106
+ attr_accessor :annotation_set_id
107
+
108
+ # The generated unique ID for this annotation.
109
+ # Corresponds to the JSON property `id`
110
+ # @return [String]
111
+ attr_accessor :id
112
+
113
+ # A string which maps to an array of values.
114
+ # Corresponds to the JSON property `info`
115
+ # @return [Hash<String,Array<String>>]
116
+ attr_accessor :info
117
+
118
+ # The display name of this annotation.
119
+ # Corresponds to the JSON property `name`
120
+ # @return [String]
121
+ attr_accessor :name
122
+
123
+ # A 0-based half-open genomic coordinate range over a reference sequence, for
124
+ # representing the position of a genomic resource.
125
+ # Corresponds to the JSON property `position`
126
+ # @return [Google::Apis::GenomicsV1beta2::RangePosition]
127
+ attr_accessor :position
128
+
129
+ # A transcript represents the assertion that a particular region of the
130
+ # reference genome may be transcribed as RNA.
131
+ # Corresponds to the JSON property `transcript`
132
+ # @return [Google::Apis::GenomicsV1beta2::Transcript]
133
+ attr_accessor :transcript
134
+
135
+ # The data type for this annotation. Must match the containing annotation set's
136
+ # type.
137
+ # Corresponds to the JSON property `type`
138
+ # @return [String]
139
+ attr_accessor :type
140
+
141
+ # A Variant annotation.
142
+ # Corresponds to the JSON property `variant`
143
+ # @return [Google::Apis::GenomicsV1beta2::VariantAnnotation]
144
+ attr_accessor :variant
145
+
146
+ def initialize(**args)
147
+ update!(**args)
148
+ end
149
+
150
+ # Update properties of this object
151
+ def update!(**args)
152
+ @annotation_set_id = args[:annotation_set_id] unless args[:annotation_set_id].nil?
153
+ @id = args[:id] unless args[:id].nil?
154
+ @info = args[:info] unless args[:info].nil?
155
+ @name = args[:name] unless args[:name].nil?
156
+ @position = args[:position] unless args[:position].nil?
157
+ @transcript = args[:transcript] unless args[:transcript].nil?
158
+ @type = args[:type] unless args[:type].nil?
159
+ @variant = args[:variant] unless args[:variant].nil?
160
+ end
161
+ end
162
+
163
+ # An annotation set is a logical grouping of annotations that share consistent
164
+ # type information and provenance. Examples of annotation sets include 'all
165
+ # genes from refseq', and 'all variant annotations from ClinVar'.
166
+ class AnnotationSet
167
+ include Google::Apis::Core::Hashable
168
+
169
+ # The ID of the containing dataset.
170
+ # Corresponds to the JSON property `datasetId`
171
+ # @return [String]
172
+ attr_accessor :dataset_id
173
+
174
+ # The generated unique ID for this annotation set.
175
+ # Corresponds to the JSON property `id`
176
+ # @return [String]
177
+ attr_accessor :id
178
+
179
+ # A string which maps to an array of values.
180
+ # Corresponds to the JSON property `info`
181
+ # @return [Hash<String,Array<String>>]
182
+ attr_accessor :info
183
+
184
+ # The display name for this annotation set.
185
+ # Corresponds to the JSON property `name`
186
+ # @return [String]
187
+ attr_accessor :name
188
+
189
+ # The ID of the reference set that defines the coordinate space for this set's
190
+ # annotations.
191
+ # Corresponds to the JSON property `referenceSetId`
192
+ # @return [String]
193
+ attr_accessor :reference_set_id
194
+
195
+ # The source URI describing the file from which this annotation set was
196
+ # generated, if any.
197
+ # Corresponds to the JSON property `sourceUri`
198
+ # @return [String]
199
+ attr_accessor :source_uri
200
+
201
+ # The type of annotations contained within this set.
202
+ # Corresponds to the JSON property `type`
203
+ # @return [String]
204
+ attr_accessor :type
205
+
206
+ def initialize(**args)
207
+ update!(**args)
208
+ end
209
+
210
+ # Update properties of this object
211
+ def update!(**args)
212
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
213
+ @id = args[:id] unless args[:id].nil?
214
+ @info = args[:info] unless args[:info].nil?
215
+ @name = args[:name] unless args[:name].nil?
216
+ @reference_set_id = args[:reference_set_id] unless args[:reference_set_id].nil?
217
+ @source_uri = args[:source_uri] unless args[:source_uri].nil?
218
+ @type = args[:type] unless args[:type].nil?
219
+ end
220
+ end
221
+
222
+ #
223
+ class BatchAnnotationsResponse
224
+ include Google::Apis::Core::Hashable
225
+
226
+ # The resulting per-annotation entries, ordered consistently with the original
227
+ # request.
228
+ # Corresponds to the JSON property `entries`
229
+ # @return [Array<Google::Apis::GenomicsV1beta2::BatchAnnotationsResponseEntry>]
230
+ attr_accessor :entries
231
+
232
+ def initialize(**args)
233
+ update!(**args)
234
+ end
235
+
236
+ # Update properties of this object
237
+ def update!(**args)
238
+ @entries = args[:entries] unless args[:entries].nil?
239
+ end
240
+ end
241
+
242
+ #
243
+ class BatchAnnotationsResponseEntry
244
+ include Google::Apis::Core::Hashable
245
+
246
+ # An annotation describes a region of reference genome. The value of an
247
+ # annotation may be one of several canonical types, supplemented by arbitrary
248
+ # info tags. A variant annotation is represented by one or more of these
249
+ # canonical types. An annotation is not inherently associated with a specific
250
+ # sample or individual (though a client could choose to use annotations in this
251
+ # way). Example canonical annotation types are 'Gene' and 'Variant'.
252
+ # Corresponds to the JSON property `annotation`
253
+ # @return [Google::Apis::GenomicsV1beta2::Annotation]
254
+ attr_accessor :annotation
255
+
256
+ #
257
+ # Corresponds to the JSON property `status`
258
+ # @return [Google::Apis::GenomicsV1beta2::BatchAnnotationsResponseEntryStatus]
259
+ attr_accessor :status
260
+
261
+ def initialize(**args)
262
+ update!(**args)
263
+ end
264
+
265
+ # Update properties of this object
266
+ def update!(**args)
267
+ @annotation = args[:annotation] unless args[:annotation].nil?
268
+ @status = args[:status] unless args[:status].nil?
269
+ end
270
+ end
271
+
272
+ #
273
+ class BatchAnnotationsResponseEntryStatus
274
+ include Google::Apis::Core::Hashable
275
+
276
+ # The HTTP status code for this operation.
277
+ # Corresponds to the JSON property `code`
278
+ # @return [Fixnum]
279
+ attr_accessor :code
280
+
281
+ # Error message for this status, if any.
282
+ # Corresponds to the JSON property `message`
283
+ # @return [String]
284
+ attr_accessor :message
285
+
286
+ def initialize(**args)
287
+ update!(**args)
288
+ end
289
+
290
+ # Update properties of this object
291
+ def update!(**args)
292
+ @code = args[:code] unless args[:code].nil?
293
+ @message = args[:message] unless args[:message].nil?
294
+ end
295
+ end
296
+
297
+ #
298
+ class BatchCreateAnnotationsRequest
299
+ include Google::Apis::Core::Hashable
300
+
301
+ # The annotations to be created. At most 4096 can be specified in a single
302
+ # request.
303
+ # Corresponds to the JSON property `annotations`
304
+ # @return [Array<Google::Apis::GenomicsV1beta2::Annotation>]
305
+ attr_accessor :annotations
306
+
307
+ def initialize(**args)
308
+ update!(**args)
309
+ end
310
+
311
+ # Update properties of this object
312
+ def update!(**args)
313
+ @annotations = args[:annotations] unless args[:annotations].nil?
314
+ end
315
+ end
316
+
317
+ # A call represents the determination of genotype with respect to a particular
318
+ # variant. It may include associated information such as quality and phasing.
319
+ # For example, a call might assign a probability of 0.32 to the occurrence of a
320
+ # SNP named rs1234 in a call set with the name NA12345.
321
+ class Call
322
+ include Google::Apis::Core::Hashable
323
+
324
+ # The ID of the call set this variant call belongs to.
325
+ # Corresponds to the JSON property `callSetId`
326
+ # @return [String]
327
+ attr_accessor :call_set_id
328
+
329
+ # The name of the call set this variant call belongs to.
330
+ # Corresponds to the JSON property `callSetName`
331
+ # @return [String]
332
+ attr_accessor :call_set_name
333
+
334
+ # The genotype of this variant call. Each value represents either the value of
335
+ # the referenceBases field or a 1-based index into alternateBases. If a variant
336
+ # had a referenceBases value of T and an alternateBases value of ["A", "C"], and
337
+ # the genotype was [2, 1], that would mean the call represented the heterozygous
338
+ # value CA for this variant. If the genotype was instead [0, 1], the represented
339
+ # value would be TA. Ordering of the genotype values is important if the
340
+ # phaseset is present. If a genotype is not called (that is, a . is present in
341
+ # the GT string) -1 is returned.
342
+ # Corresponds to the JSON property `genotype`
343
+ # @return [Array<Fixnum>]
344
+ attr_accessor :genotype
345
+
346
+ # The genotype likelihoods for this variant call. Each array entry represents
347
+ # how likely a specific genotype is for this call. The value ordering is defined
348
+ # by the GL tag in the VCF spec. If Phred-scaled genotype likelihood scores (PL)
349
+ # are available and log10(P) genotype likelihood scores (GL) are not, PL scores
350
+ # are converted to GL scores. If both are available, PL scores are stored in
351
+ # info.
352
+ # Corresponds to the JSON property `genotypeLikelihood`
353
+ # @return [Array<Float>]
354
+ attr_accessor :genotype_likelihood
355
+
356
+ # A string which maps to an array of values.
357
+ # Corresponds to the JSON property `info`
358
+ # @return [Hash<String,Array<String>>]
359
+ attr_accessor :info
360
+
361
+ # If this field is present, this variant call's genotype ordering implies the
362
+ # phase of the bases and is consistent with any other variant calls in the same
363
+ # reference sequence which have the same phaseset value. When importing data
364
+ # from VCF, if the genotype data was phased but no phase set was specified this
365
+ # field will be set to *.
366
+ # Corresponds to the JSON property `phaseset`
367
+ # @return [String]
368
+ attr_accessor :phaseset
369
+
370
+ def initialize(**args)
371
+ update!(**args)
372
+ end
373
+
374
+ # Update properties of this object
375
+ def update!(**args)
376
+ @call_set_id = args[:call_set_id] unless args[:call_set_id].nil?
377
+ @call_set_name = args[:call_set_name] unless args[:call_set_name].nil?
378
+ @genotype = args[:genotype] unless args[:genotype].nil?
379
+ @genotype_likelihood = args[:genotype_likelihood] unless args[:genotype_likelihood].nil?
380
+ @info = args[:info] unless args[:info].nil?
381
+ @phaseset = args[:phaseset] unless args[:phaseset].nil?
382
+ end
383
+ end
384
+
385
+ # The read group set call request.
386
+ class CallReadGroupSetsRequest
387
+ include Google::Apis::Core::Hashable
388
+
389
+ # Required. The ID of the dataset the called variants will belong to. The caller
390
+ # must have WRITE permissions to this dataset.
391
+ # Corresponds to the JSON property `datasetId`
392
+ # @return [String]
393
+ attr_accessor :dataset_id
394
+
395
+ # The IDs of the read group sets which will be called. The caller must have READ
396
+ # permissions for these read group sets. One of readGroupSetId or sourceUris
397
+ # must be provided.
398
+ # Corresponds to the JSON property `readGroupSetId`
399
+ # @return [String]
400
+ attr_accessor :read_group_set_id
401
+
402
+ # A list of URIs pointing at BAM files in Google Cloud Storage which will be
403
+ # called. FASTQ files are not allowed. The caller must have READ permissions for
404
+ # these files. One of readGroupSetId or sourceUris must be provided.
405
+ # Corresponds to the JSON property `sourceUris`
406
+ # @return [Array<String>]
407
+ attr_accessor :source_uris
408
+
409
+ def initialize(**args)
410
+ update!(**args)
411
+ end
412
+
413
+ # Update properties of this object
414
+ def update!(**args)
415
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
416
+ @read_group_set_id = args[:read_group_set_id] unless args[:read_group_set_id].nil?
417
+ @source_uris = args[:source_uris] unless args[:source_uris].nil?
418
+ end
419
+ end
420
+
421
+ # The read group set call response.
422
+ class CallReadGroupSetsResponse
423
+ include Google::Apis::Core::Hashable
424
+
425
+ # A job ID that can be used to get status information.
426
+ # Corresponds to the JSON property `jobId`
427
+ # @return [String]
428
+ attr_accessor :job_id
429
+
430
+ def initialize(**args)
431
+ update!(**args)
432
+ end
433
+
434
+ # Update properties of this object
435
+ def update!(**args)
436
+ @job_id = args[:job_id] unless args[:job_id].nil?
437
+ end
438
+ end
439
+
440
+ # A call set is a collection of variant calls, typically for one sample. It
441
+ # belongs to a variant set.
442
+ class CallSet
443
+ include Google::Apis::Core::Hashable
444
+
445
+ # The date this call set was created in milliseconds from the epoch.
446
+ # Corresponds to the JSON property `created`
447
+ # @return [String]
448
+ attr_accessor :created
449
+
450
+ # The Google generated ID of the call set, immutable.
451
+ # Corresponds to the JSON property `id`
452
+ # @return [String]
453
+ attr_accessor :id
454
+
455
+ # A string which maps to an array of values.
456
+ # Corresponds to the JSON property `info`
457
+ # @return [Hash<String,Array<String>>]
458
+ attr_accessor :info
459
+
460
+ # The call set name.
461
+ # Corresponds to the JSON property `name`
462
+ # @return [String]
463
+ attr_accessor :name
464
+
465
+ # The sample ID this call set corresponds to.
466
+ # Corresponds to the JSON property `sampleId`
467
+ # @return [String]
468
+ attr_accessor :sample_id
469
+
470
+ # The IDs of the variant sets this call set belongs to.
471
+ # Corresponds to the JSON property `variantSetIds`
472
+ # @return [Array<String>]
473
+ attr_accessor :variant_set_ids
474
+
475
+ def initialize(**args)
476
+ update!(**args)
477
+ end
478
+
479
+ # Update properties of this object
480
+ def update!(**args)
481
+ @created = args[:created] unless args[:created].nil?
482
+ @id = args[:id] unless args[:id].nil?
483
+ @info = args[:info] unless args[:info].nil?
484
+ @name = args[:name] unless args[:name].nil?
485
+ @sample_id = args[:sample_id] unless args[:sample_id].nil?
486
+ @variant_set_ids = args[:variant_set_ids] unless args[:variant_set_ids].nil?
487
+ end
488
+ end
489
+
490
+ # A single CIGAR operation.
491
+ class CigarUnit
492
+ include Google::Apis::Core::Hashable
493
+
494
+ #
495
+ # Corresponds to the JSON property `operation`
496
+ # @return [String]
497
+ attr_accessor :operation
498
+
499
+ # The number of bases that the operation runs for. Required.
500
+ # Corresponds to the JSON property `operationLength`
501
+ # @return [String]
502
+ attr_accessor :operation_length
503
+
504
+ # referenceSequence is only used at mismatches (SEQUENCE_MISMATCH) and deletions
505
+ # (DELETE). Filling this field replaces SAM's MD tag. If the relevant
506
+ # information is not available, this field is unset.
507
+ # Corresponds to the JSON property `referenceSequence`
508
+ # @return [String]
509
+ attr_accessor :reference_sequence
510
+
511
+ def initialize(**args)
512
+ update!(**args)
513
+ end
514
+
515
+ # Update properties of this object
516
+ def update!(**args)
517
+ @operation = args[:operation] unless args[:operation].nil?
518
+ @operation_length = args[:operation_length] unless args[:operation_length].nil?
519
+ @reference_sequence = args[:reference_sequence] unless args[:reference_sequence].nil?
520
+ end
521
+ end
522
+
523
+ # A bucket over which read coverage has been precomputed. A bucket corresponds
524
+ # to a specific range of the reference sequence.
525
+ class CoverageBucket
526
+ include Google::Apis::Core::Hashable
527
+
528
+ # The average number of reads which are aligned to each individual reference
529
+ # base in this bucket.
530
+ # Corresponds to the JSON property `meanCoverage`
531
+ # @return [Float]
532
+ attr_accessor :mean_coverage
533
+
534
+ # A 0-based half-open genomic coordinate range over a reference sequence.
535
+ # Corresponds to the JSON property `range`
536
+ # @return [Google::Apis::GenomicsV1beta2::Range]
537
+ attr_accessor :range
538
+
539
+ def initialize(**args)
540
+ update!(**args)
541
+ end
542
+
543
+ # Update properties of this object
544
+ def update!(**args)
545
+ @mean_coverage = args[:mean_coverage] unless args[:mean_coverage].nil?
546
+ @range = args[:range] unless args[:range].nil?
547
+ end
548
+ end
549
+
550
+ # A Dataset is a collection of genomic data.
551
+ class Dataset
552
+ include Google::Apis::Core::Hashable
553
+
554
+ # The time this dataset was created, in seconds from the epoch.
555
+ # Corresponds to the JSON property `createTime`
556
+ # @return [String]
557
+ attr_accessor :create_time
558
+
559
+ # The Google generated ID of the dataset, immutable.
560
+ # Corresponds to the JSON property `id`
561
+ # @return [String]
562
+ attr_accessor :id
563
+
564
+ # Flag indicating whether or not a dataset is publicly viewable. If a dataset is
565
+ # not public, it inherits viewing permissions from its project.
566
+ # Corresponds to the JSON property `isPublic`
567
+ # @return [Boolean]
568
+ attr_accessor :is_public
569
+ alias_method :is_public?, :is_public
570
+
571
+ # The dataset name.
572
+ # Corresponds to the JSON property `name`
573
+ # @return [String]
574
+ attr_accessor :name
575
+
576
+ # The Google Developers Console project number that this dataset belongs to.
577
+ # Corresponds to the JSON property `projectNumber`
578
+ # @return [String]
579
+ attr_accessor :project_number
580
+
581
+ def initialize(**args)
582
+ update!(**args)
583
+ end
584
+
585
+ # Update properties of this object
586
+ def update!(**args)
587
+ @create_time = args[:create_time] unless args[:create_time].nil?
588
+ @id = args[:id] unless args[:id].nil?
589
+ @is_public = args[:is_public] unless args[:is_public].nil?
590
+ @name = args[:name] unless args[:name].nil?
591
+ @project_number = args[:project_number] unless args[:project_number].nil?
592
+ end
593
+ end
594
+
595
+ # The job creation request.
596
+ class ExperimentalCreateJobRequest
597
+ include Google::Apis::Core::Hashable
598
+
599
+ # Specifies whether or not to run the alignment pipeline. Either align or
600
+ # callVariants must be set.
601
+ # Corresponds to the JSON property `align`
602
+ # @return [Boolean]
603
+ attr_accessor :align
604
+ alias_method :align?, :align
605
+
606
+ # Specifies whether or not to run the variant calling pipeline. Either align or
607
+ # callVariants must be set.
608
+ # Corresponds to the JSON property `callVariants`
609
+ # @return [Boolean]
610
+ attr_accessor :call_variants
611
+ alias_method :call_variants?, :call_variants
612
+
613
+ # Specifies where to copy the results of certain pipelines. This should be in
614
+ # the form of gs://bucket/path.
615
+ # Corresponds to the JSON property `gcsOutputPath`
616
+ # @return [String]
617
+ attr_accessor :gcs_output_path
618
+
619
+ # A list of Google Cloud Storage URIs of paired end .fastq files to operate upon.
620
+ # If specified, this represents the second file of each paired .fastq file. The
621
+ # first file of each pair should be specified in sourceUris.
622
+ # Corresponds to the JSON property `pairedSourceUris`
623
+ # @return [Array<String>]
624
+ attr_accessor :paired_source_uris
625
+
626
+ # Required. The Google Cloud Project ID with which to associate the request.
627
+ # Corresponds to the JSON property `projectNumber`
628
+ # @return [String]
629
+ attr_accessor :project_number
630
+
631
+ # A list of Google Cloud Storage URIs of data files to operate upon. These can
632
+ # be .bam, interleaved .fastq, or paired .fastq. If specifying paired .fastq
633
+ # files, the first of each pair of files should be listed here, and the second
634
+ # of each pair should be listed in pairedSourceUris.
635
+ # Corresponds to the JSON property `sourceUris`
636
+ # @return [Array<String>]
637
+ attr_accessor :source_uris
638
+
639
+ def initialize(**args)
640
+ update!(**args)
641
+ end
642
+
643
+ # Update properties of this object
644
+ def update!(**args)
645
+ @align = args[:align] unless args[:align].nil?
646
+ @call_variants = args[:call_variants] unless args[:call_variants].nil?
647
+ @gcs_output_path = args[:gcs_output_path] unless args[:gcs_output_path].nil?
648
+ @paired_source_uris = args[:paired_source_uris] unless args[:paired_source_uris].nil?
649
+ @project_number = args[:project_number] unless args[:project_number].nil?
650
+ @source_uris = args[:source_uris] unless args[:source_uris].nil?
651
+ end
652
+ end
653
+
654
+ # The job creation response.
655
+ class ExperimentalCreateJobResponse
656
+ include Google::Apis::Core::Hashable
657
+
658
+ # A job ID that can be used to get status information.
659
+ # Corresponds to the JSON property `jobId`
660
+ # @return [String]
661
+ attr_accessor :job_id
662
+
663
+ def initialize(**args)
664
+ update!(**args)
665
+ end
666
+
667
+ # Update properties of this object
668
+ def update!(**args)
669
+ @job_id = args[:job_id] unless args[:job_id].nil?
670
+ end
671
+ end
672
+
673
+ # The read group set export request.
674
+ class ExportReadGroupSetsRequest
675
+ include Google::Apis::Core::Hashable
676
+
677
+ # Required. A Google Cloud Storage URI for the exported BAM file. The currently
678
+ # authenticated user must have write access to the new file. An error will be
679
+ # returned if the URI already contains data.
680
+ # Corresponds to the JSON property `exportUri`
681
+ # @return [String]
682
+ attr_accessor :export_uri
683
+
684
+ # Required. The Google Developers Console project number that owns this export.
685
+ # Corresponds to the JSON property `projectNumber`
686
+ # @return [String]
687
+ attr_accessor :project_number
688
+
689
+ # Required. The IDs of the read group sets to export.
690
+ # Corresponds to the JSON property `readGroupSetIds`
691
+ # @return [Array<String>]
692
+ attr_accessor :read_group_set_ids
693
+
694
+ # The reference names to export. If this is not specified, all reference
695
+ # sequences, including unmapped reads, are exported. Use * to export only
696
+ # unmapped reads.
697
+ # Corresponds to the JSON property `referenceNames`
698
+ # @return [Array<String>]
699
+ attr_accessor :reference_names
700
+
701
+ def initialize(**args)
702
+ update!(**args)
703
+ end
704
+
705
+ # Update properties of this object
706
+ def update!(**args)
707
+ @export_uri = args[:export_uri] unless args[:export_uri].nil?
708
+ @project_number = args[:project_number] unless args[:project_number].nil?
709
+ @read_group_set_ids = args[:read_group_set_ids] unless args[:read_group_set_ids].nil?
710
+ @reference_names = args[:reference_names] unless args[:reference_names].nil?
711
+ end
712
+ end
713
+
714
+ # The read group set export response.
715
+ class ExportReadGroupSetsResponse
716
+ include Google::Apis::Core::Hashable
717
+
718
+ # A job ID that can be used to get status information.
719
+ # Corresponds to the JSON property `jobId`
720
+ # @return [String]
721
+ attr_accessor :job_id
722
+
723
+ def initialize(**args)
724
+ update!(**args)
725
+ end
726
+
727
+ # Update properties of this object
728
+ def update!(**args)
729
+ @job_id = args[:job_id] unless args[:job_id].nil?
730
+ end
731
+ end
732
+
733
+ # The variant data export request.
734
+ class ExportVariantSetRequest
735
+ include Google::Apis::Core::Hashable
736
+
737
+ # Required. The BigQuery dataset to export data to. This dataset must already
738
+ # exist. Note that this is distinct from the Genomics concept of "dataset".
739
+ # Corresponds to the JSON property `bigqueryDataset`
740
+ # @return [String]
741
+ attr_accessor :bigquery_dataset
742
+
743
+ # Required. The BigQuery table to export data to. If the table doesn't exist, it
744
+ # will be created. If it already exists, it will be overwritten.
745
+ # Corresponds to the JSON property `bigqueryTable`
746
+ # @return [String]
747
+ attr_accessor :bigquery_table
748
+
749
+ # If provided, only variant call information from the specified call sets will
750
+ # be exported. By default all variant calls are exported.
751
+ # Corresponds to the JSON property `callSetIds`
752
+ # @return [Array<String>]
753
+ attr_accessor :call_set_ids
754
+
755
+ # The format for the exported data.
756
+ # Corresponds to the JSON property `format`
757
+ # @return [String]
758
+ attr_accessor :format
759
+
760
+ # Required. The Google Cloud project number that owns the destination BigQuery
761
+ # dataset. The caller must have WRITE access to this project. This project will
762
+ # also own the resulting export job.
763
+ # Corresponds to the JSON property `projectNumber`
764
+ # @return [String]
765
+ attr_accessor :project_number
766
+
767
+ def initialize(**args)
768
+ update!(**args)
769
+ end
770
+
771
+ # Update properties of this object
772
+ def update!(**args)
773
+ @bigquery_dataset = args[:bigquery_dataset] unless args[:bigquery_dataset].nil?
774
+ @bigquery_table = args[:bigquery_table] unless args[:bigquery_table].nil?
775
+ @call_set_ids = args[:call_set_ids] unless args[:call_set_ids].nil?
776
+ @format = args[:format] unless args[:format].nil?
777
+ @project_number = args[:project_number] unless args[:project_number].nil?
778
+ end
779
+ end
780
+
781
+ # The variant data export response.
782
+ class ExportVariantSetResponse
783
+ include Google::Apis::Core::Hashable
784
+
785
+ # A job ID that can be used to get status information.
786
+ # Corresponds to the JSON property `jobId`
787
+ # @return [String]
788
+ attr_accessor :job_id
789
+
790
+ def initialize(**args)
791
+ update!(**args)
792
+ end
793
+
794
+ # Update properties of this object
795
+ def update!(**args)
796
+ @job_id = args[:job_id] unless args[:job_id].nil?
797
+ end
798
+ end
799
+
800
+ #
801
+ class ExternalId
802
+ include Google::Apis::Core::Hashable
803
+
804
+ # The id used by the source of this data.
805
+ # Corresponds to the JSON property `id`
806
+ # @return [String]
807
+ attr_accessor :id
808
+
809
+ # The name of the source of this data.
810
+ # Corresponds to the JSON property `sourceName`
811
+ # @return [String]
812
+ attr_accessor :source_name
813
+
814
+ def initialize(**args)
815
+ update!(**args)
816
+ end
817
+
818
+ # Update properties of this object
819
+ def update!(**args)
820
+ @id = args[:id] unless args[:id].nil?
821
+ @source_name = args[:source_name] unless args[:source_name].nil?
822
+ end
823
+ end
824
+
825
+ #
826
+ class FastqMetadata
827
+ include Google::Apis::Core::Hashable
828
+
829
+ # Optionally specifies the library name for alignment from FASTQ.
830
+ # Corresponds to the JSON property `libraryName`
831
+ # @return [String]
832
+ attr_accessor :library_name
833
+
834
+ # Optionally specifies the platform name for alignment from FASTQ. For example:
835
+ # CAPILLARY, LS454, ILLUMINA, SOLID, HELICOS, IONTORRENT, PACBIO.
836
+ # Corresponds to the JSON property `platformName`
837
+ # @return [String]
838
+ attr_accessor :platform_name
839
+
840
+ # Optionally specifies the platform unit for alignment from FASTQ. For example:
841
+ # flowcell-barcode.lane for Illumina or slide for SOLID.
842
+ # Corresponds to the JSON property `platformUnit`
843
+ # @return [String]
844
+ attr_accessor :platform_unit
845
+
846
+ # Optionally specifies the read group name for alignment from FASTQ.
847
+ # Corresponds to the JSON property `readGroupName`
848
+ # @return [String]
849
+ attr_accessor :read_group_name
850
+
851
+ # Optionally specifies the sample name for alignment from FASTQ.
852
+ # Corresponds to the JSON property `sampleName`
853
+ # @return [String]
854
+ attr_accessor :sample_name
855
+
856
+ def initialize(**args)
857
+ update!(**args)
858
+ end
859
+
860
+ # Update properties of this object
861
+ def update!(**args)
862
+ @library_name = args[:library_name] unless args[:library_name].nil?
863
+ @platform_name = args[:platform_name] unless args[:platform_name].nil?
864
+ @platform_unit = args[:platform_unit] unless args[:platform_unit].nil?
865
+ @read_group_name = args[:read_group_name] unless args[:read_group_name].nil?
866
+ @sample_name = args[:sample_name] unless args[:sample_name].nil?
867
+ end
868
+ end
869
+
870
+ # The read group set import request.
871
+ class ImportReadGroupSetsRequest
872
+ include Google::Apis::Core::Hashable
873
+
874
+ # Required. The ID of the dataset these read group sets will belong to. The
875
+ # caller must have WRITE permissions to this dataset.
876
+ # Corresponds to the JSON property `datasetId`
877
+ # @return [String]
878
+ attr_accessor :dataset_id
879
+
880
+ # The partition strategy describes how read groups are partitioned into read
881
+ # group sets.
882
+ # Corresponds to the JSON property `partitionStrategy`
883
+ # @return [String]
884
+ attr_accessor :partition_strategy
885
+
886
+ # The reference set to which the imported read group sets are aligned to, if any.
887
+ # The reference names of this reference set must be a superset of those found
888
+ # in the imported file headers. If no reference set id is provided, a best
889
+ # effort is made to associate with a matching reference set.
890
+ # Corresponds to the JSON property `referenceSetId`
891
+ # @return [String]
892
+ attr_accessor :reference_set_id
893
+
894
+ # A list of URIs pointing at BAM files in Google Cloud Storage.
895
+ # Corresponds to the JSON property `sourceUris`
896
+ # @return [Array<String>]
897
+ attr_accessor :source_uris
898
+
899
+ def initialize(**args)
900
+ update!(**args)
901
+ end
902
+
903
+ # Update properties of this object
904
+ def update!(**args)
905
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
906
+ @partition_strategy = args[:partition_strategy] unless args[:partition_strategy].nil?
907
+ @reference_set_id = args[:reference_set_id] unless args[:reference_set_id].nil?
908
+ @source_uris = args[:source_uris] unless args[:source_uris].nil?
909
+ end
910
+ end
911
+
912
+ # The read group set import response.
913
+ class ImportReadGroupSetsResponse
914
+ include Google::Apis::Core::Hashable
915
+
916
+ # A job ID that can be used to get status information.
917
+ # Corresponds to the JSON property `jobId`
918
+ # @return [String]
919
+ attr_accessor :job_id
920
+
921
+ def initialize(**args)
922
+ update!(**args)
923
+ end
924
+
925
+ # Update properties of this object
926
+ def update!(**args)
927
+ @job_id = args[:job_id] unless args[:job_id].nil?
928
+ end
929
+ end
930
+
931
+ # The variant data import request.
932
+ class ImportVariantsRequest
933
+ include Google::Apis::Core::Hashable
934
+
935
+ # The format of the variant data being imported. If unspecified, defaults to to "
936
+ # VCF".
937
+ # Corresponds to the JSON property `format`
938
+ # @return [String]
939
+ attr_accessor :format
940
+
941
+ # Convert reference names to the canonical representation. hg19 haploytypes (
942
+ # those reference names containing "_hap") are not modified in any way. All
943
+ # other reference names are modified according to the following rules: The
944
+ # reference name is capitalized. The "chr" prefix is dropped for all autosomes
945
+ # and sex chromsomes. For example "chr17" becomes "17" and "chrX" becomes "X".
946
+ # All mitochondrial chromosomes ("chrM", "chrMT", etc) become "MT".
947
+ # Corresponds to the JSON property `normalizeReferenceNames`
948
+ # @return [Boolean]
949
+ attr_accessor :normalize_reference_names
950
+ alias_method :normalize_reference_names?, :normalize_reference_names
951
+
952
+ # A list of URIs referencing variant files in Google Cloud Storage. URIs can
953
+ # include wildcards as described here. Note that recursive wildcards ('**') are
954
+ # not supported.
955
+ # Corresponds to the JSON property `sourceUris`
956
+ # @return [Array<String>]
957
+ attr_accessor :source_uris
958
+
959
+ def initialize(**args)
960
+ update!(**args)
961
+ end
962
+
963
+ # Update properties of this object
964
+ def update!(**args)
965
+ @format = args[:format] unless args[:format].nil?
966
+ @normalize_reference_names = args[:normalize_reference_names] unless args[:normalize_reference_names].nil?
967
+ @source_uris = args[:source_uris] unless args[:source_uris].nil?
968
+ end
969
+ end
970
+
971
+ # The variant data import response.
972
+ class ImportVariantsResponse
973
+ include Google::Apis::Core::Hashable
974
+
975
+ # A job ID that can be used to get status information.
976
+ # Corresponds to the JSON property `jobId`
977
+ # @return [String]
978
+ attr_accessor :job_id
979
+
980
+ def initialize(**args)
981
+ update!(**args)
982
+ end
983
+
984
+ # Update properties of this object
985
+ def update!(**args)
986
+ @job_id = args[:job_id] unless args[:job_id].nil?
987
+ end
988
+ end
989
+
990
+ # Wrapper message for `int32`.
991
+ # The JSON representation for `Int32Value` is JSON number.
992
+ class Int32Value
993
+ include Google::Apis::Core::Hashable
994
+
995
+ # The int32 value.
996
+ # Corresponds to the JSON property `value`
997
+ # @return [Fixnum]
998
+ attr_accessor :value
999
+
1000
+ def initialize(**args)
1001
+ update!(**args)
1002
+ end
1003
+
1004
+ # Update properties of this object
1005
+ def update!(**args)
1006
+ @value = args[:value] unless args[:value].nil?
1007
+ end
1008
+ end
1009
+
1010
+ # Describes an interleaved FASTQ file source for alignment.
1011
+ class InterleavedFastqSource
1012
+ include Google::Apis::Core::Hashable
1013
+
1014
+ # Optionally specifies the metadata to be associated with the final aligned read
1015
+ # group set.
1016
+ # Corresponds to the JSON property `metadata`
1017
+ # @return [Google::Apis::GenomicsV1beta2::FastqMetadata]
1018
+ attr_accessor :metadata
1019
+
1020
+ # A list of URIs pointing at interleaved FASTQ files in Google Cloud Storage
1021
+ # which will be aligned. The caller must have READ permissions for these files.
1022
+ # Corresponds to the JSON property `sourceUris`
1023
+ # @return [Array<String>]
1024
+ attr_accessor :source_uris
1025
+
1026
+ def initialize(**args)
1027
+ update!(**args)
1028
+ end
1029
+
1030
+ # Update properties of this object
1031
+ def update!(**args)
1032
+ @metadata = args[:metadata] unless args[:metadata].nil?
1033
+ @source_uris = args[:source_uris] unless args[:source_uris].nil?
1034
+ end
1035
+ end
1036
+
1037
+ # A Job represents an ongoing process that can be monitored for status
1038
+ # information.
1039
+ class Job
1040
+ include Google::Apis::Core::Hashable
1041
+
1042
+ # The date this job was created, in milliseconds from the epoch.
1043
+ # Corresponds to the JSON property `created`
1044
+ # @return [String]
1045
+ attr_accessor :created
1046
+
1047
+ # A more detailed description of this job's current status.
1048
+ # Corresponds to the JSON property `detailedStatus`
1049
+ # @return [String]
1050
+ attr_accessor :detailed_status
1051
+
1052
+ # Any errors that occurred during processing.
1053
+ # Corresponds to the JSON property `errors`
1054
+ # @return [Array<String>]
1055
+ attr_accessor :errors
1056
+
1057
+ # The job ID.
1058
+ # Corresponds to the JSON property `id`
1059
+ # @return [String]
1060
+ attr_accessor :id
1061
+
1062
+ # If this Job represents an import, this field will contain the IDs of the
1063
+ # objects that were successfully imported.
1064
+ # Corresponds to the JSON property `importedIds`
1065
+ # @return [Array<String>]
1066
+ attr_accessor :imported_ids
1067
+
1068
+ # The Google Developers Console project number to which this job belongs.
1069
+ # Corresponds to the JSON property `projectNumber`
1070
+ # @return [String]
1071
+ attr_accessor :project_number
1072
+
1073
+ # A summary representation of the service request that spawned the job.
1074
+ # Corresponds to the JSON property `request`
1075
+ # @return [Google::Apis::GenomicsV1beta2::JobRequest]
1076
+ attr_accessor :request
1077
+
1078
+ # The status of this job.
1079
+ # Corresponds to the JSON property `status`
1080
+ # @return [String]
1081
+ attr_accessor :status
1082
+
1083
+ # Any warnings that occurred during processing.
1084
+ # Corresponds to the JSON property `warnings`
1085
+ # @return [Array<String>]
1086
+ attr_accessor :warnings
1087
+
1088
+ def initialize(**args)
1089
+ update!(**args)
1090
+ end
1091
+
1092
+ # Update properties of this object
1093
+ def update!(**args)
1094
+ @created = args[:created] unless args[:created].nil?
1095
+ @detailed_status = args[:detailed_status] unless args[:detailed_status].nil?
1096
+ @errors = args[:errors] unless args[:errors].nil?
1097
+ @id = args[:id] unless args[:id].nil?
1098
+ @imported_ids = args[:imported_ids] unless args[:imported_ids].nil?
1099
+ @project_number = args[:project_number] unless args[:project_number].nil?
1100
+ @request = args[:request] unless args[:request].nil?
1101
+ @status = args[:status] unless args[:status].nil?
1102
+ @warnings = args[:warnings] unless args[:warnings].nil?
1103
+ end
1104
+ end
1105
+
1106
+ # A summary representation of the service request that spawned the job.
1107
+ class JobRequest
1108
+ include Google::Apis::Core::Hashable
1109
+
1110
+ # The data destination of the request, for example, a Google BigQuery Table or
1111
+ # Dataset ID.
1112
+ # Corresponds to the JSON property `destination`
1113
+ # @return [Array<String>]
1114
+ attr_accessor :destination
1115
+
1116
+ # The data source of the request, for example, a Google Cloud Storage object
1117
+ # path or Readset ID.
1118
+ # Corresponds to the JSON property `source`
1119
+ # @return [Array<String>]
1120
+ attr_accessor :source
1121
+
1122
+ # The original request type.
1123
+ # Corresponds to the JSON property `type`
1124
+ # @return [String]
1125
+ attr_accessor :type
1126
+
1127
+ def initialize(**args)
1128
+ update!(**args)
1129
+ end
1130
+
1131
+ # Update properties of this object
1132
+ def update!(**args)
1133
+ @destination = args[:destination] unless args[:destination].nil?
1134
+ @source = args[:source] unless args[:source].nil?
1135
+ @type = args[:type] unless args[:type].nil?
1136
+ end
1137
+ end
1138
+
1139
+ # Used to hold basic key value information.
1140
+ class KeyValue
1141
+ include Google::Apis::Core::Hashable
1142
+
1143
+ # A string which maps to an array of values.
1144
+ # Corresponds to the JSON property `key`
1145
+ # @return [String]
1146
+ attr_accessor :key
1147
+
1148
+ # The string values.
1149
+ # Corresponds to the JSON property `value`
1150
+ # @return [Array<String>]
1151
+ attr_accessor :value
1152
+
1153
+ def initialize(**args)
1154
+ update!(**args)
1155
+ end
1156
+
1157
+ # Update properties of this object
1158
+ def update!(**args)
1159
+ @key = args[:key] unless args[:key].nil?
1160
+ @value = args[:value] unless args[:value].nil?
1161
+ end
1162
+ end
1163
+
1164
+ # A linear alignment can be represented by one CIGAR string. Describes the
1165
+ # mapped position and local alignment of the read to the reference.
1166
+ class LinearAlignment
1167
+ include Google::Apis::Core::Hashable
1168
+
1169
+ # Represents the local alignment of this sequence (alignment matches, indels,
1170
+ # etc) against the reference.
1171
+ # Corresponds to the JSON property `cigar`
1172
+ # @return [Array<Google::Apis::GenomicsV1beta2::CigarUnit>]
1173
+ attr_accessor :cigar
1174
+
1175
+ # The mapping quality of this alignment. Represents how likely the read maps to
1176
+ # this position as opposed to other locations.
1177
+ # Corresponds to the JSON property `mappingQuality`
1178
+ # @return [Fixnum]
1179
+ attr_accessor :mapping_quality
1180
+
1181
+ # An abstraction for referring to a genomic position, in relation to some
1182
+ # already known reference. For now, represents a genomic position as a reference
1183
+ # name, a base number on that reference (0-based), and a determination of
1184
+ # forward or reverse strand.
1185
+ # Corresponds to the JSON property `position`
1186
+ # @return [Google::Apis::GenomicsV1beta2::Position]
1187
+ attr_accessor :position
1188
+
1189
+ def initialize(**args)
1190
+ update!(**args)
1191
+ end
1192
+
1193
+ # Update properties of this object
1194
+ def update!(**args)
1195
+ @cigar = args[:cigar] unless args[:cigar].nil?
1196
+ @mapping_quality = args[:mapping_quality] unless args[:mapping_quality].nil?
1197
+ @position = args[:position] unless args[:position].nil?
1198
+ end
1199
+ end
1200
+
1201
+ #
1202
+ class ListBasesResponse
1203
+ include Google::Apis::Core::Hashable
1204
+
1205
+ # The continuation token, which is used to page through large result sets.
1206
+ # Provide this value in a subsequent request to return the next page of results.
1207
+ # This field will be empty if there aren't any additional results.
1208
+ # Corresponds to the JSON property `nextPageToken`
1209
+ # @return [String]
1210
+ attr_accessor :next_page_token
1211
+
1212
+ # The offset position (0-based) of the given sequence from the start of this
1213
+ # Reference. This value will differ for each page in a paginated request.
1214
+ # Corresponds to the JSON property `offset`
1215
+ # @return [String]
1216
+ attr_accessor :offset
1217
+
1218
+ # A substring of the bases that make up this reference.
1219
+ # Corresponds to the JSON property `sequence`
1220
+ # @return [String]
1221
+ attr_accessor :sequence
1222
+
1223
+ def initialize(**args)
1224
+ update!(**args)
1225
+ end
1226
+
1227
+ # Update properties of this object
1228
+ def update!(**args)
1229
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1230
+ @offset = args[:offset] unless args[:offset].nil?
1231
+ @sequence = args[:sequence] unless args[:sequence].nil?
1232
+ end
1233
+ end
1234
+
1235
+ #
1236
+ class ListCoverageBucketsResponse
1237
+ include Google::Apis::Core::Hashable
1238
+
1239
+ # The length of each coverage bucket in base pairs. Note that buckets at the end
1240
+ # of a reference sequence may be shorter. This value is omitted if the bucket
1241
+ # width is infinity (the default behaviour, with no range or targetBucketWidth).
1242
+ # Corresponds to the JSON property `bucketWidth`
1243
+ # @return [String]
1244
+ attr_accessor :bucket_width
1245
+
1246
+ # The coverage buckets. The list of buckets is sparse; a bucket with 0
1247
+ # overlapping reads is not returned. A bucket never crosses more than one
1248
+ # reference sequence. Each bucket has width bucketWidth, unless its end is the
1249
+ # end of the reference sequence.
1250
+ # Corresponds to the JSON property `coverageBuckets`
1251
+ # @return [Array<Google::Apis::GenomicsV1beta2::CoverageBucket>]
1252
+ attr_accessor :coverage_buckets
1253
+
1254
+ # The continuation token, which is used to page through large result sets.
1255
+ # Provide this value in a subsequent request to return the next page of results.
1256
+ # This field will be empty if there aren't any additional results.
1257
+ # Corresponds to the JSON property `nextPageToken`
1258
+ # @return [String]
1259
+ attr_accessor :next_page_token
1260
+
1261
+ def initialize(**args)
1262
+ update!(**args)
1263
+ end
1264
+
1265
+ # Update properties of this object
1266
+ def update!(**args)
1267
+ @bucket_width = args[:bucket_width] unless args[:bucket_width].nil?
1268
+ @coverage_buckets = args[:coverage_buckets] unless args[:coverage_buckets].nil?
1269
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1270
+ end
1271
+ end
1272
+
1273
+ # The dataset list response.
1274
+ class ListDatasetsResponse
1275
+ include Google::Apis::Core::Hashable
1276
+
1277
+ # The list of matching Datasets.
1278
+ # Corresponds to the JSON property `datasets`
1279
+ # @return [Array<Google::Apis::GenomicsV1beta2::Dataset>]
1280
+ attr_accessor :datasets
1281
+
1282
+ # The continuation token, which is used to page through large result sets.
1283
+ # Provide this value in a subsequent request to return the next page of results.
1284
+ # This field will be empty if there aren't any additional results.
1285
+ # Corresponds to the JSON property `nextPageToken`
1286
+ # @return [String]
1287
+ attr_accessor :next_page_token
1288
+
1289
+ def initialize(**args)
1290
+ update!(**args)
1291
+ end
1292
+
1293
+ # Update properties of this object
1294
+ def update!(**args)
1295
+ @datasets = args[:datasets] unless args[:datasets].nil?
1296
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1297
+ end
1298
+ end
1299
+
1300
+ #
1301
+ class MergeVariantsRequest
1302
+ include Google::Apis::Core::Hashable
1303
+
1304
+ # The variants to be merged with existing variants.
1305
+ # Corresponds to the JSON property `variants`
1306
+ # @return [Array<Google::Apis::GenomicsV1beta2::Variant>]
1307
+ attr_accessor :variants
1308
+
1309
+ def initialize(**args)
1310
+ update!(**args)
1311
+ end
1312
+
1313
+ # Update properties of this object
1314
+ def update!(**args)
1315
+ @variants = args[:variants] unless args[:variants].nil?
1316
+ end
1317
+ end
1318
+
1319
+ # Metadata describes a single piece of variant call metadata. These data include
1320
+ # a top level key and either a single value string (value) or a list of key-
1321
+ # value pairs (info.) Value and info are mutually exclusive.
1322
+ class Metadata
1323
+ include Google::Apis::Core::Hashable
1324
+
1325
+ # A textual description of this metadata.
1326
+ # Corresponds to the JSON property `description`
1327
+ # @return [String]
1328
+ attr_accessor :description
1329
+
1330
+ # User-provided ID field, not enforced by this API. Two or more pieces of
1331
+ # structured metadata with identical id and key fields are considered equivalent.
1332
+ # Corresponds to the JSON property `id`
1333
+ # @return [String]
1334
+ attr_accessor :id
1335
+
1336
+ # A string which maps to an array of values.
1337
+ # Corresponds to the JSON property `info`
1338
+ # @return [Hash<String,Array<String>>]
1339
+ attr_accessor :info
1340
+
1341
+ # The top-level key.
1342
+ # Corresponds to the JSON property `key`
1343
+ # @return [String]
1344
+ attr_accessor :key
1345
+
1346
+ # The number of values that can be included in a field described by this
1347
+ # metadata.
1348
+ # Corresponds to the JSON property `number`
1349
+ # @return [String]
1350
+ attr_accessor :number
1351
+
1352
+ # The type of data. Possible types include: Integer, Float, Flag, Character, and
1353
+ # String.
1354
+ # Corresponds to the JSON property `type`
1355
+ # @return [String]
1356
+ attr_accessor :type
1357
+
1358
+ # The value field for simple metadata
1359
+ # Corresponds to the JSON property `value`
1360
+ # @return [String]
1361
+ attr_accessor :value
1362
+
1363
+ def initialize(**args)
1364
+ update!(**args)
1365
+ end
1366
+
1367
+ # Update properties of this object
1368
+ def update!(**args)
1369
+ @description = args[:description] unless args[:description].nil?
1370
+ @id = args[:id] unless args[:id].nil?
1371
+ @info = args[:info] unless args[:info].nil?
1372
+ @key = args[:key] unless args[:key].nil?
1373
+ @number = args[:number] unless args[:number].nil?
1374
+ @type = args[:type] unless args[:type].nil?
1375
+ @value = args[:value] unless args[:value].nil?
1376
+ end
1377
+ end
1378
+
1379
+ # Describes a paired-end FASTQ file source for alignment.
1380
+ class PairedFastqSource
1381
+ include Google::Apis::Core::Hashable
1382
+
1383
+ # A list of URIs pointing at paired end FASTQ files in Google Cloud Storage
1384
+ # which will be aligned. The first of each paired file should be specified here,
1385
+ # in an order that matches the second of each paired file specified in
1386
+ # secondSourceUris. For example: firstSourceUris: [file1_1.fq, file2_1.fq],
1387
+ # secondSourceUris: [file1_2.fq, file2_2.fq]. The caller must have READ
1388
+ # permissions for these files.
1389
+ # Corresponds to the JSON property `firstSourceUris`
1390
+ # @return [Array<String>]
1391
+ attr_accessor :first_source_uris
1392
+
1393
+ # Optionally specifies the metadata to be associated with the final aligned read
1394
+ # group set.
1395
+ # Corresponds to the JSON property `metadata`
1396
+ # @return [Google::Apis::GenomicsV1beta2::FastqMetadata]
1397
+ attr_accessor :metadata
1398
+
1399
+ # A list of URIs pointing at paired end FASTQ files in Google Cloud Storage
1400
+ # which will be aligned. The second of each paired file should be specified here,
1401
+ # in an order that matches the first of each paired file specified in
1402
+ # firstSourceUris. For example: firstSourceUris: [file1_1.fq, file2_1.fq],
1403
+ # secondSourceUris: [file1_2.fq, file2_2.fq]. The caller must have READ
1404
+ # permissions for these files.
1405
+ # Corresponds to the JSON property `secondSourceUris`
1406
+ # @return [Array<String>]
1407
+ attr_accessor :second_source_uris
1408
+
1409
+ def initialize(**args)
1410
+ update!(**args)
1411
+ end
1412
+
1413
+ # Update properties of this object
1414
+ def update!(**args)
1415
+ @first_source_uris = args[:first_source_uris] unless args[:first_source_uris].nil?
1416
+ @metadata = args[:metadata] unless args[:metadata].nil?
1417
+ @second_source_uris = args[:second_source_uris] unless args[:second_source_uris].nil?
1418
+ end
1419
+ end
1420
+
1421
+ # An abstraction for referring to a genomic position, in relation to some
1422
+ # already known reference. For now, represents a genomic position as a reference
1423
+ # name, a base number on that reference (0-based), and a determination of
1424
+ # forward or reverse strand.
1425
+ class Position
1426
+ include Google::Apis::Core::Hashable
1427
+
1428
+ # The 0-based offset from the start of the forward strand for that reference.
1429
+ # Corresponds to the JSON property `position`
1430
+ # @return [String]
1431
+ attr_accessor :position
1432
+
1433
+ # The name of the reference in whatever reference set is being used.
1434
+ # Corresponds to the JSON property `referenceName`
1435
+ # @return [String]
1436
+ attr_accessor :reference_name
1437
+
1438
+ # Whether this position is on the reverse strand, as opposed to the forward
1439
+ # strand.
1440
+ # Corresponds to the JSON property `reverseStrand`
1441
+ # @return [Boolean]
1442
+ attr_accessor :reverse_strand
1443
+ alias_method :reverse_strand?, :reverse_strand
1444
+
1445
+ def initialize(**args)
1446
+ update!(**args)
1447
+ end
1448
+
1449
+ # Update properties of this object
1450
+ def update!(**args)
1451
+ @position = args[:position] unless args[:position].nil?
1452
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
1453
+ @reverse_strand = args[:reverse_strand] unless args[:reverse_strand].nil?
1454
+ end
1455
+ end
1456
+
1457
+ # A 0-based half-open genomic coordinate range for search requests.
1458
+ class QueryRange
1459
+ include Google::Apis::Core::Hashable
1460
+
1461
+ # The end position of the range on the reference, 0-based exclusive. If
1462
+ # specified, referenceId or referenceName must also be specified. If unset or 0,
1463
+ # defaults to the length of the reference.
1464
+ # Corresponds to the JSON property `end`
1465
+ # @return [String]
1466
+ attr_accessor :end
1467
+
1468
+ # The ID of the reference to query. At most one of referenceId and referenceName
1469
+ # should be specified.
1470
+ # Corresponds to the JSON property `referenceId`
1471
+ # @return [String]
1472
+ attr_accessor :reference_id
1473
+
1474
+ # The name of the reference to query, within the reference set associated with
1475
+ # this query. At most one of referenceId and referenceName pshould be specified.
1476
+ # Corresponds to the JSON property `referenceName`
1477
+ # @return [String]
1478
+ attr_accessor :reference_name
1479
+
1480
+ # The start position of the range on the reference, 0-based inclusive. If
1481
+ # specified, referenceId or referenceName must also be specified. Defaults to 0.
1482
+ # Corresponds to the JSON property `start`
1483
+ # @return [String]
1484
+ attr_accessor :start
1485
+
1486
+ def initialize(**args)
1487
+ update!(**args)
1488
+ end
1489
+
1490
+ # Update properties of this object
1491
+ def update!(**args)
1492
+ @end = args[:end] unless args[:end].nil?
1493
+ @reference_id = args[:reference_id] unless args[:reference_id].nil?
1494
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
1495
+ @start = args[:start] unless args[:start].nil?
1496
+ end
1497
+ end
1498
+
1499
+ # A 0-based half-open genomic coordinate range over a reference sequence.
1500
+ class Range
1501
+ include Google::Apis::Core::Hashable
1502
+
1503
+ # The end position of the range on the reference, 0-based exclusive. If
1504
+ # specified, referenceName must also be specified.
1505
+ # Corresponds to the JSON property `end`
1506
+ # @return [String]
1507
+ attr_accessor :end
1508
+
1509
+ # The reference sequence name, for example chr1, 1, or chrX.
1510
+ # Corresponds to the JSON property `referenceName`
1511
+ # @return [String]
1512
+ attr_accessor :reference_name
1513
+
1514
+ # The start position of the range on the reference, 0-based inclusive. If
1515
+ # specified, referenceName must also be specified.
1516
+ # Corresponds to the JSON property `start`
1517
+ # @return [String]
1518
+ attr_accessor :start
1519
+
1520
+ def initialize(**args)
1521
+ update!(**args)
1522
+ end
1523
+
1524
+ # Update properties of this object
1525
+ def update!(**args)
1526
+ @end = args[:end] unless args[:end].nil?
1527
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
1528
+ @start = args[:start] unless args[:start].nil?
1529
+ end
1530
+ end
1531
+
1532
+ # A 0-based half-open genomic coordinate range over a reference sequence, for
1533
+ # representing the position of a genomic resource.
1534
+ class RangePosition
1535
+ include Google::Apis::Core::Hashable
1536
+
1537
+ # The end position of the range on the reference, 0-based exclusive.
1538
+ # Corresponds to the JSON property `end`
1539
+ # @return [String]
1540
+ attr_accessor :end
1541
+
1542
+ # The ID of the Google Genomics reference associated with this range.
1543
+ # Corresponds to the JSON property `referenceId`
1544
+ # @return [String]
1545
+ attr_accessor :reference_id
1546
+
1547
+ # The display name corresponding to the reference specified by referenceId, for
1548
+ # example chr1, 1, or chrX.
1549
+ # Corresponds to the JSON property `referenceName`
1550
+ # @return [String]
1551
+ attr_accessor :reference_name
1552
+
1553
+ # Whether this range refers to the reverse strand, as opposed to the forward
1554
+ # strand. Note that regardless of this field, the start/end position of the
1555
+ # range always refer to the forward strand.
1556
+ # Corresponds to the JSON property `reverseStrand`
1557
+ # @return [Boolean]
1558
+ attr_accessor :reverse_strand
1559
+ alias_method :reverse_strand?, :reverse_strand
1560
+
1561
+ # The start position of the range on the reference, 0-based inclusive.
1562
+ # Corresponds to the JSON property `start`
1563
+ # @return [String]
1564
+ attr_accessor :start
1565
+
1566
+ def initialize(**args)
1567
+ update!(**args)
1568
+ end
1569
+
1570
+ # Update properties of this object
1571
+ def update!(**args)
1572
+ @end = args[:end] unless args[:end].nil?
1573
+ @reference_id = args[:reference_id] unless args[:reference_id].nil?
1574
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
1575
+ @reverse_strand = args[:reverse_strand] unless args[:reverse_strand].nil?
1576
+ @start = args[:start] unless args[:start].nil?
1577
+ end
1578
+ end
1579
+
1580
+ # A read alignment describes a linear alignment of a string of DNA to a
1581
+ # reference sequence, in addition to metadata about the fragment (the molecule
1582
+ # of DNA sequenced) and the read (the bases which were read by the sequencer). A
1583
+ # read is equivalent to a line in a SAM file. A read belongs to exactly one read
1584
+ # group and exactly one read group set. Generating a reference-aligned sequence
1585
+ # string When interacting with mapped reads, it's often useful to produce a
1586
+ # string representing the local alignment of the read to reference. The
1587
+ # following pseudocode demonstrates one way of doing this:
1588
+ # out = "" offset = 0 for c in read.alignment.cigar ` switch c.operation ` case "
1589
+ # ALIGNMENT_MATCH", "SEQUENCE_MATCH", "SEQUENCE_MISMATCH": out += read.
1590
+ # alignedSequence[offset:offset+c.operationLength] offset += c.operationLength
1591
+ # break case "CLIP_SOFT", "INSERT": offset += c.operationLength break case "PAD":
1592
+ # out += repeat("*", c.operationLength) break case "DELETE": out += repeat("-",
1593
+ # c.operationLength) break case "SKIP": out += repeat(" ", c.operationLength)
1594
+ # break case "CLIP_HARD": break ` ` return out
1595
+ # Converting to SAM's CIGAR string The following pseudocode generates a SAM
1596
+ # CIGAR string from the cigar field. Note that this is a lossy conversion (cigar.
1597
+ # referenceSequence is lost).
1598
+ # cigarMap = ` "ALIGNMENT_MATCH": "M", "INSERT": "I", "DELETE": "D", "SKIP": "N",
1599
+ # "CLIP_SOFT": "S", "CLIP_HARD": "H", "PAD": "P", "SEQUENCE_MATCH": "=", "
1600
+ # SEQUENCE_MISMATCH": "X", ` cigarStr = "" for c in read.alignment.cigar `
1601
+ # cigarStr += c.operationLength + cigarMap[c.operation] ` return cigarStr
1602
+ class Read
1603
+ include Google::Apis::Core::Hashable
1604
+
1605
+ # The quality of the read sequence contained in this alignment record.
1606
+ # alignedSequence and alignedQuality may be shorter than the full read sequence
1607
+ # and quality. This will occur if the alignment is part of a chimeric alignment,
1608
+ # or if the read was trimmed. When this occurs, the CIGAR for this read will
1609
+ # begin/end with a hard clip operator that will indicate the length of the
1610
+ # excised sequence.
1611
+ # Corresponds to the JSON property `alignedQuality`
1612
+ # @return [Array<Fixnum>]
1613
+ attr_accessor :aligned_quality
1614
+
1615
+ # The bases of the read sequence contained in this alignment record, without
1616
+ # CIGAR operations applied. alignedSequence and alignedQuality may be shorter
1617
+ # than the full read sequence and quality. This will occur if the alignment is
1618
+ # part of a chimeric alignment, or if the read was trimmed. When this occurs,
1619
+ # the CIGAR for this read will begin/end with a hard clip operator that will
1620
+ # indicate the length of the excised sequence.
1621
+ # Corresponds to the JSON property `alignedSequence`
1622
+ # @return [String]
1623
+ attr_accessor :aligned_sequence
1624
+
1625
+ # A linear alignment can be represented by one CIGAR string. Describes the
1626
+ # mapped position and local alignment of the read to the reference.
1627
+ # Corresponds to the JSON property `alignment`
1628
+ # @return [Google::Apis::GenomicsV1beta2::LinearAlignment]
1629
+ attr_accessor :alignment
1630
+
1631
+ # The fragment is a PCR or optical duplicate (SAM flag 0x400)
1632
+ # Corresponds to the JSON property `duplicateFragment`
1633
+ # @return [Boolean]
1634
+ attr_accessor :duplicate_fragment
1635
+ alias_method :duplicate_fragment?, :duplicate_fragment
1636
+
1637
+ # SAM flag 0x200
1638
+ # Corresponds to the JSON property `failedVendorQualityChecks`
1639
+ # @return [Boolean]
1640
+ attr_accessor :failed_vendor_quality_checks
1641
+ alias_method :failed_vendor_quality_checks?, :failed_vendor_quality_checks
1642
+
1643
+ # The observed length of the fragment, equivalent to TLEN in SAM.
1644
+ # Corresponds to the JSON property `fragmentLength`
1645
+ # @return [Fixnum]
1646
+ attr_accessor :fragment_length
1647
+
1648
+ # The fragment name. Equivalent to QNAME (query template name) in SAM.
1649
+ # Corresponds to the JSON property `fragmentName`
1650
+ # @return [String]
1651
+ attr_accessor :fragment_name
1652
+
1653
+ # The unique ID for this read. This is a generated unique ID, not to be confused
1654
+ # with fragmentName.
1655
+ # Corresponds to the JSON property `id`
1656
+ # @return [String]
1657
+ attr_accessor :id
1658
+
1659
+ # A string which maps to an array of values.
1660
+ # Corresponds to the JSON property `info`
1661
+ # @return [Hash<String,Array<String>>]
1662
+ attr_accessor :info
1663
+
1664
+ # An abstraction for referring to a genomic position, in relation to some
1665
+ # already known reference. For now, represents a genomic position as a reference
1666
+ # name, a base number on that reference (0-based), and a determination of
1667
+ # forward or reverse strand.
1668
+ # Corresponds to the JSON property `nextMatePosition`
1669
+ # @return [Google::Apis::GenomicsV1beta2::Position]
1670
+ attr_accessor :next_mate_position
1671
+
1672
+ # The number of reads in the fragment (extension to SAM flag 0x1).
1673
+ # Corresponds to the JSON property `numberReads`
1674
+ # @return [Fixnum]
1675
+ attr_accessor :number_reads
1676
+
1677
+ # The orientation and the distance between reads from the fragment are
1678
+ # consistent with the sequencing protocol (SAM flag 0x2)
1679
+ # Corresponds to the JSON property `properPlacement`
1680
+ # @return [Boolean]
1681
+ attr_accessor :proper_placement
1682
+ alias_method :proper_placement?, :proper_placement
1683
+
1684
+ # The ID of the read group this read belongs to. (Every read must belong to
1685
+ # exactly one read group.)
1686
+ # Corresponds to the JSON property `readGroupId`
1687
+ # @return [String]
1688
+ attr_accessor :read_group_id
1689
+
1690
+ # The ID of the read group set this read belongs to. (Every read must belong to
1691
+ # exactly one read group set.)
1692
+ # Corresponds to the JSON property `readGroupSetId`
1693
+ # @return [String]
1694
+ attr_accessor :read_group_set_id
1695
+
1696
+ # The read number in sequencing. 0-based and less than numberReads. This field
1697
+ # replaces SAM flag 0x40 and 0x80.
1698
+ # Corresponds to the JSON property `readNumber`
1699
+ # @return [Fixnum]
1700
+ attr_accessor :read_number
1701
+
1702
+ # Whether this alignment is secondary. Equivalent to SAM flag 0x100. A secondary
1703
+ # alignment represents an alternative to the primary alignment for this read.
1704
+ # Aligners may return secondary alignments if a read can map ambiguously to
1705
+ # multiple coordinates in the genome. By convention, each read has one and only
1706
+ # one alignment where both secondaryAlignment and supplementaryAlignment are
1707
+ # false.
1708
+ # Corresponds to the JSON property `secondaryAlignment`
1709
+ # @return [Boolean]
1710
+ attr_accessor :secondary_alignment
1711
+ alias_method :secondary_alignment?, :secondary_alignment
1712
+
1713
+ # Whether this alignment is supplementary. Equivalent to SAM flag 0x800.
1714
+ # Supplementary alignments are used in the representation of a chimeric
1715
+ # alignment. In a chimeric alignment, a read is split into multiple linear
1716
+ # alignments that map to different reference contigs. The first linear alignment
1717
+ # in the read will be designated as the representative alignment; the remaining
1718
+ # linear alignments will be designated as supplementary alignments. These
1719
+ # alignments may have different mapping quality scores. In each linear alignment
1720
+ # in a chimeric alignment, the read will be hard clipped. The alignedSequence
1721
+ # and alignedQuality fields in the alignment record will only represent the
1722
+ # bases for its respective linear alignment.
1723
+ # Corresponds to the JSON property `supplementaryAlignment`
1724
+ # @return [Boolean]
1725
+ attr_accessor :supplementary_alignment
1726
+ alias_method :supplementary_alignment?, :supplementary_alignment
1727
+
1728
+ def initialize(**args)
1729
+ update!(**args)
1730
+ end
1731
+
1732
+ # Update properties of this object
1733
+ def update!(**args)
1734
+ @aligned_quality = args[:aligned_quality] unless args[:aligned_quality].nil?
1735
+ @aligned_sequence = args[:aligned_sequence] unless args[:aligned_sequence].nil?
1736
+ @alignment = args[:alignment] unless args[:alignment].nil?
1737
+ @duplicate_fragment = args[:duplicate_fragment] unless args[:duplicate_fragment].nil?
1738
+ @failed_vendor_quality_checks = args[:failed_vendor_quality_checks] unless args[:failed_vendor_quality_checks].nil?
1739
+ @fragment_length = args[:fragment_length] unless args[:fragment_length].nil?
1740
+ @fragment_name = args[:fragment_name] unless args[:fragment_name].nil?
1741
+ @id = args[:id] unless args[:id].nil?
1742
+ @info = args[:info] unless args[:info].nil?
1743
+ @next_mate_position = args[:next_mate_position] unless args[:next_mate_position].nil?
1744
+ @number_reads = args[:number_reads] unless args[:number_reads].nil?
1745
+ @proper_placement = args[:proper_placement] unless args[:proper_placement].nil?
1746
+ @read_group_id = args[:read_group_id] unless args[:read_group_id].nil?
1747
+ @read_group_set_id = args[:read_group_set_id] unless args[:read_group_set_id].nil?
1748
+ @read_number = args[:read_number] unless args[:read_number].nil?
1749
+ @secondary_alignment = args[:secondary_alignment] unless args[:secondary_alignment].nil?
1750
+ @supplementary_alignment = args[:supplementary_alignment] unless args[:supplementary_alignment].nil?
1751
+ end
1752
+ end
1753
+
1754
+ # A read group is all the data that's processed the same way by the sequencer.
1755
+ class ReadGroup
1756
+ include Google::Apis::Core::Hashable
1757
+
1758
+ # The ID of the dataset this read group belongs to.
1759
+ # Corresponds to the JSON property `datasetId`
1760
+ # @return [String]
1761
+ attr_accessor :dataset_id
1762
+
1763
+ # A free-form text description of this read group.
1764
+ # Corresponds to the JSON property `description`
1765
+ # @return [String]
1766
+ attr_accessor :description
1767
+
1768
+ # The experiment used to generate this read group.
1769
+ # Corresponds to the JSON property `experiment`
1770
+ # @return [Google::Apis::GenomicsV1beta2::ReadGroupExperiment]
1771
+ attr_accessor :experiment
1772
+
1773
+ # The generated unique read group ID. Note: This is different than the @RG ID
1774
+ # field in the SAM spec. For that value, see the name field.
1775
+ # Corresponds to the JSON property `id`
1776
+ # @return [String]
1777
+ attr_accessor :id
1778
+
1779
+ # A string which maps to an array of values.
1780
+ # Corresponds to the JSON property `info`
1781
+ # @return [Hash<String,Array<String>>]
1782
+ attr_accessor :info
1783
+
1784
+ # The read group name. This corresponds to the @RG ID field in the SAM spec.
1785
+ # Corresponds to the JSON property `name`
1786
+ # @return [String]
1787
+ attr_accessor :name
1788
+
1789
+ # The predicted insert size of this read group. The insert size is the length
1790
+ # the sequenced DNA fragment from end-to-end, not including the adapters.
1791
+ # Corresponds to the JSON property `predictedInsertSize`
1792
+ # @return [Fixnum]
1793
+ attr_accessor :predicted_insert_size
1794
+
1795
+ # The programs used to generate this read group. Programs are always identical
1796
+ # for all read groups within a read group set. For this reason, only the first
1797
+ # read group in a returned set will have this field populated.
1798
+ # Corresponds to the JSON property `programs`
1799
+ # @return [Array<Google::Apis::GenomicsV1beta2::ReadGroupProgram>]
1800
+ attr_accessor :programs
1801
+
1802
+ # The reference set the reads in this read group are aligned to. Required if
1803
+ # there are any read alignments.
1804
+ # Corresponds to the JSON property `referenceSetId`
1805
+ # @return [String]
1806
+ attr_accessor :reference_set_id
1807
+
1808
+ # The sample this read group's data was generated from. Note: This is not an
1809
+ # actual ID within this repository, but rather an identifier for a sample which
1810
+ # may be meaningful to some external system.
1811
+ # Corresponds to the JSON property `sampleId`
1812
+ # @return [String]
1813
+ attr_accessor :sample_id
1814
+
1815
+ def initialize(**args)
1816
+ update!(**args)
1817
+ end
1818
+
1819
+ # Update properties of this object
1820
+ def update!(**args)
1821
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
1822
+ @description = args[:description] unless args[:description].nil?
1823
+ @experiment = args[:experiment] unless args[:experiment].nil?
1824
+ @id = args[:id] unless args[:id].nil?
1825
+ @info = args[:info] unless args[:info].nil?
1826
+ @name = args[:name] unless args[:name].nil?
1827
+ @predicted_insert_size = args[:predicted_insert_size] unless args[:predicted_insert_size].nil?
1828
+ @programs = args[:programs] unless args[:programs].nil?
1829
+ @reference_set_id = args[:reference_set_id] unless args[:reference_set_id].nil?
1830
+ @sample_id = args[:sample_id] unless args[:sample_id].nil?
1831
+ end
1832
+ end
1833
+
1834
+ #
1835
+ class ReadGroupExperiment
1836
+ include Google::Apis::Core::Hashable
1837
+
1838
+ # The instrument model used as part of this experiment. This maps to sequencing
1839
+ # technology in BAM.
1840
+ # Corresponds to the JSON property `instrumentModel`
1841
+ # @return [String]
1842
+ attr_accessor :instrument_model
1843
+
1844
+ # The library used as part of this experiment. Note: This is not an actual ID
1845
+ # within this repository, but rather an identifier for a library which may be
1846
+ # meaningful to some external system.
1847
+ # Corresponds to the JSON property `libraryId`
1848
+ # @return [String]
1849
+ attr_accessor :library_id
1850
+
1851
+ # The platform unit used as part of this experiment e.g. flowcell-barcode.lane
1852
+ # for Illumina or slide for SOLiD. Corresponds to the
1853
+ # Corresponds to the JSON property `platformUnit`
1854
+ # @return [String]
1855
+ attr_accessor :platform_unit
1856
+
1857
+ # The sequencing center used as part of this experiment.
1858
+ # Corresponds to the JSON property `sequencingCenter`
1859
+ # @return [String]
1860
+ attr_accessor :sequencing_center
1861
+
1862
+ def initialize(**args)
1863
+ update!(**args)
1864
+ end
1865
+
1866
+ # Update properties of this object
1867
+ def update!(**args)
1868
+ @instrument_model = args[:instrument_model] unless args[:instrument_model].nil?
1869
+ @library_id = args[:library_id] unless args[:library_id].nil?
1870
+ @platform_unit = args[:platform_unit] unless args[:platform_unit].nil?
1871
+ @sequencing_center = args[:sequencing_center] unless args[:sequencing_center].nil?
1872
+ end
1873
+ end
1874
+
1875
+ #
1876
+ class ReadGroupProgram
1877
+ include Google::Apis::Core::Hashable
1878
+
1879
+ # The command line used to run this program.
1880
+ # Corresponds to the JSON property `commandLine`
1881
+ # @return [String]
1882
+ attr_accessor :command_line
1883
+
1884
+ # The user specified locally unique ID of the program. Used along with
1885
+ # prevProgramId to define an ordering between programs.
1886
+ # Corresponds to the JSON property `id`
1887
+ # @return [String]
1888
+ attr_accessor :id
1889
+
1890
+ # The name of the program.
1891
+ # Corresponds to the JSON property `name`
1892
+ # @return [String]
1893
+ attr_accessor :name
1894
+
1895
+ # The ID of the program run before this one.
1896
+ # Corresponds to the JSON property `prevProgramId`
1897
+ # @return [String]
1898
+ attr_accessor :prev_program_id
1899
+
1900
+ # The version of the program run.
1901
+ # Corresponds to the JSON property `version`
1902
+ # @return [String]
1903
+ attr_accessor :version
1904
+
1905
+ def initialize(**args)
1906
+ update!(**args)
1907
+ end
1908
+
1909
+ # Update properties of this object
1910
+ def update!(**args)
1911
+ @command_line = args[:command_line] unless args[:command_line].nil?
1912
+ @id = args[:id] unless args[:id].nil?
1913
+ @name = args[:name] unless args[:name].nil?
1914
+ @prev_program_id = args[:prev_program_id] unless args[:prev_program_id].nil?
1915
+ @version = args[:version] unless args[:version].nil?
1916
+ end
1917
+ end
1918
+
1919
+ # A read group set is a logical collection of read groups, which are collections
1920
+ # of reads produced by a sequencer. A read group set typically models reads
1921
+ # corresponding to one sample, sequenced one way, and aligned one way.
1922
+ # - A read group set belongs to one dataset.
1923
+ # - A read group belongs to one read group set.
1924
+ # - A read belongs to one read group.
1925
+ class ReadGroupSet
1926
+ include Google::Apis::Core::Hashable
1927
+
1928
+ # The dataset ID.
1929
+ # Corresponds to the JSON property `datasetId`
1930
+ # @return [String]
1931
+ attr_accessor :dataset_id
1932
+
1933
+ # The filename of the original source file for this read group set, if any.
1934
+ # Corresponds to the JSON property `filename`
1935
+ # @return [String]
1936
+ attr_accessor :filename
1937
+
1938
+ # The read group set ID.
1939
+ # Corresponds to the JSON property `id`
1940
+ # @return [String]
1941
+ attr_accessor :id
1942
+
1943
+ # A string which maps to an array of values.
1944
+ # Corresponds to the JSON property `info`
1945
+ # @return [Hash<String,Array<String>>]
1946
+ attr_accessor :info
1947
+
1948
+ # The read group set name. By default this will be initialized to the sample
1949
+ # name of the sequenced data contained in this set.
1950
+ # Corresponds to the JSON property `name`
1951
+ # @return [String]
1952
+ attr_accessor :name
1953
+
1954
+ # The read groups in this set. There are typically 1-10 read groups in a read
1955
+ # group set.
1956
+ # Corresponds to the JSON property `readGroups`
1957
+ # @return [Array<Google::Apis::GenomicsV1beta2::ReadGroup>]
1958
+ attr_accessor :read_groups
1959
+
1960
+ # The reference set the reads in this read group set are aligned to.
1961
+ # Corresponds to the JSON property `referenceSetId`
1962
+ # @return [String]
1963
+ attr_accessor :reference_set_id
1964
+
1965
+ def initialize(**args)
1966
+ update!(**args)
1967
+ end
1968
+
1969
+ # Update properties of this object
1970
+ def update!(**args)
1971
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
1972
+ @filename = args[:filename] unless args[:filename].nil?
1973
+ @id = args[:id] unless args[:id].nil?
1974
+ @info = args[:info] unless args[:info].nil?
1975
+ @name = args[:name] unless args[:name].nil?
1976
+ @read_groups = args[:read_groups] unless args[:read_groups].nil?
1977
+ @reference_set_id = args[:reference_set_id] unless args[:reference_set_id].nil?
1978
+ end
1979
+ end
1980
+
1981
+ # A reference is a canonical assembled DNA sequence, intended to act as a
1982
+ # reference coordinate space for other genomic annotations. A single reference
1983
+ # might represent the human chromosome 1 or mitochandrial DNA, for instance. A
1984
+ # reference belongs to one or more reference sets.
1985
+ class Reference
1986
+ include Google::Apis::Core::Hashable
1987
+
1988
+ # The Google generated immutable ID of the reference.
1989
+ # Corresponds to the JSON property `id`
1990
+ # @return [String]
1991
+ attr_accessor :id
1992
+
1993
+ # The length of this reference's sequence.
1994
+ # Corresponds to the JSON property `length`
1995
+ # @return [String]
1996
+ attr_accessor :length
1997
+
1998
+ # MD5 of the upper-case sequence excluding all whitespace characters (this is
1999
+ # equivalent to SQ:M5 in SAM). This value is represented in lower case
2000
+ # hexadecimal format.
2001
+ # Corresponds to the JSON property `md5checksum`
2002
+ # @return [String]
2003
+ attr_accessor :md5checksum
2004
+
2005
+ # The name of this reference, for example 22.
2006
+ # Corresponds to the JSON property `name`
2007
+ # @return [String]
2008
+ attr_accessor :name
2009
+
2010
+ # ID from http://www.ncbi.nlm.nih.gov/taxonomy (e.g. 9606->human) if not
2011
+ # specified by the containing reference set.
2012
+ # Corresponds to the JSON property `ncbiTaxonId`
2013
+ # @return [Fixnum]
2014
+ attr_accessor :ncbi_taxon_id
2015
+
2016
+ # All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally with
2017
+ # a version number, for example GCF_000001405.26.
2018
+ # Corresponds to the JSON property `sourceAccessions`
2019
+ # @return [Array<String>]
2020
+ attr_accessor :source_accessions
2021
+
2022
+ # The URI from which the sequence was obtained. Specifies a FASTA format file/
2023
+ # string with one name, sequence pair.
2024
+ # Corresponds to the JSON property `sourceURI`
2025
+ # @return [String]
2026
+ attr_accessor :source_uri
2027
+
2028
+ def initialize(**args)
2029
+ update!(**args)
2030
+ end
2031
+
2032
+ # Update properties of this object
2033
+ def update!(**args)
2034
+ @id = args[:id] unless args[:id].nil?
2035
+ @length = args[:length] unless args[:length].nil?
2036
+ @md5checksum = args[:md5checksum] unless args[:md5checksum].nil?
2037
+ @name = args[:name] unless args[:name].nil?
2038
+ @ncbi_taxon_id = args[:ncbi_taxon_id] unless args[:ncbi_taxon_id].nil?
2039
+ @source_accessions = args[:source_accessions] unless args[:source_accessions].nil?
2040
+ @source_uri = args[:source_uri] unless args[:source_uri].nil?
2041
+ end
2042
+ end
2043
+
2044
+ # ReferenceBound records an upper bound for the starting coordinate of variants
2045
+ # in a particular reference.
2046
+ class ReferenceBound
2047
+ include Google::Apis::Core::Hashable
2048
+
2049
+ # The reference the bound is associate with.
2050
+ # Corresponds to the JSON property `referenceName`
2051
+ # @return [String]
2052
+ attr_accessor :reference_name
2053
+
2054
+ # An upper bound (inclusive) on the starting coordinate of any variant in the
2055
+ # reference sequence.
2056
+ # Corresponds to the JSON property `upperBound`
2057
+ # @return [String]
2058
+ attr_accessor :upper_bound
2059
+
2060
+ def initialize(**args)
2061
+ update!(**args)
2062
+ end
2063
+
2064
+ # Update properties of this object
2065
+ def update!(**args)
2066
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
2067
+ @upper_bound = args[:upper_bound] unless args[:upper_bound].nil?
2068
+ end
2069
+ end
2070
+
2071
+ # A reference set is a set of references which typically comprise a reference
2072
+ # assembly for a species, such as GRCh38 which is representative of the human
2073
+ # genome. A reference set defines a common coordinate space for comparing
2074
+ # reference-aligned experimental data. A reference set contains 1 or more
2075
+ # references.
2076
+ class ReferenceSet
2077
+ include Google::Apis::Core::Hashable
2078
+
2079
+ # Public id of this reference set, such as GRCh37.
2080
+ # Corresponds to the JSON property `assemblyId`
2081
+ # @return [String]
2082
+ attr_accessor :assembly_id
2083
+
2084
+ # Free text description of this reference set.
2085
+ # Corresponds to the JSON property `description`
2086
+ # @return [String]
2087
+ attr_accessor :description
2088
+
2089
+ # The Google generated immutable ID of the reference set.
2090
+ # Corresponds to the JSON property `id`
2091
+ # @return [String]
2092
+ attr_accessor :id
2093
+
2094
+ # Order-independent MD5 checksum which identifies this reference set. The
2095
+ # checksum is computed by sorting all lower case hexidecimal string reference.
2096
+ # md5checksum (for all reference in this set) in ascending lexicographic order,
2097
+ # concatenating, and taking the MD5 of that value. The resulting value is
2098
+ # represented in lower case hexadecimal format.
2099
+ # Corresponds to the JSON property `md5checksum`
2100
+ # @return [String]
2101
+ attr_accessor :md5checksum
2102
+
2103
+ # ID from http://www.ncbi.nlm.nih.gov/taxonomy (e.g. 9606->human) indicating the
2104
+ # species which this assembly is intended to model. Note that contained
2105
+ # references may specify a different ncbiTaxonId, as assemblies may contain
2106
+ # reference sequences which do not belong to the modeled species, e.g. EBV in a
2107
+ # human reference genome.
2108
+ # Corresponds to the JSON property `ncbiTaxonId`
2109
+ # @return [Fixnum]
2110
+ attr_accessor :ncbi_taxon_id
2111
+
2112
+ # The IDs of the reference objects that are part of this set. Reference.
2113
+ # md5checksum must be unique within this set.
2114
+ # Corresponds to the JSON property `referenceIds`
2115
+ # @return [Array<String>]
2116
+ attr_accessor :reference_ids
2117
+
2118
+ # All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally with
2119
+ # a version number, for example NC_000001.11.
2120
+ # Corresponds to the JSON property `sourceAccessions`
2121
+ # @return [Array<String>]
2122
+ attr_accessor :source_accessions
2123
+
2124
+ # The URI from which the references were obtained.
2125
+ # Corresponds to the JSON property `sourceURI`
2126
+ # @return [String]
2127
+ attr_accessor :source_uri
2128
+
2129
+ def initialize(**args)
2130
+ update!(**args)
2131
+ end
2132
+
2133
+ # Update properties of this object
2134
+ def update!(**args)
2135
+ @assembly_id = args[:assembly_id] unless args[:assembly_id].nil?
2136
+ @description = args[:description] unless args[:description].nil?
2137
+ @id = args[:id] unless args[:id].nil?
2138
+ @md5checksum = args[:md5checksum] unless args[:md5checksum].nil?
2139
+ @ncbi_taxon_id = args[:ncbi_taxon_id] unless args[:ncbi_taxon_id].nil?
2140
+ @reference_ids = args[:reference_ids] unless args[:reference_ids].nil?
2141
+ @source_accessions = args[:source_accessions] unless args[:source_accessions].nil?
2142
+ @source_uri = args[:source_uri] unless args[:source_uri].nil?
2143
+ end
2144
+ end
2145
+
2146
+ #
2147
+ class SearchAnnotationSetsRequest
2148
+ include Google::Apis::Core::Hashable
2149
+
2150
+ # The dataset IDs to search within. Caller must have READ access to these
2151
+ # datasets.
2152
+ # Corresponds to the JSON property `datasetIds`
2153
+ # @return [Array<String>]
2154
+ attr_accessor :dataset_ids
2155
+
2156
+ # Only return annotations sets for which a substring of the name matches this
2157
+ # string (case insensitive).
2158
+ # Corresponds to the JSON property `name`
2159
+ # @return [String]
2160
+ attr_accessor :name
2161
+
2162
+ # Specifies number of results to return in a single page. If unspecified, it
2163
+ # will default to 128. The maximum value is 1024.
2164
+ # Corresponds to the JSON property `pageSize`
2165
+ # @return [Fixnum]
2166
+ attr_accessor :page_size
2167
+
2168
+ # The continuation token, which is used to page through large result sets. To
2169
+ # get the next page of results, set this parameter to the value of nextPageToken
2170
+ # from the previous response.
2171
+ # Corresponds to the JSON property `pageToken`
2172
+ # @return [String]
2173
+ attr_accessor :page_token
2174
+
2175
+ # If specified, only annotation sets associated with the given reference set are
2176
+ # returned.
2177
+ # Corresponds to the JSON property `referenceSetId`
2178
+ # @return [String]
2179
+ attr_accessor :reference_set_id
2180
+
2181
+ # If specified, only annotation sets that have any of these types are returned.
2182
+ # Corresponds to the JSON property `types`
2183
+ # @return [Array<String>]
2184
+ attr_accessor :types
2185
+
2186
+ def initialize(**args)
2187
+ update!(**args)
2188
+ end
2189
+
2190
+ # Update properties of this object
2191
+ def update!(**args)
2192
+ @dataset_ids = args[:dataset_ids] unless args[:dataset_ids].nil?
2193
+ @name = args[:name] unless args[:name].nil?
2194
+ @page_size = args[:page_size] unless args[:page_size].nil?
2195
+ @page_token = args[:page_token] unless args[:page_token].nil?
2196
+ @reference_set_id = args[:reference_set_id] unless args[:reference_set_id].nil?
2197
+ @types = args[:types] unless args[:types].nil?
2198
+ end
2199
+ end
2200
+
2201
+ #
2202
+ class SearchAnnotationSetsResponse
2203
+ include Google::Apis::Core::Hashable
2204
+
2205
+ # The matching annotation sets.
2206
+ # Corresponds to the JSON property `annotationSets`
2207
+ # @return [Array<Google::Apis::GenomicsV1beta2::AnnotationSet>]
2208
+ attr_accessor :annotation_sets
2209
+
2210
+ # The continuation token, which is used to page through large result sets.
2211
+ # Provide this value in a subsequent request to return the next page of results.
2212
+ # This field will be empty if there aren't any additional results.
2213
+ # Corresponds to the JSON property `nextPageToken`
2214
+ # @return [String]
2215
+ attr_accessor :next_page_token
2216
+
2217
+ def initialize(**args)
2218
+ update!(**args)
2219
+ end
2220
+
2221
+ # Update properties of this object
2222
+ def update!(**args)
2223
+ @annotation_sets = args[:annotation_sets] unless args[:annotation_sets].nil?
2224
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2225
+ end
2226
+ end
2227
+
2228
+ #
2229
+ class SearchAnnotationsRequest
2230
+ include Google::Apis::Core::Hashable
2231
+
2232
+ # The annotation sets to search within. The caller must have READ access to
2233
+ # these annotation sets. Required. All queried annotation sets must have the
2234
+ # same type.
2235
+ # Corresponds to the JSON property `annotationSetIds`
2236
+ # @return [Array<String>]
2237
+ attr_accessor :annotation_set_ids
2238
+
2239
+ # Specifies number of results to return in a single page. If unspecified, it
2240
+ # will default to 256. The maximum value is 2048.
2241
+ # Corresponds to the JSON property `pageSize`
2242
+ # @return [Fixnum]
2243
+ attr_accessor :page_size
2244
+
2245
+ # The continuation token, which is used to page through large result sets. To
2246
+ # get the next page of results, set this parameter to the value of nextPageToken
2247
+ # from the previous response.
2248
+ # Corresponds to the JSON property `pageToken`
2249
+ # @return [String]
2250
+ attr_accessor :page_token
2251
+
2252
+ # A 0-based half-open genomic coordinate range for search requests.
2253
+ # Corresponds to the JSON property `range`
2254
+ # @return [Google::Apis::GenomicsV1beta2::QueryRange]
2255
+ attr_accessor :range
2256
+
2257
+ def initialize(**args)
2258
+ update!(**args)
2259
+ end
2260
+
2261
+ # Update properties of this object
2262
+ def update!(**args)
2263
+ @annotation_set_ids = args[:annotation_set_ids] unless args[:annotation_set_ids].nil?
2264
+ @page_size = args[:page_size] unless args[:page_size].nil?
2265
+ @page_token = args[:page_token] unless args[:page_token].nil?
2266
+ @range = args[:range] unless args[:range].nil?
2267
+ end
2268
+ end
2269
+
2270
+ #
2271
+ class SearchAnnotationsResponse
2272
+ include Google::Apis::Core::Hashable
2273
+
2274
+ # The matching annotations.
2275
+ # Corresponds to the JSON property `annotations`
2276
+ # @return [Array<Google::Apis::GenomicsV1beta2::Annotation>]
2277
+ attr_accessor :annotations
2278
+
2279
+ # The continuation token, which is used to page through large result sets.
2280
+ # Provide this value in a subsequent request to return the next page of results.
2281
+ # This field will be empty if there aren't any additional results.
2282
+ # Corresponds to the JSON property `nextPageToken`
2283
+ # @return [String]
2284
+ attr_accessor :next_page_token
2285
+
2286
+ def initialize(**args)
2287
+ update!(**args)
2288
+ end
2289
+
2290
+ # Update properties of this object
2291
+ def update!(**args)
2292
+ @annotations = args[:annotations] unless args[:annotations].nil?
2293
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2294
+ end
2295
+ end
2296
+
2297
+ # The call set search request.
2298
+ class SearchCallSetsRequest
2299
+ include Google::Apis::Core::Hashable
2300
+
2301
+ # Only return call sets for which a substring of the name matches this string.
2302
+ # Corresponds to the JSON property `name`
2303
+ # @return [String]
2304
+ attr_accessor :name
2305
+
2306
+ # The maximum number of call sets to return. If unspecified, defaults to 1000.
2307
+ # Corresponds to the JSON property `pageSize`
2308
+ # @return [Fixnum]
2309
+ attr_accessor :page_size
2310
+
2311
+ # The continuation token, which is used to page through large result sets. To
2312
+ # get the next page of results, set this parameter to the value of nextPageToken
2313
+ # from the previous response.
2314
+ # Corresponds to the JSON property `pageToken`
2315
+ # @return [String]
2316
+ attr_accessor :page_token
2317
+
2318
+ # Restrict the query to call sets within the given variant sets. At least one ID
2319
+ # must be provided.
2320
+ # Corresponds to the JSON property `variantSetIds`
2321
+ # @return [Array<String>]
2322
+ attr_accessor :variant_set_ids
2323
+
2324
+ def initialize(**args)
2325
+ update!(**args)
2326
+ end
2327
+
2328
+ # Update properties of this object
2329
+ def update!(**args)
2330
+ @name = args[:name] unless args[:name].nil?
2331
+ @page_size = args[:page_size] unless args[:page_size].nil?
2332
+ @page_token = args[:page_token] unless args[:page_token].nil?
2333
+ @variant_set_ids = args[:variant_set_ids] unless args[:variant_set_ids].nil?
2334
+ end
2335
+ end
2336
+
2337
+ # The call set search response.
2338
+ class SearchCallSetsResponse
2339
+ include Google::Apis::Core::Hashable
2340
+
2341
+ # The list of matching call sets.
2342
+ # Corresponds to the JSON property `callSets`
2343
+ # @return [Array<Google::Apis::GenomicsV1beta2::CallSet>]
2344
+ attr_accessor :call_sets
2345
+
2346
+ # The continuation token, which is used to page through large result sets.
2347
+ # Provide this value in a subsequent request to return the next page of results.
2348
+ # This field will be empty if there aren't any additional results.
2349
+ # Corresponds to the JSON property `nextPageToken`
2350
+ # @return [String]
2351
+ attr_accessor :next_page_token
2352
+
2353
+ def initialize(**args)
2354
+ update!(**args)
2355
+ end
2356
+
2357
+ # Update properties of this object
2358
+ def update!(**args)
2359
+ @call_sets = args[:call_sets] unless args[:call_sets].nil?
2360
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2361
+ end
2362
+ end
2363
+
2364
+ # The jobs search request.
2365
+ class SearchJobsRequest
2366
+ include Google::Apis::Core::Hashable
2367
+
2368
+ # If specified, only jobs created on or after this date, given in milliseconds
2369
+ # since Unix epoch, will be returned.
2370
+ # Corresponds to the JSON property `createdAfter`
2371
+ # @return [String]
2372
+ attr_accessor :created_after
2373
+
2374
+ # If specified, only jobs created prior to this date, given in milliseconds
2375
+ # since Unix epoch, will be returned.
2376
+ # Corresponds to the JSON property `createdBefore`
2377
+ # @return [String]
2378
+ attr_accessor :created_before
2379
+
2380
+ # Specifies the number of results to return in a single page. Defaults to 128.
2381
+ # The maximum value is 256.
2382
+ # Corresponds to the JSON property `pageSize`
2383
+ # @return [Fixnum]
2384
+ attr_accessor :page_size
2385
+
2386
+ # The continuation token which is used to page through large result sets. To get
2387
+ # the next page of results, set this parameter to the value of the nextPageToken
2388
+ # from the previous response.
2389
+ # Corresponds to the JSON property `pageToken`
2390
+ # @return [String]
2391
+ attr_accessor :page_token
2392
+
2393
+ # Required. Only return jobs which belong to this Google Developers Console
2394
+ # project.
2395
+ # Corresponds to the JSON property `projectNumber`
2396
+ # @return [String]
2397
+ attr_accessor :project_number
2398
+
2399
+ # Only return jobs which have a matching status.
2400
+ # Corresponds to the JSON property `status`
2401
+ # @return [Array<String>]
2402
+ attr_accessor :status
2403
+
2404
+ def initialize(**args)
2405
+ update!(**args)
2406
+ end
2407
+
2408
+ # Update properties of this object
2409
+ def update!(**args)
2410
+ @created_after = args[:created_after] unless args[:created_after].nil?
2411
+ @created_before = args[:created_before] unless args[:created_before].nil?
2412
+ @page_size = args[:page_size] unless args[:page_size].nil?
2413
+ @page_token = args[:page_token] unless args[:page_token].nil?
2414
+ @project_number = args[:project_number] unless args[:project_number].nil?
2415
+ @status = args[:status] unless args[:status].nil?
2416
+ end
2417
+ end
2418
+
2419
+ # The job search response.
2420
+ class SearchJobsResponse
2421
+ include Google::Apis::Core::Hashable
2422
+
2423
+ # The list of jobs results, ordered newest to oldest.
2424
+ # Corresponds to the JSON property `jobs`
2425
+ # @return [Array<Google::Apis::GenomicsV1beta2::Job>]
2426
+ attr_accessor :jobs
2427
+
2428
+ # The continuation token which is used to page through large result sets.
2429
+ # Provide this value is a subsequent request to return the next page of results.
2430
+ # This field will be empty if there are no more results.
2431
+ # Corresponds to the JSON property `nextPageToken`
2432
+ # @return [String]
2433
+ attr_accessor :next_page_token
2434
+
2435
+ def initialize(**args)
2436
+ update!(**args)
2437
+ end
2438
+
2439
+ # Update properties of this object
2440
+ def update!(**args)
2441
+ @jobs = args[:jobs] unless args[:jobs].nil?
2442
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2443
+ end
2444
+ end
2445
+
2446
+ # The read group set search request.
2447
+ class SearchReadGroupSetsRequest
2448
+ include Google::Apis::Core::Hashable
2449
+
2450
+ # Restricts this query to read group sets within the given datasets. At least
2451
+ # one ID must be provided.
2452
+ # Corresponds to the JSON property `datasetIds`
2453
+ # @return [Array<String>]
2454
+ attr_accessor :dataset_ids
2455
+
2456
+ # Only return read group sets for which a substring of the name matches this
2457
+ # string.
2458
+ # Corresponds to the JSON property `name`
2459
+ # @return [String]
2460
+ attr_accessor :name
2461
+
2462
+ # Specifies number of results to return in a single page. If unspecified, it
2463
+ # will default to 256. The maximum value is 1024.
2464
+ # Corresponds to the JSON property `pageSize`
2465
+ # @return [Fixnum]
2466
+ attr_accessor :page_size
2467
+
2468
+ # The continuation token, which is used to page through large result sets. To
2469
+ # get the next page of results, set this parameter to the value of nextPageToken
2470
+ # from the previous response.
2471
+ # Corresponds to the JSON property `pageToken`
2472
+ # @return [String]
2473
+ attr_accessor :page_token
2474
+
2475
+ def initialize(**args)
2476
+ update!(**args)
2477
+ end
2478
+
2479
+ # Update properties of this object
2480
+ def update!(**args)
2481
+ @dataset_ids = args[:dataset_ids] unless args[:dataset_ids].nil?
2482
+ @name = args[:name] unless args[:name].nil?
2483
+ @page_size = args[:page_size] unless args[:page_size].nil?
2484
+ @page_token = args[:page_token] unless args[:page_token].nil?
2485
+ end
2486
+ end
2487
+
2488
+ # The read group set search response.
2489
+ class SearchReadGroupSetsResponse
2490
+ include Google::Apis::Core::Hashable
2491
+
2492
+ # The continuation token, which is used to page through large result sets.
2493
+ # Provide this value in a subsequent request to return the next page of results.
2494
+ # This field will be empty if there aren't any additional results.
2495
+ # Corresponds to the JSON property `nextPageToken`
2496
+ # @return [String]
2497
+ attr_accessor :next_page_token
2498
+
2499
+ # The list of matching read group sets.
2500
+ # Corresponds to the JSON property `readGroupSets`
2501
+ # @return [Array<Google::Apis::GenomicsV1beta2::ReadGroupSet>]
2502
+ attr_accessor :read_group_sets
2503
+
2504
+ def initialize(**args)
2505
+ update!(**args)
2506
+ end
2507
+
2508
+ # Update properties of this object
2509
+ def update!(**args)
2510
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2511
+ @read_group_sets = args[:read_group_sets] unless args[:read_group_sets].nil?
2512
+ end
2513
+ end
2514
+
2515
+ # The read search request.
2516
+ class SearchReadsRequest
2517
+ include Google::Apis::Core::Hashable
2518
+
2519
+ # The end position of the range on the reference, 0-based exclusive. If
2520
+ # specified, referenceName must also be specified.
2521
+ # Corresponds to the JSON property `end`
2522
+ # @return [String]
2523
+ attr_accessor :end
2524
+
2525
+ # Specifies number of results to return in a single page. If unspecified, it
2526
+ # will default to 256. The maximum value is 2048.
2527
+ # Corresponds to the JSON property `pageSize`
2528
+ # @return [Fixnum]
2529
+ attr_accessor :page_size
2530
+
2531
+ # The continuation token, which is used to page through large result sets. To
2532
+ # get the next page of results, set this parameter to the value of nextPageToken
2533
+ # from the previous response.
2534
+ # Corresponds to the JSON property `pageToken`
2535
+ # @return [String]
2536
+ attr_accessor :page_token
2537
+
2538
+ # The IDs of the read groups within which to search for reads. All specified
2539
+ # read groups must belong to the same read group sets. Must specify one of
2540
+ # readGroupSetIds or readGroupIds.
2541
+ # Corresponds to the JSON property `readGroupIds`
2542
+ # @return [Array<String>]
2543
+ attr_accessor :read_group_ids
2544
+
2545
+ # The IDs of the read groups sets within which to search for reads. All
2546
+ # specified read group sets must be aligned against a common set of reference
2547
+ # sequences; this defines the genomic coordinates for the query. Must specify
2548
+ # one of readGroupSetIds or readGroupIds.
2549
+ # Corresponds to the JSON property `readGroupSetIds`
2550
+ # @return [Array<String>]
2551
+ attr_accessor :read_group_set_ids
2552
+
2553
+ # The reference sequence name, for example chr1, 1, or chrX. If set to *, only
2554
+ # unmapped reads are returned.
2555
+ # Corresponds to the JSON property `referenceName`
2556
+ # @return [String]
2557
+ attr_accessor :reference_name
2558
+
2559
+ # The start position of the range on the reference, 0-based inclusive. If
2560
+ # specified, referenceName must also be specified.
2561
+ # Corresponds to the JSON property `start`
2562
+ # @return [String]
2563
+ attr_accessor :start
2564
+
2565
+ def initialize(**args)
2566
+ update!(**args)
2567
+ end
2568
+
2569
+ # Update properties of this object
2570
+ def update!(**args)
2571
+ @end = args[:end] unless args[:end].nil?
2572
+ @page_size = args[:page_size] unless args[:page_size].nil?
2573
+ @page_token = args[:page_token] unless args[:page_token].nil?
2574
+ @read_group_ids = args[:read_group_ids] unless args[:read_group_ids].nil?
2575
+ @read_group_set_ids = args[:read_group_set_ids] unless args[:read_group_set_ids].nil?
2576
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
2577
+ @start = args[:start] unless args[:start].nil?
2578
+ end
2579
+ end
2580
+
2581
+ # The read search response.
2582
+ class SearchReadsResponse
2583
+ include Google::Apis::Core::Hashable
2584
+
2585
+ # The list of matching alignments sorted by mapped genomic coordinate, if any,
2586
+ # ascending in position within the same reference. Unmapped reads, which have no
2587
+ # position, are returned last and are further sorted in ascending lexicographic
2588
+ # order by fragment name.
2589
+ # Corresponds to the JSON property `alignments`
2590
+ # @return [Array<Google::Apis::GenomicsV1beta2::Read>]
2591
+ attr_accessor :alignments
2592
+
2593
+ # The continuation token, which is used to page through large result sets.
2594
+ # Provide this value in a subsequent request to return the next page of results.
2595
+ # This field will be empty if there aren't any additional results.
2596
+ # Corresponds to the JSON property `nextPageToken`
2597
+ # @return [String]
2598
+ attr_accessor :next_page_token
2599
+
2600
+ def initialize(**args)
2601
+ update!(**args)
2602
+ end
2603
+
2604
+ # Update properties of this object
2605
+ def update!(**args)
2606
+ @alignments = args[:alignments] unless args[:alignments].nil?
2607
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2608
+ end
2609
+ end
2610
+
2611
+ #
2612
+ class SearchReferenceSetsRequest
2613
+ include Google::Apis::Core::Hashable
2614
+
2615
+ # If present, return references for which the accession matches any of these
2616
+ # strings. Best to give a version number, for example GCF_000001405.26. If only
2617
+ # the main accession number is given then all records with that main accession
2618
+ # will be returned, whichever version. Note that different versions will have
2619
+ # different sequences.
2620
+ # Corresponds to the JSON property `accessions`
2621
+ # @return [Array<String>]
2622
+ attr_accessor :accessions
2623
+
2624
+ # If present, return reference sets for which a substring of their assemblyId
2625
+ # matches this string (case insensitive).
2626
+ # Corresponds to the JSON property `assemblyId`
2627
+ # @return [String]
2628
+ attr_accessor :assembly_id
2629
+
2630
+ # If present, return references for which the md5checksum matches. See
2631
+ # ReferenceSet.md5checksum for details.
2632
+ # Corresponds to the JSON property `md5checksums`
2633
+ # @return [Array<String>]
2634
+ attr_accessor :md5checksums
2635
+
2636
+ # Specifies the maximum number of results to return in a single page.
2637
+ # Corresponds to the JSON property `pageSize`
2638
+ # @return [Fixnum]
2639
+ attr_accessor :page_size
2640
+
2641
+ # The continuation token, which is used to page through large result sets. To
2642
+ # get the next page of results, set this parameter to the value of nextPageToken
2643
+ # from the previous response.
2644
+ # Corresponds to the JSON property `pageToken`
2645
+ # @return [String]
2646
+ attr_accessor :page_token
2647
+
2648
+ def initialize(**args)
2649
+ update!(**args)
2650
+ end
2651
+
2652
+ # Update properties of this object
2653
+ def update!(**args)
2654
+ @accessions = args[:accessions] unless args[:accessions].nil?
2655
+ @assembly_id = args[:assembly_id] unless args[:assembly_id].nil?
2656
+ @md5checksums = args[:md5checksums] unless args[:md5checksums].nil?
2657
+ @page_size = args[:page_size] unless args[:page_size].nil?
2658
+ @page_token = args[:page_token] unless args[:page_token].nil?
2659
+ end
2660
+ end
2661
+
2662
+ #
2663
+ class SearchReferenceSetsResponse
2664
+ include Google::Apis::Core::Hashable
2665
+
2666
+ # The continuation token, which is used to page through large result sets.
2667
+ # Provide this value in a subsequent request to return the next page of results.
2668
+ # This field will be empty if there aren't any additional results.
2669
+ # Corresponds to the JSON property `nextPageToken`
2670
+ # @return [String]
2671
+ attr_accessor :next_page_token
2672
+
2673
+ # The matching references sets.
2674
+ # Corresponds to the JSON property `referenceSets`
2675
+ # @return [Array<Google::Apis::GenomicsV1beta2::ReferenceSet>]
2676
+ attr_accessor :reference_sets
2677
+
2678
+ def initialize(**args)
2679
+ update!(**args)
2680
+ end
2681
+
2682
+ # Update properties of this object
2683
+ def update!(**args)
2684
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2685
+ @reference_sets = args[:reference_sets] unless args[:reference_sets].nil?
2686
+ end
2687
+ end
2688
+
2689
+ #
2690
+ class SearchReferencesRequest
2691
+ include Google::Apis::Core::Hashable
2692
+
2693
+ # If present, return references for which the accession matches this string.
2694
+ # Best to give a version number, for example GCF_000001405.26. If only the main
2695
+ # accession number is given then all records with that main accession will be
2696
+ # returned, whichever version. Note that different versions will have different
2697
+ # sequences.
2698
+ # Corresponds to the JSON property `accessions`
2699
+ # @return [Array<String>]
2700
+ attr_accessor :accessions
2701
+
2702
+ # If present, return references for which the md5checksum matches. See Reference.
2703
+ # md5checksum for construction details.
2704
+ # Corresponds to the JSON property `md5checksums`
2705
+ # @return [Array<String>]
2706
+ attr_accessor :md5checksums
2707
+
2708
+ # Specifies the maximum number of results to return in a single page.
2709
+ # Corresponds to the JSON property `pageSize`
2710
+ # @return [Fixnum]
2711
+ attr_accessor :page_size
2712
+
2713
+ # The continuation token, which is used to page through large result sets. To
2714
+ # get the next page of results, set this parameter to the value of nextPageToken
2715
+ # from the previous response.
2716
+ # Corresponds to the JSON property `pageToken`
2717
+ # @return [String]
2718
+ attr_accessor :page_token
2719
+
2720
+ # If present, return only references which belong to this reference set.
2721
+ # Corresponds to the JSON property `referenceSetId`
2722
+ # @return [String]
2723
+ attr_accessor :reference_set_id
2724
+
2725
+ def initialize(**args)
2726
+ update!(**args)
2727
+ end
2728
+
2729
+ # Update properties of this object
2730
+ def update!(**args)
2731
+ @accessions = args[:accessions] unless args[:accessions].nil?
2732
+ @md5checksums = args[:md5checksums] unless args[:md5checksums].nil?
2733
+ @page_size = args[:page_size] unless args[:page_size].nil?
2734
+ @page_token = args[:page_token] unless args[:page_token].nil?
2735
+ @reference_set_id = args[:reference_set_id] unless args[:reference_set_id].nil?
2736
+ end
2737
+ end
2738
+
2739
+ #
2740
+ class SearchReferencesResponse
2741
+ include Google::Apis::Core::Hashable
2742
+
2743
+ # The continuation token, which is used to page through large result sets.
2744
+ # Provide this value in a subsequent request to return the next page of results.
2745
+ # This field will be empty if there aren't any additional results.
2746
+ # Corresponds to the JSON property `nextPageToken`
2747
+ # @return [String]
2748
+ attr_accessor :next_page_token
2749
+
2750
+ # The matching references.
2751
+ # Corresponds to the JSON property `references`
2752
+ # @return [Array<Google::Apis::GenomicsV1beta2::Reference>]
2753
+ attr_accessor :references
2754
+
2755
+ def initialize(**args)
2756
+ update!(**args)
2757
+ end
2758
+
2759
+ # Update properties of this object
2760
+ def update!(**args)
2761
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2762
+ @references = args[:references] unless args[:references].nil?
2763
+ end
2764
+ end
2765
+
2766
+ # The search variant sets request.
2767
+ class SearchVariantSetsRequest
2768
+ include Google::Apis::Core::Hashable
2769
+
2770
+ # Exactly one dataset ID must be provided here. Only variant sets which belong
2771
+ # to this dataset will be returned.
2772
+ # Corresponds to the JSON property `datasetIds`
2773
+ # @return [Array<String>]
2774
+ attr_accessor :dataset_ids
2775
+
2776
+ # The maximum number of variant sets to return in a request.
2777
+ # Corresponds to the JSON property `pageSize`
2778
+ # @return [Fixnum]
2779
+ attr_accessor :page_size
2780
+
2781
+ # The continuation token, which is used to page through large result sets. To
2782
+ # get the next page of results, set this parameter to the value of nextPageToken
2783
+ # from the previous response.
2784
+ # Corresponds to the JSON property `pageToken`
2785
+ # @return [String]
2786
+ attr_accessor :page_token
2787
+
2788
+ def initialize(**args)
2789
+ update!(**args)
2790
+ end
2791
+
2792
+ # Update properties of this object
2793
+ def update!(**args)
2794
+ @dataset_ids = args[:dataset_ids] unless args[:dataset_ids].nil?
2795
+ @page_size = args[:page_size] unless args[:page_size].nil?
2796
+ @page_token = args[:page_token] unless args[:page_token].nil?
2797
+ end
2798
+ end
2799
+
2800
+ # The search variant sets response.
2801
+ class SearchVariantSetsResponse
2802
+ include Google::Apis::Core::Hashable
2803
+
2804
+ # The continuation token, which is used to page through large result sets.
2805
+ # Provide this value in a subsequent request to return the next page of results.
2806
+ # This field will be empty if there aren't any additional results.
2807
+ # Corresponds to the JSON property `nextPageToken`
2808
+ # @return [String]
2809
+ attr_accessor :next_page_token
2810
+
2811
+ # The variant sets belonging to the requested dataset.
2812
+ # Corresponds to the JSON property `variantSets`
2813
+ # @return [Array<Google::Apis::GenomicsV1beta2::VariantSet>]
2814
+ attr_accessor :variant_sets
2815
+
2816
+ def initialize(**args)
2817
+ update!(**args)
2818
+ end
2819
+
2820
+ # Update properties of this object
2821
+ def update!(**args)
2822
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2823
+ @variant_sets = args[:variant_sets] unless args[:variant_sets].nil?
2824
+ end
2825
+ end
2826
+
2827
+ # The variant search request.
2828
+ class SearchVariantsRequest
2829
+ include Google::Apis::Core::Hashable
2830
+
2831
+ # Only return variant calls which belong to call sets with these ids. Leaving
2832
+ # this blank returns all variant calls. If a variant has no calls belonging to
2833
+ # any of these call sets, it won't be returned at all. Currently, variants with
2834
+ # no calls from any call set will never be returned.
2835
+ # Corresponds to the JSON property `callSetIds`
2836
+ # @return [Array<String>]
2837
+ attr_accessor :call_set_ids
2838
+
2839
+ # The end of the window, 0-based exclusive. If unspecified or 0, defaults to the
2840
+ # length of the reference.
2841
+ # Corresponds to the JSON property `end`
2842
+ # @return [String]
2843
+ attr_accessor :end
2844
+
2845
+ # The maximum number of calls to return. However, at least one variant will
2846
+ # always be returned, even if it has more calls than this limit. If unspecified,
2847
+ # defaults to 5000.
2848
+ # Corresponds to the JSON property `maxCalls`
2849
+ # @return [Fixnum]
2850
+ attr_accessor :max_calls
2851
+
2852
+ # The maximum number of variants to return. If unspecified, defaults to 5000.
2853
+ # Corresponds to the JSON property `pageSize`
2854
+ # @return [Fixnum]
2855
+ attr_accessor :page_size
2856
+
2857
+ # The continuation token, which is used to page through large result sets. To
2858
+ # get the next page of results, set this parameter to the value of nextPageToken
2859
+ # from the previous response.
2860
+ # Corresponds to the JSON property `pageToken`
2861
+ # @return [String]
2862
+ attr_accessor :page_token
2863
+
2864
+ # Required. Only return variants in this reference sequence.
2865
+ # Corresponds to the JSON property `referenceName`
2866
+ # @return [String]
2867
+ attr_accessor :reference_name
2868
+
2869
+ # The beginning of the window (0-based, inclusive) for which overlapping
2870
+ # variants should be returned. If unspecified, defaults to 0.
2871
+ # Corresponds to the JSON property `start`
2872
+ # @return [String]
2873
+ attr_accessor :start
2874
+
2875
+ # Only return variants which have exactly this name.
2876
+ # Corresponds to the JSON property `variantName`
2877
+ # @return [String]
2878
+ attr_accessor :variant_name
2879
+
2880
+ # At most one variant set ID must be provided. Only variants from this variant
2881
+ # set will be returned. If omitted, a call set id must be included in the
2882
+ # request.
2883
+ # Corresponds to the JSON property `variantSetIds`
2884
+ # @return [Array<String>]
2885
+ attr_accessor :variant_set_ids
2886
+
2887
+ def initialize(**args)
2888
+ update!(**args)
2889
+ end
2890
+
2891
+ # Update properties of this object
2892
+ def update!(**args)
2893
+ @call_set_ids = args[:call_set_ids] unless args[:call_set_ids].nil?
2894
+ @end = args[:end] unless args[:end].nil?
2895
+ @max_calls = args[:max_calls] unless args[:max_calls].nil?
2896
+ @page_size = args[:page_size] unless args[:page_size].nil?
2897
+ @page_token = args[:page_token] unless args[:page_token].nil?
2898
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
2899
+ @start = args[:start] unless args[:start].nil?
2900
+ @variant_name = args[:variant_name] unless args[:variant_name].nil?
2901
+ @variant_set_ids = args[:variant_set_ids] unless args[:variant_set_ids].nil?
2902
+ end
2903
+ end
2904
+
2905
+ # The variant search response.
2906
+ class SearchVariantsResponse
2907
+ include Google::Apis::Core::Hashable
2908
+
2909
+ # The continuation token, which is used to page through large result sets.
2910
+ # Provide this value in a subsequent request to return the next page of results.
2911
+ # This field will be empty if there aren't any additional results.
2912
+ # Corresponds to the JSON property `nextPageToken`
2913
+ # @return [String]
2914
+ attr_accessor :next_page_token
2915
+
2916
+ # The list of matching Variants.
2917
+ # Corresponds to the JSON property `variants`
2918
+ # @return [Array<Google::Apis::GenomicsV1beta2::Variant>]
2919
+ attr_accessor :variants
2920
+
2921
+ def initialize(**args)
2922
+ update!(**args)
2923
+ end
2924
+
2925
+ # Update properties of this object
2926
+ def update!(**args)
2927
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2928
+ @variants = args[:variants] unless args[:variants].nil?
2929
+ end
2930
+ end
2931
+
2932
+ # A transcript represents the assertion that a particular region of the
2933
+ # reference genome may be transcribed as RNA.
2934
+ class Transcript
2935
+ include Google::Apis::Core::Hashable
2936
+
2937
+ # The range of the coding sequence for this transcript, if any. To determine the
2938
+ # exact ranges of coding sequence, intersect this range with those of the exons,
2939
+ # if any. If there are any exons, the codingSequence must start and end within
2940
+ # them.
2941
+ # Note that in some cases, the reference genome will not exactly match the
2942
+ # observed mRNA transcript e.g. due to variance in the source genome from
2943
+ # reference. In these cases, exon.frame will not necessarily match the expected
2944
+ # reference reading frame and coding exon reference bases cannot necessarily be
2945
+ # concatenated to produce the original transcript mRNA.
2946
+ # Corresponds to the JSON property `codingSequence`
2947
+ # @return [Google::Apis::GenomicsV1beta2::TranscriptCodingSequence]
2948
+ attr_accessor :coding_sequence
2949
+
2950
+ # The exons that compose this transcript. This field should be unset for genomes
2951
+ # where transcript splicing does not occur, for example prokaryotes.
2952
+ # Introns are regions of the transcript that are not included in the spliced RNA
2953
+ # product. Though not explicitly modeled here, intron ranges can be deduced; all
2954
+ # regions of this transcript that are not exons are introns.
2955
+ # Exonic sequences do not necessarily code for a translational product (amino
2956
+ # acids). Only the regions of exons bounded by the codingSequence correspond to
2957
+ # coding DNA sequence.
2958
+ # Exons are ordered by start position and may not overlap.
2959
+ # Corresponds to the JSON property `exons`
2960
+ # @return [Array<Google::Apis::GenomicsV1beta2::TranscriptExon>]
2961
+ attr_accessor :exons
2962
+
2963
+ # The annotation ID of the gene from which this transcript is transcribed.
2964
+ # Corresponds to the JSON property `geneId`
2965
+ # @return [String]
2966
+ attr_accessor :gene_id
2967
+
2968
+ def initialize(**args)
2969
+ update!(**args)
2970
+ end
2971
+
2972
+ # Update properties of this object
2973
+ def update!(**args)
2974
+ @coding_sequence = args[:coding_sequence] unless args[:coding_sequence].nil?
2975
+ @exons = args[:exons] unless args[:exons].nil?
2976
+ @gene_id = args[:gene_id] unless args[:gene_id].nil?
2977
+ end
2978
+ end
2979
+
2980
+ #
2981
+ class TranscriptCodingSequence
2982
+ include Google::Apis::Core::Hashable
2983
+
2984
+ # The end of the coding sequence on this annotation's reference sequence, 0-
2985
+ # based exclusive. Note that this position is relative to the reference start,
2986
+ # and not the containing annotation start.
2987
+ # Corresponds to the JSON property `end`
2988
+ # @return [String]
2989
+ attr_accessor :end
2990
+
2991
+ # The start of the coding sequence on this annotation's reference sequence, 0-
2992
+ # based inclusive. Note that this position is relative to the reference start,
2993
+ # and not the containing annotation start.
2994
+ # Corresponds to the JSON property `start`
2995
+ # @return [String]
2996
+ attr_accessor :start
2997
+
2998
+ def initialize(**args)
2999
+ update!(**args)
3000
+ end
3001
+
3002
+ # Update properties of this object
3003
+ def update!(**args)
3004
+ @end = args[:end] unless args[:end].nil?
3005
+ @start = args[:start] unless args[:start].nil?
3006
+ end
3007
+ end
3008
+
3009
+ #
3010
+ class TranscriptExon
3011
+ include Google::Apis::Core::Hashable
3012
+
3013
+ # The end position of the exon on this annotation's reference sequence, 0-based
3014
+ # exclusive. Note that this is relative to the reference start, and not the
3015
+ # containing annotation start.
3016
+ # Corresponds to the JSON property `end`
3017
+ # @return [String]
3018
+ attr_accessor :end
3019
+
3020
+ # Wrapper message for `int32`.
3021
+ # The JSON representation for `Int32Value` is JSON number.
3022
+ # Corresponds to the JSON property `frame`
3023
+ # @return [Google::Apis::GenomicsV1beta2::Int32Value]
3024
+ attr_accessor :frame
3025
+
3026
+ # The start position of the exon on this annotation's reference sequence, 0-
3027
+ # based inclusive. Note that this is relative to the reference start, and not
3028
+ # the containing annotation start.
3029
+ # Corresponds to the JSON property `start`
3030
+ # @return [String]
3031
+ attr_accessor :start
3032
+
3033
+ def initialize(**args)
3034
+ update!(**args)
3035
+ end
3036
+
3037
+ # Update properties of this object
3038
+ def update!(**args)
3039
+ @end = args[:end] unless args[:end].nil?
3040
+ @frame = args[:frame] unless args[:frame].nil?
3041
+ @start = args[:start] unless args[:start].nil?
3042
+ end
3043
+ end
3044
+
3045
+ # A variant represents a change in DNA sequence relative to a reference sequence.
3046
+ # For example, a variant could represent a SNP or an insertion. Variants belong
3047
+ # to a variant set. Each of the calls on a variant represent a determination of
3048
+ # genotype with respect to that variant. For example, a call might assign
3049
+ # probability of 0.32 to the occurrence of a SNP named rs1234 in a sample named
3050
+ # NA12345. A call belongs to a call set, which contains related calls typically
3051
+ # from one sample.
3052
+ class Variant
3053
+ include Google::Apis::Core::Hashable
3054
+
3055
+ # The bases that appear instead of the reference bases.
3056
+ # Corresponds to the JSON property `alternateBases`
3057
+ # @return [Array<String>]
3058
+ attr_accessor :alternate_bases
3059
+
3060
+ # The variant calls for this particular variant. Each one represents the
3061
+ # determination of genotype with respect to this variant.
3062
+ # Corresponds to the JSON property `calls`
3063
+ # @return [Array<Google::Apis::GenomicsV1beta2::Call>]
3064
+ attr_accessor :calls
3065
+
3066
+ # The date this variant was created, in milliseconds from the epoch.
3067
+ # Corresponds to the JSON property `created`
3068
+ # @return [String]
3069
+ attr_accessor :created
3070
+
3071
+ # The end position (0-based) of this variant. This corresponds to the first base
3072
+ # after the last base in the reference allele. So, the length of the reference
3073
+ # allele is (end - start). This is useful for variants that don't explicitly
3074
+ # give alternate bases, for example large deletions.
3075
+ # Corresponds to the JSON property `end`
3076
+ # @return [String]
3077
+ attr_accessor :end
3078
+
3079
+ # A list of filters (normally quality filters) this variant has failed. PASS
3080
+ # indicates this variant has passed all filters.
3081
+ # Corresponds to the JSON property `filter`
3082
+ # @return [Array<String>]
3083
+ attr_accessor :filter
3084
+
3085
+ # The Google generated ID of the variant, immutable.
3086
+ # Corresponds to the JSON property `id`
3087
+ # @return [String]
3088
+ attr_accessor :id
3089
+
3090
+ # A string which maps to an array of values.
3091
+ # Corresponds to the JSON property `info`
3092
+ # @return [Hash<String,Array<String>>]
3093
+ attr_accessor :info
3094
+
3095
+ # Names for the variant, for example a RefSNP ID.
3096
+ # Corresponds to the JSON property `names`
3097
+ # @return [Array<String>]
3098
+ attr_accessor :names
3099
+
3100
+ # A measure of how likely this variant is to be real. A higher value is better.
3101
+ # Corresponds to the JSON property `quality`
3102
+ # @return [Float]
3103
+ attr_accessor :quality
3104
+
3105
+ # The reference bases for this variant. They start at the given position.
3106
+ # Corresponds to the JSON property `referenceBases`
3107
+ # @return [String]
3108
+ attr_accessor :reference_bases
3109
+
3110
+ # The reference on which this variant occurs. (such as chr20 or X)
3111
+ # Corresponds to the JSON property `referenceName`
3112
+ # @return [String]
3113
+ attr_accessor :reference_name
3114
+
3115
+ # The position at which this variant occurs (0-based). This corresponds to the
3116
+ # first base of the string of reference bases.
3117
+ # Corresponds to the JSON property `start`
3118
+ # @return [String]
3119
+ attr_accessor :start
3120
+
3121
+ # The ID of the variant set this variant belongs to.
3122
+ # Corresponds to the JSON property `variantSetId`
3123
+ # @return [String]
3124
+ attr_accessor :variant_set_id
3125
+
3126
+ def initialize(**args)
3127
+ update!(**args)
3128
+ end
3129
+
3130
+ # Update properties of this object
3131
+ def update!(**args)
3132
+ @alternate_bases = args[:alternate_bases] unless args[:alternate_bases].nil?
3133
+ @calls = args[:calls] unless args[:calls].nil?
3134
+ @created = args[:created] unless args[:created].nil?
3135
+ @end = args[:end] unless args[:end].nil?
3136
+ @filter = args[:filter] unless args[:filter].nil?
3137
+ @id = args[:id] unless args[:id].nil?
3138
+ @info = args[:info] unless args[:info].nil?
3139
+ @names = args[:names] unless args[:names].nil?
3140
+ @quality = args[:quality] unless args[:quality].nil?
3141
+ @reference_bases = args[:reference_bases] unless args[:reference_bases].nil?
3142
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
3143
+ @start = args[:start] unless args[:start].nil?
3144
+ @variant_set_id = args[:variant_set_id] unless args[:variant_set_id].nil?
3145
+ end
3146
+ end
3147
+
3148
+ # A Variant annotation.
3149
+ class VariantAnnotation
3150
+ include Google::Apis::Core::Hashable
3151
+
3152
+ # The alternate allele for this variant. If multiple alternate alleles exist at
3153
+ # this location, create a separate variant for each one, as they may represent
3154
+ # distinct conditions.
3155
+ # Corresponds to the JSON property `alternateBases`
3156
+ # @return [String]
3157
+ attr_accessor :alternate_bases
3158
+
3159
+ # Describes the clinical significance of a variant. It is adapted from the
3160
+ # ClinVar controlled vocabulary for clinical significance described at: http://
3161
+ # www.ncbi.nlm.nih.gov/clinvar/docs/clinsig/
3162
+ # Corresponds to the JSON property `clinicalSignificance`
3163
+ # @return [String]
3164
+ attr_accessor :clinical_significance
3165
+
3166
+ # The set of conditions associated with this variant. A condition describes the
3167
+ # way a variant influences human health.
3168
+ # Corresponds to the JSON property `conditions`
3169
+ # @return [Array<Google::Apis::GenomicsV1beta2::VariantAnnotationCondition>]
3170
+ attr_accessor :conditions
3171
+
3172
+ # Effect of the variant on the coding sequence.
3173
+ # Corresponds to the JSON property `effect`
3174
+ # @return [String]
3175
+ attr_accessor :effect
3176
+
3177
+ # Google annotation ID of the gene affected by this variant. This should be
3178
+ # provided when the variant is created.
3179
+ # Corresponds to the JSON property `geneId`
3180
+ # @return [String]
3181
+ attr_accessor :gene_id
3182
+
3183
+ # Google annotation IDs of the transcripts affected by this variant. These
3184
+ # should be provided when the variant is created.
3185
+ # Corresponds to the JSON property `transcriptIds`
3186
+ # @return [Array<String>]
3187
+ attr_accessor :transcript_ids
3188
+
3189
+ # Type has been adapted from ClinVar's list of variant types.
3190
+ # Corresponds to the JSON property `type`
3191
+ # @return [String]
3192
+ attr_accessor :type
3193
+
3194
+ def initialize(**args)
3195
+ update!(**args)
3196
+ end
3197
+
3198
+ # Update properties of this object
3199
+ def update!(**args)
3200
+ @alternate_bases = args[:alternate_bases] unless args[:alternate_bases].nil?
3201
+ @clinical_significance = args[:clinical_significance] unless args[:clinical_significance].nil?
3202
+ @conditions = args[:conditions] unless args[:conditions].nil?
3203
+ @effect = args[:effect] unless args[:effect].nil?
3204
+ @gene_id = args[:gene_id] unless args[:gene_id].nil?
3205
+ @transcript_ids = args[:transcript_ids] unless args[:transcript_ids].nil?
3206
+ @type = args[:type] unless args[:type].nil?
3207
+ end
3208
+ end
3209
+
3210
+ #
3211
+ class VariantAnnotationCondition
3212
+ include Google::Apis::Core::Hashable
3213
+
3214
+ # The MedGen concept id associated with this gene. Search for these IDs at http:/
3215
+ # /www.ncbi.nlm.nih.gov/medgen/
3216
+ # Corresponds to the JSON property `conceptId`
3217
+ # @return [String]
3218
+ attr_accessor :concept_id
3219
+
3220
+ # The set of external IDs for this condition.
3221
+ # Corresponds to the JSON property `externalIds`
3222
+ # @return [Array<Google::Apis::GenomicsV1beta2::ExternalId>]
3223
+ attr_accessor :external_ids
3224
+
3225
+ # A set of names for the condition.
3226
+ # Corresponds to the JSON property `names`
3227
+ # @return [Array<String>]
3228
+ attr_accessor :names
3229
+
3230
+ # The OMIM id for this condition. Search for these IDs at http://omim.org/
3231
+ # Corresponds to the JSON property `omimId`
3232
+ # @return [String]
3233
+ attr_accessor :omim_id
3234
+
3235
+ def initialize(**args)
3236
+ update!(**args)
3237
+ end
3238
+
3239
+ # Update properties of this object
3240
+ def update!(**args)
3241
+ @concept_id = args[:concept_id] unless args[:concept_id].nil?
3242
+ @external_ids = args[:external_ids] unless args[:external_ids].nil?
3243
+ @names = args[:names] unless args[:names].nil?
3244
+ @omim_id = args[:omim_id] unless args[:omim_id].nil?
3245
+ end
3246
+ end
3247
+
3248
+ # A variant set is a collection of call sets and variants. It contains summary
3249
+ # statistics of those contents. A variant set belongs to a dataset.
3250
+ class VariantSet
3251
+ include Google::Apis::Core::Hashable
3252
+
3253
+ # The dataset to which this variant set belongs. Immutable.
3254
+ # Corresponds to the JSON property `datasetId`
3255
+ # @return [String]
3256
+ attr_accessor :dataset_id
3257
+
3258
+ # The Google-generated ID of the variant set. Immutable.
3259
+ # Corresponds to the JSON property `id`
3260
+ # @return [String]
3261
+ attr_accessor :id
3262
+
3263
+ # The metadata associated with this variant set.
3264
+ # Corresponds to the JSON property `metadata`
3265
+ # @return [Array<Google::Apis::GenomicsV1beta2::Metadata>]
3266
+ attr_accessor :metadata
3267
+
3268
+ # A list of all references used by the variants in a variant set with associated
3269
+ # coordinate upper bounds for each one.
3270
+ # Corresponds to the JSON property `referenceBounds`
3271
+ # @return [Array<Google::Apis::GenomicsV1beta2::ReferenceBound>]
3272
+ attr_accessor :reference_bounds
3273
+
3274
+ def initialize(**args)
3275
+ update!(**args)
3276
+ end
3277
+
3278
+ # Update properties of this object
3279
+ def update!(**args)
3280
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
3281
+ @id = args[:id] unless args[:id].nil?
3282
+ @metadata = args[:metadata] unless args[:metadata].nil?
3283
+ @reference_bounds = args[:reference_bounds] unless args[:reference_bounds].nil?
3284
+ end
3285
+ end
3286
+ end
3287
+ end
3288
+ end