google-api-client 0.51.0 → 0.53.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (418) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +0 -14
  3. data/CHANGELOG.md +106 -0
  4. data/OVERVIEW.md +36 -27
  5. data/generated/google/apis/accesscontextmanager_v1/classes.rb +326 -0
  6. data/generated/google/apis/accesscontextmanager_v1/representations.rb +139 -0
  7. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  8. data/generated/google/apis/admin_datatransfer_v1/classes.rb +6 -16
  9. data/generated/google/apis/admin_datatransfer_v1/service.rb +3 -3
  10. data/generated/google/apis/admin_datatransfer_v1.rb +2 -2
  11. data/generated/google/apis/admin_directory_v1/classes.rb +453 -321
  12. data/generated/google/apis/admin_directory_v1/representations.rb +15 -15
  13. data/generated/google/apis/admin_directory_v1/service.rb +325 -185
  14. data/generated/google/apis/admin_directory_v1.rb +2 -2
  15. data/generated/google/apis/admin_reports_v1/classes.rb +48 -43
  16. data/generated/google/apis/admin_reports_v1/service.rb +198 -179
  17. data/generated/google/apis/admin_reports_v1.rb +2 -2
  18. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  19. data/generated/google/apis/analytics_v3/service.rb +1 -1
  20. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +10 -2
  21. data/generated/google/apis/analyticsadmin_v1alpha/representations.rb +1 -0
  22. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +17 -13
  23. data/generated/google/apis/analyticsadmin_v1alpha.rb +2 -2
  24. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +11 -11
  25. data/generated/google/apis/analyticsdata_v1alpha.rb +1 -1
  26. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  27. data/generated/google/apis/apigateway_v1/classes.rb +1116 -0
  28. data/generated/google/apis/apigateway_v1/representations.rb +442 -0
  29. data/generated/google/apis/apigateway_v1/service.rb +1172 -0
  30. data/{lib/google/apis/generator/templates/classes.rb.tmpl → generated/google/apis/apigateway_v1.rb} +14 -9
  31. data/generated/google/apis/apigateway_v1beta/classes.rb +22 -17
  32. data/generated/google/apis/apigateway_v1beta/representations.rb +1 -1
  33. data/generated/google/apis/apigateway_v1beta.rb +1 -1
  34. data/generated/google/apis/apigee_v1/classes.rb +95 -22
  35. data/generated/google/apis/apigee_v1/representations.rb +42 -0
  36. data/generated/google/apis/apigee_v1/service.rb +256 -48
  37. data/generated/google/apis/apigee_v1.rb +1 -1
  38. data/generated/google/apis/appengine_v1/classes.rb +7 -0
  39. data/generated/google/apis/appengine_v1/representations.rb +1 -0
  40. data/generated/google/apis/appengine_v1.rb +1 -1
  41. data/generated/google/apis/artifactregistry_v1/classes.rb +242 -0
  42. data/generated/google/apis/artifactregistry_v1/representations.rb +116 -0
  43. data/generated/google/apis/artifactregistry_v1/service.rb +210 -0
  44. data/generated/google/apis/artifactregistry_v1.rb +38 -0
  45. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +0 -120
  46. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +0 -62
  47. data/generated/google/apis/artifactregistry_v1beta1/service.rb +4 -1
  48. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  49. data/generated/google/apis/artifactregistry_v1beta2/classes.rb +0 -120
  50. data/generated/google/apis/artifactregistry_v1beta2/representations.rb +0 -62
  51. data/generated/google/apis/artifactregistry_v1beta2/service.rb +4 -1
  52. data/generated/google/apis/artifactregistry_v1beta2.rb +1 -1
  53. data/generated/google/apis/chat_v1/service.rb +132 -0
  54. data/generated/google/apis/chat_v1.rb +1 -1
  55. data/generated/google/apis/cloudasset_v1/classes.rb +326 -0
  56. data/generated/google/apis/cloudasset_v1/representations.rb +139 -0
  57. data/generated/google/apis/cloudasset_v1.rb +1 -1
  58. data/generated/google/apis/cloudasset_v1beta1/classes.rb +326 -0
  59. data/generated/google/apis/cloudasset_v1beta1/representations.rb +139 -0
  60. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  61. data/generated/google/apis/cloudasset_v1p5beta1/classes.rb +326 -0
  62. data/generated/google/apis/cloudasset_v1p5beta1/representations.rb +139 -0
  63. data/generated/google/apis/cloudasset_v1p5beta1.rb +1 -1
  64. data/generated/google/apis/cloudbuild_v1/classes.rb +3 -3
  65. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  66. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +3 -3
  67. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  68. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +3 -3
  69. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  70. data/generated/google/apis/cloudfunctions_v1/classes.rb +6 -0
  71. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  72. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  73. data/generated/google/apis/cloudidentity_v1/classes.rb +240 -0
  74. data/generated/google/apis/cloudidentity_v1/representations.rb +125 -0
  75. data/generated/google/apis/cloudidentity_v1/service.rb +202 -2
  76. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  77. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +1 -1
  78. data/generated/google/apis/cloudidentity_v1beta1/service.rb +8 -2
  79. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  80. data/generated/google/apis/cloudkms_v1/classes.rb +0 -6
  81. data/generated/google/apis/cloudkms_v1/representations.rb +0 -1
  82. data/generated/google/apis/cloudkms_v1.rb +1 -1
  83. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +0 -26
  84. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +0 -24
  85. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  86. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +0 -26
  87. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +0 -24
  88. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  89. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +0 -26
  90. data/generated/google/apis/cloudresourcemanager_v2/representations.rb +0 -24
  91. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  92. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +0 -26
  93. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +0 -24
  94. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  95. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +19 -0
  96. data/generated/google/apis/cloudscheduler_v1beta1/representations.rb +2 -0
  97. data/generated/google/apis/cloudscheduler_v1beta1/service.rb +12 -2
  98. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  99. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +59 -0
  100. data/generated/google/apis/cloudtasks_v2beta2/representations.rb +19 -0
  101. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  102. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +102 -0
  103. data/generated/google/apis/cloudtasks_v2beta3/representations.rb +35 -0
  104. data/generated/google/apis/cloudtasks_v2beta3/service.rb +16 -2
  105. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  106. data/generated/google/apis/composer_v1beta1/classes.rb +64 -0
  107. data/generated/google/apis/composer_v1beta1/representations.rb +18 -0
  108. data/generated/google/apis/composer_v1beta1.rb +1 -1
  109. data/generated/google/apis/compute_alpha/classes.rb +1071 -341
  110. data/generated/google/apis/compute_alpha/representations.rb +248 -19
  111. data/generated/google/apis/compute_alpha/service.rb +291 -15
  112. data/generated/google/apis/compute_alpha.rb +1 -1
  113. data/generated/google/apis/compute_beta/classes.rb +926 -283
  114. data/generated/google/apis/compute_beta/representations.rb +221 -18
  115. data/generated/google/apis/compute_beta/service.rb +24 -15
  116. data/generated/google/apis/compute_beta.rb +1 -1
  117. data/generated/google/apis/compute_v1/classes.rb +419 -158
  118. data/generated/google/apis/compute_v1/representations.rb +55 -0
  119. data/generated/google/apis/compute_v1/service.rb +9 -7
  120. data/generated/google/apis/compute_v1.rb +1 -1
  121. data/generated/google/apis/container_v1/classes.rb +55 -16
  122. data/generated/google/apis/container_v1/representations.rb +17 -0
  123. data/generated/google/apis/container_v1/service.rb +4 -2
  124. data/generated/google/apis/container_v1.rb +1 -1
  125. data/generated/google/apis/container_v1beta1/classes.rb +31 -20
  126. data/generated/google/apis/container_v1beta1/representations.rb +2 -0
  127. data/generated/google/apis/container_v1beta1/service.rb +6 -2
  128. data/generated/google/apis/container_v1beta1.rb +1 -1
  129. data/generated/google/apis/content_v2_1/classes.rb +450 -7
  130. data/generated/google/apis/content_v2_1/representations.rb +188 -0
  131. data/generated/google/apis/content_v2_1/service.rb +116 -0
  132. data/generated/google/apis/content_v2_1.rb +1 -1
  133. data/generated/google/apis/datacatalog_v1beta1/classes.rb +6 -0
  134. data/generated/google/apis/datacatalog_v1beta1/representations.rb +1 -0
  135. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  136. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  137. data/generated/google/apis/datalabeling_v1beta1.rb +1 -1
  138. data/generated/google/apis/datamigration_v1beta1/classes.rb +0 -6
  139. data/generated/google/apis/datamigration_v1beta1/representations.rb +0 -1
  140. data/generated/google/apis/datamigration_v1beta1.rb +1 -1
  141. data/generated/google/apis/dataproc_v1/classes.rb +29 -1
  142. data/generated/google/apis/dataproc_v1/representations.rb +14 -0
  143. data/generated/google/apis/dataproc_v1/service.rb +42 -0
  144. data/generated/google/apis/dataproc_v1.rb +1 -1
  145. data/generated/google/apis/dataproc_v1beta2/classes.rb +29 -1
  146. data/generated/google/apis/dataproc_v1beta2/representations.rb +14 -0
  147. data/generated/google/apis/dataproc_v1beta2/service.rb +42 -0
  148. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  149. data/generated/google/apis/deploymentmanager_alpha/classes.rb +276 -644
  150. data/generated/google/apis/deploymentmanager_alpha/representations.rb +10 -143
  151. data/generated/google/apis/deploymentmanager_alpha/service.rb +247 -398
  152. data/generated/google/apis/deploymentmanager_alpha.rb +6 -5
  153. data/generated/google/apis/deploymentmanager_v2/service.rb +5 -25
  154. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  155. data/generated/google/apis/deploymentmanager_v2beta/service.rb +8 -40
  156. data/generated/google/apis/deploymentmanager_v2beta.rb +1 -1
  157. data/generated/google/apis/dialogflow_v2/classes.rb +4339 -284
  158. data/generated/google/apis/dialogflow_v2/representations.rb +2090 -211
  159. data/generated/google/apis/dialogflow_v2.rb +1 -1
  160. data/generated/google/apis/dialogflow_v2beta1/classes.rb +4341 -286
  161. data/generated/google/apis/dialogflow_v2beta1/representations.rb +2097 -218
  162. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  163. data/generated/google/apis/dialogflow_v3/classes.rb +11752 -0
  164. data/generated/google/apis/dialogflow_v3/representations.rb +5158 -0
  165. data/generated/google/apis/dialogflow_v3/service.rb +3414 -0
  166. data/generated/google/apis/{bigqueryreservation_v1alpha2.rb → dialogflow_v3.rb} +13 -12
  167. data/generated/google/apis/dialogflow_v3beta1/classes.rb +5147 -1554
  168. data/generated/google/apis/dialogflow_v3beta1/representations.rb +1966 -221
  169. data/generated/google/apis/dialogflow_v3beta1/service.rb +581 -0
  170. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  171. data/generated/google/apis/dlp_v2/service.rb +297 -10
  172. data/generated/google/apis/dlp_v2.rb +1 -1
  173. data/generated/google/apis/dns_v1/classes.rb +65 -0
  174. data/generated/google/apis/dns_v1/representations.rb +32 -0
  175. data/generated/google/apis/dns_v1.rb +1 -1
  176. data/generated/google/apis/documentai_v1beta2/classes.rb +217 -186
  177. data/generated/google/apis/documentai_v1beta2/representations.rb +107 -24
  178. data/generated/google/apis/documentai_v1beta2.rb +1 -1
  179. data/generated/google/apis/documentai_v1beta3/classes.rb +238 -201
  180. data/generated/google/apis/documentai_v1beta3/representations.rb +107 -24
  181. data/generated/google/apis/documentai_v1beta3/service.rb +81 -2
  182. data/generated/google/apis/documentai_v1beta3.rb +1 -1
  183. data/generated/google/apis/eventarc_v1beta1/classes.rb +8 -9
  184. data/generated/google/apis/eventarc_v1beta1/service.rb +25 -5
  185. data/generated/google/apis/eventarc_v1beta1.rb +1 -1
  186. data/generated/google/apis/file_v1/classes.rb +61 -0
  187. data/generated/google/apis/file_v1/representations.rb +19 -0
  188. data/generated/google/apis/file_v1.rb +1 -1
  189. data/generated/google/apis/gameservices_v1/service.rb +14 -14
  190. data/generated/google/apis/gameservices_v1.rb +1 -1
  191. data/generated/google/apis/gameservices_v1beta/service.rb +14 -14
  192. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  193. data/generated/google/apis/genomics_v2alpha1/classes.rb +11 -7
  194. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  195. data/generated/google/apis/healthcare_v1/classes.rb +0 -6
  196. data/generated/google/apis/healthcare_v1/representations.rb +0 -1
  197. data/generated/google/apis/healthcare_v1/service.rb +13 -12
  198. data/generated/google/apis/healthcare_v1.rb +1 -1
  199. data/generated/google/apis/healthcare_v1beta1/classes.rb +45 -19
  200. data/generated/google/apis/healthcare_v1beta1/representations.rb +3 -1
  201. data/generated/google/apis/healthcare_v1beta1/service.rb +37 -37
  202. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  203. data/generated/google/apis/iap_v1/classes.rb +0 -6
  204. data/generated/google/apis/iap_v1/representations.rb +0 -1
  205. data/generated/google/apis/iap_v1.rb +1 -1
  206. data/generated/google/apis/iap_v1beta1/classes.rb +0 -6
  207. data/generated/google/apis/iap_v1beta1/representations.rb +0 -1
  208. data/generated/google/apis/iap_v1beta1.rb +1 -1
  209. data/generated/google/apis/localservices_v1.rb +4 -1
  210. data/generated/google/apis/manufacturers_v1/classes.rb +2 -2
  211. data/generated/google/apis/manufacturers_v1.rb +1 -1
  212. data/generated/google/apis/metastore_v1beta/classes.rb +1151 -0
  213. data/generated/google/apis/metastore_v1beta/representations.rb +479 -0
  214. data/generated/google/apis/metastore_v1beta/service.rb +800 -0
  215. data/{lib/google/apis/core/logging.rb → generated/google/apis/metastore_v1beta.rb} +15 -10
  216. data/generated/google/apis/ml_v1/classes.rb +51 -18
  217. data/generated/google/apis/ml_v1/representations.rb +16 -0
  218. data/generated/google/apis/ml_v1.rb +1 -1
  219. data/generated/google/apis/monitoring_v3/classes.rb +10 -6
  220. data/generated/google/apis/monitoring_v3.rb +1 -1
  221. data/generated/google/apis/notebooks_v1/classes.rb +13 -0
  222. data/generated/google/apis/notebooks_v1/representations.rb +12 -0
  223. data/generated/google/apis/notebooks_v1/service.rb +34 -0
  224. data/generated/google/apis/notebooks_v1.rb +1 -1
  225. data/generated/google/apis/privateca_v1beta1/classes.rb +2 -1
  226. data/generated/google/apis/privateca_v1beta1.rb +1 -1
  227. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  228. data/generated/google/apis/recommendationengine_v1beta1/service.rb +2 -1
  229. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  230. data/generated/google/apis/recommender_v1beta1/service.rb +317 -0
  231. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  232. data/generated/google/apis/redis_v1/classes.rb +2 -2
  233. data/generated/google/apis/redis_v1.rb +1 -1
  234. data/generated/google/apis/redis_v1beta1/classes.rb +2 -2
  235. data/generated/google/apis/redis_v1beta1.rb +1 -1
  236. data/generated/google/apis/safebrowsing_v4/classes.rb +277 -277
  237. data/generated/google/apis/safebrowsing_v4/representations.rb +128 -128
  238. data/generated/google/apis/safebrowsing_v4/service.rb +44 -44
  239. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  240. data/generated/google/apis/searchconsole_v1/classes.rb +7 -0
  241. data/generated/google/apis/searchconsole_v1/representations.rb +1 -0
  242. data/generated/google/apis/searchconsole_v1.rb +1 -1
  243. data/generated/google/apis/securitycenter_v1/classes.rb +18 -10
  244. data/generated/google/apis/securitycenter_v1/representations.rb +1 -0
  245. data/generated/google/apis/securitycenter_v1/service.rb +30 -30
  246. data/generated/google/apis/securitycenter_v1.rb +1 -1
  247. data/generated/google/apis/securitycenter_v1beta1/classes.rb +7 -0
  248. data/generated/google/apis/securitycenter_v1beta1/representations.rb +1 -0
  249. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  250. data/generated/google/apis/securitycenter_v1beta2/classes.rb +7 -0
  251. data/generated/google/apis/securitycenter_v1beta2/representations.rb +1 -0
  252. data/generated/google/apis/securitycenter_v1beta2.rb +1 -1
  253. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +11 -10
  254. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  255. data/generated/google/apis/servicecontrol_v1/service.rb +2 -2
  256. data/generated/google/apis/servicecontrol_v1.rb +3 -3
  257. data/generated/google/apis/servicecontrol_v2/service.rb +2 -2
  258. data/generated/google/apis/servicecontrol_v2.rb +3 -3
  259. data/generated/google/apis/servicedirectory_v1/classes.rb +721 -0
  260. data/generated/google/apis/servicedirectory_v1/representations.rb +304 -0
  261. data/generated/google/apis/servicedirectory_v1/service.rb +957 -0
  262. data/{lib/google/apis/generator/templates/representations.rb.tmpl → generated/google/apis/servicedirectory_v1.rb} +15 -12
  263. data/generated/google/apis/servicemanagement_v1/classes.rb +11 -10
  264. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  265. data/generated/google/apis/servicenetworking_v1/classes.rb +1 -1
  266. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  267. data/generated/google/apis/servicenetworking_v1beta/classes.rb +1 -1
  268. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  269. data/generated/google/apis/serviceusage_v1/classes.rb +11 -10
  270. data/generated/google/apis/serviceusage_v1.rb +1 -1
  271. data/generated/google/apis/serviceusage_v1beta1/classes.rb +11 -10
  272. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  273. data/generated/google/apis/slides_v1/classes.rb +9 -3
  274. data/generated/google/apis/slides_v1.rb +1 -1
  275. data/generated/google/apis/speech_v1p1beta1/classes.rb +0 -22
  276. data/generated/google/apis/speech_v1p1beta1/representations.rb +0 -2
  277. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  278. data/generated/google/apis/sqladmin_v1beta4/classes.rb +7 -7
  279. data/generated/google/apis/sqladmin_v1beta4/service.rb +4 -1
  280. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  281. data/generated/google/apis/storagetransfer_v1/classes.rb +25 -0
  282. data/generated/google/apis/storagetransfer_v1/representations.rb +3 -0
  283. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  284. data/generated/google/apis/testing_v1/classes.rb +1 -1
  285. data/generated/google/apis/testing_v1.rb +1 -1
  286. data/generated/google/apis/trafficdirector_v2/service.rb +1 -1
  287. data/generated/google/apis/trafficdirector_v2.rb +2 -2
  288. data/generated/google/apis/transcoder_v1beta1/classes.rb +12 -2
  289. data/generated/google/apis/transcoder_v1beta1/representations.rb +1 -0
  290. data/generated/google/apis/transcoder_v1beta1.rb +1 -1
  291. data/generated/google/apis/translate_v3/classes.rb +1 -1
  292. data/generated/google/apis/translate_v3.rb +1 -1
  293. data/generated/google/apis/translate_v3beta1/classes.rb +1 -1
  294. data/generated/google/apis/translate_v3beta1.rb +1 -1
  295. data/generated/google/apis/webmasters_v3/classes.rb +8 -0
  296. data/generated/google/apis/webmasters_v3/representations.rb +1 -0
  297. data/generated/google/apis/workflows_v1beta/classes.rb +4 -4
  298. data/generated/google/apis/workflows_v1beta.rb +1 -1
  299. data/generated/google/apis/youtube_v3/classes.rb +18 -143
  300. data/generated/google/apis/youtube_v3/representations.rb +0 -57
  301. data/generated/google/apis/youtube_v3/service.rb +0 -43
  302. data/generated/google/apis/youtube_v3.rb +1 -1
  303. data/lib/google/apis/version.rb +1 -23
  304. metadata +39 -267
  305. data/.github/CONTRIBUTING.md +0 -31
  306. data/.github/ISSUE_TEMPLATE/bug_report.md +0 -36
  307. data/.github/ISSUE_TEMPLATE/feature_request.md +0 -21
  308. data/.github/ISSUE_TEMPLATE/support_request.md +0 -7
  309. data/.github/workflows/autoapprove.yml +0 -49
  310. data/.github/workflows/release-please.yml +0 -79
  311. data/.gitignore +0 -23
  312. data/.kokoro/build.bat +0 -11
  313. data/.kokoro/build.sh +0 -4
  314. data/.kokoro/continuous/common.cfg +0 -25
  315. data/.kokoro/continuous/linux.cfg +0 -25
  316. data/.kokoro/continuous/osx.cfg +0 -8
  317. data/.kokoro/continuous/post.cfg +0 -30
  318. data/.kokoro/continuous/windows.cfg +0 -29
  319. data/.kokoro/osx.sh +0 -4
  320. data/.kokoro/presubmit/common.cfg +0 -24
  321. data/.kokoro/presubmit/linux.cfg +0 -24
  322. data/.kokoro/presubmit/osx.cfg +0 -8
  323. data/.kokoro/presubmit/windows.cfg +0 -29
  324. data/.kokoro/release.cfg +0 -94
  325. data/.kokoro/trampoline.bat +0 -10
  326. data/.kokoro/trampoline.sh +0 -4
  327. data/.repo-metadata.json +0 -5
  328. data/.rspec +0 -2
  329. data/.rubocop.yml +0 -12
  330. data/.rubocop_todo.yml +0 -63
  331. data/CODE_OF_CONDUCT.md +0 -43
  332. data/Gemfile +0 -55
  333. data/MIGRATING.md +0 -215
  334. data/README.md +0 -402
  335. data/Rakefile +0 -131
  336. data/api_list_config.yaml +0 -9
  337. data/api_names.yaml +0 -1082
  338. data/bin/generate-api +0 -194
  339. data/docs/api-keys.md +0 -20
  340. data/docs/auth.md +0 -53
  341. data/docs/client-secrets.md +0 -69
  342. data/docs/getting-started.md +0 -340
  343. data/docs/installation.md +0 -0
  344. data/docs/logging.md +0 -34
  345. data/docs/media-upload.md +0 -25
  346. data/docs/oauth-installed.md +0 -191
  347. data/docs/oauth-server.md +0 -133
  348. data/docs/oauth-web.md +0 -280
  349. data/docs/oauth.md +0 -268
  350. data/docs/pagination.md +0 -29
  351. data/docs/performance.md +0 -25
  352. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +0 -426
  353. data/generated/google/apis/bigqueryreservation_v1alpha2/representations.rb +0 -195
  354. data/generated/google/apis/bigqueryreservation_v1alpha2/service.rb +0 -622
  355. data/google-api-client.gemspec +0 -36
  356. data/lib/google/api_client/auth/installed_app.rb +0 -143
  357. data/lib/google/api_client/auth/key_utils.rb +0 -94
  358. data/lib/google/api_client/auth/storage.rb +0 -104
  359. data/lib/google/api_client/auth/storages/file_store.rb +0 -57
  360. data/lib/google/api_client/auth/storages/redis_store.rb +0 -59
  361. data/lib/google/api_client/client_secrets.rb +0 -176
  362. data/lib/google/apis/core/api_command.rb +0 -209
  363. data/lib/google/apis/core/base_service.rb +0 -447
  364. data/lib/google/apis/core/batch.rb +0 -236
  365. data/lib/google/apis/core/composite_io.rb +0 -97
  366. data/lib/google/apis/core/download.rb +0 -118
  367. data/lib/google/apis/core/hashable.rb +0 -44
  368. data/lib/google/apis/core/http_command.rb +0 -447
  369. data/lib/google/apis/core/json_representation.rb +0 -153
  370. data/lib/google/apis/core/multipart.rb +0 -135
  371. data/lib/google/apis/core/upload.rb +0 -273
  372. data/lib/google/apis/errors.rb +0 -89
  373. data/lib/google/apis/generator/annotator.rb +0 -339
  374. data/lib/google/apis/generator/helpers.rb +0 -76
  375. data/lib/google/apis/generator/model.rb +0 -187
  376. data/lib/google/apis/generator/template.rb +0 -124
  377. data/lib/google/apis/generator/templates/_class.tmpl +0 -43
  378. data/lib/google/apis/generator/templates/_method.tmpl +0 -92
  379. data/lib/google/apis/generator/templates/_representation.tmpl +0 -51
  380. data/lib/google/apis/generator/templates/_representation_stub.tmpl +0 -17
  381. data/lib/google/apis/generator/templates/_representation_type.tmpl +0 -10
  382. data/lib/google/apis/generator/templates/module.rb.tmpl +0 -40
  383. data/lib/google/apis/generator/templates/service.rb.tmpl +0 -61
  384. data/lib/google/apis/generator.rb +0 -71
  385. data/lib/google/apis/options.rb +0 -116
  386. data/lib/google/apis.rb +0 -58
  387. data/rakelib/devsite/devsite_builder.rb +0 -126
  388. data/rakelib/devsite/link_checker.rb +0 -64
  389. data/rakelib/devsite/repo_metadata.rb +0 -56
  390. data/rakelib/metrics.rake +0 -22
  391. data/rakelib/rubocop.rake +0 -10
  392. data/rakelib/spec.rake +0 -11
  393. data/rakelib/yard.rake +0 -11
  394. data/samples/cli/.env +0 -4
  395. data/samples/cli/Gemfile +0 -7
  396. data/samples/cli/README.md +0 -51
  397. data/samples/cli/google-api-samples +0 -32
  398. data/samples/cli/lib/base_cli.rb +0 -95
  399. data/samples/cli/lib/samples/adsense.rb +0 -99
  400. data/samples/cli/lib/samples/analytics.rb +0 -80
  401. data/samples/cli/lib/samples/androidpublisher.rb +0 -47
  402. data/samples/cli/lib/samples/bigquery.rb +0 -101
  403. data/samples/cli/lib/samples/calendar.rb +0 -83
  404. data/samples/cli/lib/samples/drive.rb +0 -82
  405. data/samples/cli/lib/samples/gmail.rb +0 -157
  406. data/samples/cli/lib/samples/pubsub.rb +0 -114
  407. data/samples/cli/lib/samples/sheets.rb +0 -61
  408. data/samples/cli/lib/samples/translate.rb +0 -44
  409. data/samples/cli/lib/samples/vision.rb +0 -69
  410. data/samples/cli/lib/samples/you_tube.rb +0 -47
  411. data/samples/web/Gemfile +0 -9
  412. data/samples/web/README.md +0 -44
  413. data/samples/web/app.rb +0 -120
  414. data/samples/web/views/calendar.erb +0 -34
  415. data/samples/web/views/drive.erb +0 -33
  416. data/samples/web/views/home.erb +0 -34
  417. data/samples/web/views/layout.erb +0 -40
  418. data/synth.py +0 -40
data/lib/google/apis.rb DELETED
@@ -1,58 +0,0 @@
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/version'
16
- require 'logger'
17
-
18
- module Google
19
- module Apis
20
- ROOT = File.expand_path('..', File.dirname(__dir__))
21
-
22
- # @!attribute [rw] logger
23
- # @return [Logger] The logger.
24
- def self.logger
25
- @logger ||= rails_logger || default_logger
26
- end
27
-
28
- class << self
29
- attr_writer :logger
30
- end
31
-
32
- private
33
-
34
- # Create and configure a logger
35
- # @return [Logger]
36
- def self.default_logger
37
- logger = Logger.new($stdout)
38
- logger.level = Logger::WARN
39
- logger
40
- end
41
-
42
- # Check to see if client is being used in a Rails environment and get the logger if present.
43
- # Setting the ENV variable 'GOOGLE_API_USE_RAILS_LOGGER' to false will force the client
44
- # to use its own logger.
45
- #
46
- # @return [Logger]
47
- def self.rails_logger
48
- if 'true' == ENV.fetch('GOOGLE_API_USE_RAILS_LOGGER', 'true') &&
49
- defined?(::Rails) &&
50
- ::Rails.respond_to?(:logger) &&
51
- !::Rails.logger.nil?
52
- ::Rails.logger
53
- else
54
- nil
55
- end
56
- end
57
- end
58
- end
@@ -1,126 +0,0 @@
1
- require "pathname"
2
- require "tmpdir"
3
-
4
- require_relative "repo_metadata.rb"
5
-
6
- class DevsiteBuilder
7
- def initialize build_tag = nil
8
- @build_tag = build_tag || latest_tag
9
- @output_dir = "doc"
10
- end
11
-
12
- def build tag
13
- checkout_tag tag
14
- doc_path = tmp_dir + @output_dir
15
- FileUtils.remove_dir doc_path if Dir.exist? doc_path
16
- markup = "--markup markdown --markup-provider redcarpet"
17
-
18
- Dir.chdir tmp_dir do
19
- cmds = ["-o #{@output_dir}", markup]
20
- cmd "yard --verbose #{cmds.join ' '}"
21
- end
22
- metadata.build doc_path
23
- end
24
-
25
- def upload
26
- Dir.chdir tmp_dir + @output_dir do
27
- opts = [
28
- "--credentials=#{ENV['KOKORO_KEYSTORE_DIR']}/73713_docuploader_service_account",
29
- "--staging-bucket=#{ENV.fetch 'STAGING_BUCKET', 'docs-staging'}",
30
- "--metadata-file=./docs.metadata"
31
- ]
32
- cmd "python3 -m docuploader upload . #{opts.join ' '}"
33
- end
34
- end
35
-
36
- def publish tag = nil
37
- build(tag || @build_tag)
38
- upload
39
- end
40
-
41
- def publish_if_missing tag = nil
42
- tag ||= @build_tag
43
- puts tag
44
- puts missing? tag
45
- publish tag if missing? tag
46
- end
47
-
48
- def missing? tag
49
- require "httparty"
50
-
51
- url = "https://googleapis.dev/ruby/google-api-client/v#{version tag}/index.html"
52
- response = HTTParty.get url
53
- response.code != 200
54
- rescue StandardError
55
- true
56
- end
57
-
58
- def cmd line
59
- puts line
60
- output = `#{line}`
61
- puts output
62
- output
63
- end
64
-
65
- def metadata
66
- return @metadata if @metadata
67
-
68
- metadata_json = "#{tmp_dir}/.repo-metadata.json"
69
- @metadata = RepoMetadata.from_source metadata_json if File.file? metadata_json
70
- @metadata ||= RepoMetadata.from_source "name" => "google-api-client",
71
- "distribution-name" => "google-api-client",
72
- "language" => "ruby"
73
- @metadata["version"] = "v#{version @build_tag}"
74
- @metadata
75
- end
76
-
77
- def checkout_tag git_tag
78
- Dir.chdir tmp_dir do
79
- `git checkout tags/#{git_tag} -b v#{version git_tag}`
80
- end
81
- end
82
-
83
- def version git_tag
84
- m = git_tag.match(/(\d+\.\d+\.\d+)/)
85
- return m if m.nil?
86
- m[0]
87
- end
88
-
89
- def versions
90
- Dir.chdir tmp_dir do
91
- tags.map { |t| version t }.reject(&:nil?).sort_by { |v| Gem::Version.new v }.reverse
92
- end
93
- end
94
-
95
- def tags
96
- Dir.chdir tmp_dir do
97
- `git tag`.split "\n"
98
- end
99
- end
100
-
101
- def latest_version
102
- @latest_version ||= versions.first
103
- end
104
-
105
- def latest_tag
106
- @latest_tag ||= tags.select { |t| t.include? latest_version }.min_by(&:size)
107
- end
108
-
109
- def tmp_dir
110
- return @tmp_dir if @tmp_dir
111
-
112
- tmp = Dir.tmpdir
113
- dir_name = "google-api-ruby-client"
114
- @tmp_dir = Pathname.new(tmp) + dir_name
115
- FileUtils.remove_dir @tmp_dir if Dir.exist? @tmp_dir
116
-
117
- Dir.chdir tmp do
118
- `git clone https://github.com/googleapis/google-api-ruby-client.git`
119
- end
120
- Dir.chdir @tmp_dir do
121
- `git fetch`
122
- end
123
-
124
- @tmp_dir
125
- end
126
- end
@@ -1,64 +0,0 @@
1
- require "open3"
2
-
3
- class LinkChecker
4
- def initialize
5
- @failed = false
6
- end
7
-
8
- def run
9
- job_info
10
- git_commit = ENV.fetch "KOKORO_GITHUB_COMMIT", "master"
11
-
12
- markdown_files = Dir.glob "**/*.md"
13
- broken_markdown_links = check_links(markdown_files,
14
- "https://github.com/googleapis/google-api-ruby-client/tree/#{git_commit}",
15
- " --skip '^(?!(\\Wruby.*google|.*google.*\\Wruby|.*cloud\\.google\\.com))'")
16
-
17
- broken_devsite_links = check_links(["google-api-client"],
18
- "https://googleapis.dev/ruby",
19
- "/latest/ --recurse --skip https:.*github.*")
20
-
21
- puts_broken_links broken_markdown_links
22
- puts_broken_links broken_devsite_links
23
- end
24
-
25
- def check_links location_list, base, tail
26
- broken_links = Hash.new { |h, k| h[k] = [] }
27
- location_list.each do |location|
28
- out, err, st = Open3.capture3 "npx linkinator #{base}/#{location}#{tail}"
29
- puts out
30
- unless st.to_i.zero?
31
- @failed = true
32
- puts err
33
- end
34
- checked_links = out.split "\n"
35
- checked_links.select! { |link| link =~ /\[\d+\]/ && !link.include?("[200]") }
36
- unless checked_links.empty?
37
- @failed = true
38
- broken_links[location] += checked_links
39
- end
40
- end
41
- broken_links
42
- end
43
-
44
- def puts_broken_links link_hash
45
- link_hash.each do |location, links|
46
- puts "#{location} contains the following broken links:"
47
- links.each { |link| puts " #{link}" }
48
- puts ""
49
- end
50
- end
51
-
52
- def job_info
53
- line_length = "Using Ruby - #{RUBY_VERSION}".length + 8
54
- puts
55
- puts "#" * line_length
56
- puts "### Using Ruby - #{RUBY_VERSION} ###"
57
- puts "#" * line_length
58
- puts
59
- end
60
-
61
- def exit_status
62
- @failed ? 1 : 0
63
- end
64
- end
@@ -1,56 +0,0 @@
1
- require "json"
2
-
3
- class RepoMetadata
4
- attr_accessor :data
5
-
6
- def initialize data
7
- @data = data
8
- normalize_data!
9
- end
10
-
11
- def allowed_fields
12
- [
13
- "name", "version", "language", "distribution-name",
14
- "product-page", "github-repository", "issue-tracker"
15
- ]
16
- end
17
-
18
- def build output_directory
19
- fields = @data.to_a.map { |kv| "--#{kv[0]} #{kv[1]}" }
20
- Dir.chdir output_directory do
21
- cmd "python3 -m docuploader create-metadata #{fields.join ' '}"
22
- end
23
- end
24
-
25
- def normalize_data!
26
- @data.delete_if { |k, _| !allowed_fields.include?(k) }
27
- end
28
-
29
- def [] key
30
- data[key]
31
- end
32
-
33
- def []= key, value
34
- @data[key] = value
35
- end
36
-
37
- def cmd line
38
- puts line
39
- output = `#{line}`
40
- puts output
41
- output
42
- end
43
-
44
- def self.from_source source
45
- if source.is_a? RepoMetadata
46
- data = source.data
47
- elsif source.is_a? Hash
48
- data = source
49
- elsif File.file? source
50
- data = JSON.parse File.read(source)
51
- else
52
- raise "Source must be a path, hash, or RepoMetadata instance"
53
- end
54
- RepoMetadata.new data
55
- end
56
- end
data/rakelib/metrics.rake DELETED
@@ -1,22 +0,0 @@
1
- namespace :metrics do
2
- task :lines do
3
- lines, codelines, total_lines, total_codelines = 0, 0, 0, 0
4
- for file_name in FileList['lib/**/*.rb', 'bin/generate-api']
5
- f = File.open(file_name)
6
- while line = f.gets
7
- lines += 1
8
- next if line =~ /^\s*$/
9
- next if line =~ /^\s*#/
10
- codelines += 1
11
- end
12
- puts "L: #{sprintf('%4d', lines)}, " +
13
- "LOC #{sprintf('%4d', codelines)} | #{file_name}"
14
- total_lines += lines
15
- total_codelines += codelines
16
-
17
- lines, codelines = 0, 0
18
- end
19
-
20
- puts "Total: Lines #{total_lines}, LOC #{total_codelines}"
21
- end
22
- end
data/rakelib/rubocop.rake DELETED
@@ -1,10 +0,0 @@
1
- require 'rubocop/rake_task'
2
-
3
- desc 'Run RuboCop on the lib directory'
4
- RuboCop::RakeTask.new(:rubocop) do |task|
5
- task.patterns = ['lib/**/*.rb']
6
- # only show the files with failures
7
- task.formatters = ['progress']
8
- # don't abort rake on failure
9
- task.fail_on_error = false
10
- end
data/rakelib/spec.rake DELETED
@@ -1,11 +0,0 @@
1
- require 'rake/clean'
2
- require 'rspec/core/rake_task'
3
-
4
- CLOBBER.include('coverage')
5
-
6
- namespace :spec do
7
- RSpec::Core::RakeTask.new(:all)
8
- end
9
-
10
- desc 'Alias to spec:all'
11
- task 'spec' => 'spec:all'
data/rakelib/yard.rake DELETED
@@ -1,11 +0,0 @@
1
- begin
2
- require 'yard'
3
- require 'yard/rake/yardoc_task'
4
-
5
- YARD::Rake::YardocTask.new do |t|
6
- t.files = ['lib/**/*.rb', 'generated/**/*.rb']
7
- t.options = ['--verbose', '--markup', 'markdown']
8
- end
9
- rescue LoadError
10
- puts "YARD not available"
11
- end
data/samples/cli/.env DELETED
@@ -1,4 +0,0 @@
1
- GOOGLE_API_KEY=AIzaSyC6GvjvPlEzJpTW2bW2t0MPHQTfltTosHk
2
- GOOGLE_CLIENT_ID=479164972499-i7j6av7bp2s4on5ltb7pj2lb2iu5a8gi.apps.googleusercontent.com
3
- GOOGLE_CLIENT_SECRET=JBotCTG5biFWGz43jdQSZaa3
4
- GOOGLE_APPLICATION_CREDENTIALS=~/Downloads/ruby-samples-cred.json
data/samples/cli/Gemfile DELETED
@@ -1,7 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- gem 'google-api-client', '~> 0.9'
4
- gem 'thor', '~> 0.19'
5
- gem 'os', '~> 0.9'
6
- gem 'rmail', '~> 1.1'
7
- gem 'dotenv'
@@ -1,51 +0,0 @@
1
- # API Samples
2
-
3
- This directory contains a small but growing collection of samples for various
4
- APIs. Each sample can be run on the command line from the `google-api-samples`
5
- script.
6
-
7
- Contributions of new samples are welcome.
8
-
9
- # Setup
10
-
11
- Depending on which particular samples you want to run, different
12
- steps may be required. Some samples, like Pub/Sub, require a service account,
13
- others like Drive, Calendar, and YouTube require an OAuth Client ID. And in
14
- some cases like Translate, only an API key is needed.
15
-
16
- * Create a project at https://console.developers.google.com
17
- * Go to the `API Manager` and enable the APIs you'd like to try
18
- * Go to `Credentials` and create the appropriate type of credential for the sample
19
- * For keys, use 'Server key' as the type
20
- * For OAuth Client IDs, use 'Other' as the type
21
- * For service accounts, use the 'JSON' key type
22
-
23
- Additional details on how to enable APIs and create credentials can be
24
- found in the help guide in the console.
25
-
26
-
27
- ## Example Environment Settings
28
-
29
- For convenience, application credentials can be read from the shell environment
30
- or placed in a .env file.
31
-
32
- After setup, your .env file might look something like:
33
-
34
- ```
35
- GOOGLE_API_KEY=AIzaSyC6GvjvPlEzJpTW2bW2t0MPHXXXXXXXXXX
36
- GOOGLE_CLIENT_ID=479164972499-i7j6av7bp2s4on5ltb7pjXXXXXXXXXX.apps.googleusercontent.com
37
- GOOGLE_CLIENT_SECRET=JBotCTG5biFWGzXXXXXXXXXX
38
- GOOGLE_APPLICATION_CREDENTIALS=~/ruby-samples-cred.json
39
- ```
40
-
41
- # Running the samples
42
-
43
- To list the available sample modules, run the script:
44
- ```
45
- google-api-samples
46
- ```
47
-
48
- To get help on a specific set of samples, run:
49
- ```
50
- google-api-samples help <module>
51
- ```
@@ -1,32 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- $:.unshift(File.expand_path("../lib", __FILE__))
4
-
5
- require 'thor'
6
- require 'dotenv'
7
-
8
-
9
- # Small script to allow executing samples from the command line.
10
- # Each sample is loaded as a subcommand.
11
- #
12
- # Example usage:
13
- #
14
- # google-api-samples drive upload myfile.txt
15
- #
16
- #
17
- class App < Thor
18
-
19
- # Load all the samples and register them as subcommands
20
- Dir.glob('./lib/samples/*.rb').each do |file|
21
- require file
22
- end
23
-
24
- Samples.constants.each do |const|
25
- desc const.downcase, "#{const} samples"
26
- subcommand const.downcase, Samples.const_get(const)
27
- end
28
-
29
- end
30
-
31
- Dotenv.load
32
- App.start(ARGV)
@@ -1,95 +0,0 @@
1
- # Copyright 2016 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 'googleauth'
16
- require 'googleauth/stores/file_token_store'
17
- require 'fileutils'
18
- require 'thor'
19
- require 'os'
20
-
21
- # Base command line module for samples. Provides authorization support,
22
- # either using application default credentials or user authorization
23
- # depending on the use case.
24
- class BaseCli < Thor
25
- include Thor::Actions
26
-
27
- OOB_URI = 'urn:ietf:wg:oauth:2.0:oob'
28
-
29
- class_option :user, :type => :string
30
- class_option :api_key, :type => :string
31
-
32
- no_commands do
33
-
34
- # Returns the path to the client_secrets.json file.
35
- def client_secrets_path
36
- return ENV['GOOGLE_CLIENT_SECRETS'] if ENV.has_key?('GOOGLE_CLIENT_SECRETS')
37
- return well_known_path_for('client_secrets.json')
38
- end
39
-
40
- # Returns the path to the token store.
41
- def token_store_path
42
- return ENV['GOOGLE_CREDENTIAL_STORE'] if ENV.has_key?('GOOGLE_CREDENTIAL_STORE')
43
- return well_known_path_for('credentials.yaml')
44
- end
45
-
46
- # Builds a path to a file in $HOME/.config/google (or %APPDATA%/google,
47
- # on Windows)
48
- def well_known_path_for(file)
49
- if OS.windows?
50
- dir = ENV.fetch('HOME'){ ENV['APPDATA']}
51
- File.join(dir, 'google', file)
52
- else
53
- File.join(ENV['HOME'], '.config', 'google', file)
54
- end
55
- end
56
-
57
- # Returns application credentials for the given scope.
58
- def application_credentials_for(scope)
59
- Google::Auth.get_application_default(scope)
60
- end
61
-
62
- # Returns user credentials for the given scope. Requests authorization
63
- # if requrired.
64
- def user_credentials_for(scope)
65
- FileUtils.mkdir_p(File.dirname(token_store_path))
66
-
67
- if ENV['GOOGLE_CLIENT_ID']
68
- client_id = Google::Auth::ClientId.new(ENV['GOOGLE_CLIENT_ID'], ENV['GOOGLE_CLIENT_SECRET'])
69
- else
70
- client_id = Google::Auth::ClientId.from_file(client_secrets_path)
71
- end
72
- token_store = Google::Auth::Stores::FileTokenStore.new(:file => token_store_path)
73
- authorizer = Google::Auth::UserAuthorizer.new(client_id, scope, token_store)
74
-
75
- user_id = options[:user] || 'default'
76
-
77
- credentials = authorizer.get_credentials(user_id)
78
- if credentials.nil?
79
- url = authorizer.get_authorization_url(base_url: OOB_URI)
80
- say "Open the following URL in your browser and authorize the application."
81
- say url
82
- code = ask "Enter the authorization code:"
83
- credentials = authorizer.get_and_store_credentials_from_code(
84
- user_id: user_id, code: code, base_url: OOB_URI)
85
- end
86
- credentials
87
- end
88
-
89
- # Gets the API key of the client
90
- def api_key
91
- ENV['GOOGLE_API_KEY'] || options[:api_key]
92
- end
93
-
94
- end
95
- end
@@ -1,99 +0,0 @@
1
- # Copyright 2017 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/adsense_v1_4'
16
- require 'base_cli'
17
-
18
- module Samples
19
- # Examples for the Adsense API
20
- #
21
- # Sample usage:
22
- #
23
- # $ ./google-api-samples adsense list_accounts
24
- # $ ./google-api-samples adsense list_account_ad_clients pub-0000000000000000
25
- # $ ./google-api-samples adsense list_account_ad_units pub-0000000000000000 ca-pub-0000000000000000
26
- # $ ./google-api-samples adsense get_account_ad_unit_ad_code pub-0000000000000000 ca-pub-0000000000000000 ca-pub-0000000000000000:0000000000
27
- #
28
- class Adsense < BaseCli
29
- Adsense = Google::Apis::AdsenseV1_4
30
-
31
- desc 'list_accounts', 'List all accounts available to this AdSense account'
32
- method_option :max_results, type: :numeric, default: 100
33
- def list_accounts
34
- adsense = Adsense::AdSenseService.new
35
- adsense.authorization = user_credentials_for(Adsense::AUTH_ADSENSE)
36
-
37
- result = adsense.list_accounts(max_results: options[:max_results])
38
- if result.items
39
- result.items.each { |account| puts "#{account.id} #{account.kind} #{account.name} #{account.premium} #{account.timezone}" }
40
- end
41
- end
42
-
43
- desc(
44
- 'list_account_ad_clients ACCOUNT_ID',
45
- 'List all ad clients in the specified account'
46
- )
47
- method_option :max_results, type: :numeric, default: 100
48
- def list_account_ad_clients(account_id)
49
- adsense = Adsense::AdSenseService.new
50
- adsense.authorization = user_credentials_for(Adsense::AUTH_ADSENSE)
51
-
52
- result = adsense.list_account_ad_clients(
53
- account_id,
54
- max_results: options[:max_results]
55
- )
56
- if result.items
57
- result.items.each { |ad_client| puts ad_client.id }
58
- end
59
- end
60
-
61
- desc(
62
- 'list_account_ad_units ACCOUNT_ID AD_CLIENT_ID',
63
- 'List all ad units in the specified ad client for the specified account'
64
- )
65
- method_option :max_results, type: :numeric, default: 100
66
- method_option :include_inactive, type: :boolean, default: true
67
- def list_account_ad_units(account_id, ad_client_id)
68
- adsense = Adsense::AdSenseService.new
69
- adsense.authorization = user_credentials_for(Adsense::AUTH_ADSENSE)
70
-
71
- result = adsense.list_account_ad_units(
72
- account_id, ad_client_id,
73
- max_results: options[:max_results],
74
- include_inactive: options[:include_inactive]
75
- )
76
- if result.items
77
- result.items.each do |ad_unit|
78
- puts "#{ad_unit.id} #{ad_unit.name} #{ad_unit.status} #{ad_unit.code}"
79
- end
80
- end
81
- end
82
-
83
- desc(
84
- 'get_account_ad_unit_ad_code ACCOUNT_ID AD_CLIENT_ID AD_UNIT_ID',
85
- 'Get ad code for the specified ad unit'
86
- )
87
- def get_account_ad_unit_ad_code(account_id, ad_client_id, ad_unit_id)
88
- adsense = Adsense::AdSenseService.new
89
- adsense.authorization = user_credentials_for(Adsense::AUTH_ADSENSE)
90
-
91
- result = adsense.get_account_ad_unit_ad_code(
92
- account_id,
93
- ad_client_id,
94
- ad_unit_id
95
- )
96
- puts result.ad_code
97
- end
98
- end
99
- end