volcano-sdk 0.5.2

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 (458) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +203 -0
  3. data/README.md +758 -0
  4. data/lib/volcano/auth.rb +113 -0
  5. data/lib/volcano/auth_anonymous.rb +51 -0
  6. data/lib/volcano/auth_confirm_email.rb +19 -0
  7. data/lib/volcano/auth_email_change.rb +75 -0
  8. data/lib/volcano/auth_get_user.rb +110 -0
  9. data/lib/volcano/auth_hosted.rb +43 -0
  10. data/lib/volcano/auth_oauth.rb +102 -0
  11. data/lib/volcano/auth_oauth_api.rb +51 -0
  12. data/lib/volcano/auth_oauth_sign_in.rb +61 -0
  13. data/lib/volcano/auth_oauth_token.rb +51 -0
  14. data/lib/volcano/auth_refresh.rb +117 -0
  15. data/lib/volcano/auth_resend_confirmation.rb +19 -0
  16. data/lib/volcano/auth_reset_password.rb +23 -0
  17. data/lib/volcano/auth_reset_password_for_email.rb +19 -0
  18. data/lib/volcano/auth_sessions.rb +139 -0
  19. data/lib/volcano/auth_sign_up.rb +40 -0
  20. data/lib/volcano/auth_state.rb +148 -0
  21. data/lib/volcano/auth_update_user.rb +32 -0
  22. data/lib/volcano/client.rb +121 -0
  23. data/lib/volcano/connection_string.rb +85 -0
  24. data/lib/volcano/database.rb +243 -0
  25. data/lib/volcano/errors.rb +38 -0
  26. data/lib/volcano/function_resolution.rb +120 -0
  27. data/lib/volcano/function_response.rb +26 -0
  28. data/lib/volcano/functions.rb +136 -0
  29. data/lib/volcano/generated/lib/volcano-generated/api/anon_keys_api.rb +471 -0
  30. data/lib/volcano/generated/lib/volcano-generated/api/auth_admin_api.rb +739 -0
  31. data/lib/volcano/generated/lib/volcano-generated/api/auth_configuration_api.rb +1798 -0
  32. data/lib/volcano/generated/lib/volcano-generated/api/authentication_api.rb +1523 -0
  33. data/lib/volcano/generated/lib/volcano-generated/api/database_backups_api.rb +791 -0
  34. data/lib/volcano/generated/lib/volcano-generated/api/database_branches_api.rb +665 -0
  35. data/lib/volcano/generated/lib/volcano-generated/api/database_queries_api.rb +905 -0
  36. data/lib/volcano/generated/lib/volcano-generated/api/databases_api.rb +819 -0
  37. data/lib/volcano/generated/lib/volcano-generated/api/frontends_api.rb +913 -0
  38. data/lib/volcano/generated/lib/volcano-generated/api/functions_api.rb +1355 -0
  39. data/lib/volcano/generated/lib/volcano-generated/api/git_connections_api.rb +1012 -0
  40. data/lib/volcano/generated/lib/volcano-generated/api/locks_api.rb +480 -0
  41. data/lib/volcano/generated/lib/volcano-generated/api/logs_api.rb +250 -0
  42. data/lib/volcano/generated/lib/volcano-generated/api/o_auth_authentication_api.rb +962 -0
  43. data/lib/volcano/generated/lib/volcano-generated/api/o_auth_configuration_api.rb +452 -0
  44. data/lib/volcano/generated/lib/volcano-generated/api/project_imports_api.rb +599 -0
  45. data/lib/volcano/generated/lib/volcano-generated/api/projects_api.rb +1862 -0
  46. data/lib/volcano/generated/lib/volcano-generated/api/realtime_api.rb +222 -0
  47. data/lib/volcano/generated/lib/volcano-generated/api/service_keys_api.rb +402 -0
  48. data/lib/volcano/generated/lib/volcano-generated/api/storage_admin_api.rb +189 -0
  49. data/lib/volcano/generated/lib/volcano-generated/api/storage_buckets_api.rb +437 -0
  50. data/lib/volcano/generated/lib/volcano-generated/api/storage_objects_api.rb +857 -0
  51. data/lib/volcano/generated/lib/volcano-generated/api/storage_policies_api.rb +277 -0
  52. data/lib/volcano/generated/lib/volcano-generated/api/system_api.rb +79 -0
  53. data/lib/volcano/generated/lib/volcano-generated/api/variables_api.rb +454 -0
  54. data/lib/volcano/generated/lib/volcano-generated/api_client.rb +393 -0
  55. data/lib/volcano/generated/lib/volcano-generated/api_error.rb +58 -0
  56. data/lib/volcano/generated/lib/volcano-generated/api_model_base.rb +88 -0
  57. data/lib/volcano/generated/lib/volcano-generated/configuration.rb +337 -0
  58. data/lib/volcano/generated/lib/volcano-generated/models/anon_key.rb +257 -0
  59. data/lib/volcano/generated/lib/volcano-generated/models/auth_config.rb +728 -0
  60. data/lib/volcano/generated/lib/volcano-generated/models/auth_confirm_email200_response.rb +181 -0
  61. data/lib/volcano/generated/lib/volcano-generated/models/auth_confirm_email_change200_response.rb +156 -0
  62. data/lib/volcano/generated/lib/volcano-generated/models/auth_confirm_email_change_request.rb +164 -0
  63. data/lib/volcano/generated/lib/volcano-generated/models/auth_confirm_email_request.rb +165 -0
  64. data/lib/volcano/generated/lib/volcano-generated/models/auth_convert_anonymous200_response.rb +147 -0
  65. data/lib/volcano/generated/lib/volcano-generated/models/auth_device_authorize_request.rb +165 -0
  66. data/lib/volcano/generated/lib/volcano-generated/models/auth_device_token_request.rb +240 -0
  67. data/lib/volcano/generated/lib/volcano-generated/models/auth_device_verify200_response.rb +156 -0
  68. data/lib/volcano/generated/lib/volcano-generated/models/auth_device_verify_request.rb +209 -0
  69. data/lib/volcano/generated/lib/volcano-generated/models/auth_forgot_password200_response.rb +147 -0
  70. data/lib/volcano/generated/lib/volcano-generated/models/auth_forgot_password_request.rb +164 -0
  71. data/lib/volcano/generated/lib/volcano-generated/models/auth_get_my_sessions200_response.rb +231 -0
  72. data/lib/volcano/generated/lib/volcano-generated/models/auth_hosted_page.rb +225 -0
  73. data/lib/volcano/generated/lib/volcano-generated/models/auth_hosted_page_defaults.rb +193 -0
  74. data/lib/volcano/generated/lib/volcano-generated/models/auth_hosted_page_response.rb +203 -0
  75. data/lib/volcano/generated/lib/volcano-generated/models/auth_hosted_page_runtime.rb +220 -0
  76. data/lib/volcano/generated/lib/volcano-generated/models/auth_identities_response.rb +166 -0
  77. data/lib/volcano/generated/lib/volcano-generated/models/auth_identity.rb +273 -0
  78. data/lib/volcano/generated/lib/volcano-generated/models/auth_insights_interval.rb +41 -0
  79. data/lib/volcano/generated/lib/volcano-generated/models/auth_insights_response.rb +270 -0
  80. data/lib/volcano/generated/lib/volcano-generated/models/auth_insights_series_point.rb +263 -0
  81. data/lib/volcano/generated/lib/volcano-generated/models/auth_insights_summary.rb +210 -0
  82. data/lib/volcano/generated/lib/volcano-generated/models/auth_insights_window.rb +238 -0
  83. data/lib/volcano/generated/lib/volcano-generated/models/auth_link_o_auth_provider200_response.rb +147 -0
  84. data/lib/volcano/generated/lib/volcano-generated/models/auth_list_o_auth_providers200_response.rb +149 -0
  85. data/lib/volcano/generated/lib/volcano-generated/models/auth_list_o_auth_providers200_response_providers_inner.rb +165 -0
  86. data/lib/volcano/generated/lib/volcano-generated/models/auth_method_summary.rb +370 -0
  87. data/lib/volcano/generated/lib/volcano-generated/models/auth_methods_response.rb +166 -0
  88. data/lib/volcano/generated/lib/volcano-generated/models/auth_o_auth_exchange_request.rb +190 -0
  89. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_appearance_defaults.rb +212 -0
  90. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_appearance_options.rb +306 -0
  91. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_appearance_response.rb +299 -0
  92. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_density.rb +41 -0
  93. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_font.rb +43 -0
  94. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_layout.rb +41 -0
  95. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_radius.rb +42 -0
  96. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_scale.rb +41 -0
  97. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_theme.rb +318 -0
  98. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_theme_colors.rb +323 -0
  99. data/lib/volcano/generated/lib/volcano-generated/models/auth_password_policy.rb +409 -0
  100. data/lib/volcano/generated/lib/volcano-generated/models/auth_platform_exchange_request.rb +164 -0
  101. data/lib/volcano/generated/lib/volcano-generated/models/auth_refresh_request.rb +190 -0
  102. data/lib/volcano/generated/lib/volcano-generated/models/auth_request_email_change200_response.rb +156 -0
  103. data/lib/volcano/generated/lib/volcano-generated/models/auth_request_email_change_request.rb +164 -0
  104. data/lib/volcano/generated/lib/volcano-generated/models/auth_reset_password200_response.rb +147 -0
  105. data/lib/volcano/generated/lib/volcano-generated/models/auth_reset_password_request.rb +192 -0
  106. data/lib/volcano/generated/lib/volcano-generated/models/auth_session.rb +393 -0
  107. data/lib/volcano/generated/lib/volcano-generated/models/auth_signin_request.rb +233 -0
  108. data/lib/volcano/generated/lib/volcano-generated/models/auth_signup_anonymous_request.rb +150 -0
  109. data/lib/volcano/generated/lib/volcano-generated/models/auth_signup_request.rb +202 -0
  110. data/lib/volcano/generated/lib/volcano-generated/models/auth_signup_response.rb +193 -0
  111. data/lib/volcano/generated/lib/volcano-generated/models/auth_token_response.rb +254 -0
  112. data/lib/volcano/generated/lib/volcano-generated/models/auth_update_user_request.rb +160 -0
  113. data/lib/volcano/generated/lib/volcano-generated/models/auth_user.rb +330 -0
  114. data/lib/volcano/generated/lib/volcano-generated/models/ban_auth_user_request.rb +148 -0
  115. data/lib/volcano/generated/lib/volcano-generated/models/ban_user_response.rb +278 -0
  116. data/lib/volcano/generated/lib/volcano-generated/models/batch_function_deploy_failure.rb +242 -0
  117. data/lib/volcano/generated/lib/volcano-generated/models/batch_function_deploy_response.rb +205 -0
  118. data/lib/volcano/generated/lib/volcano-generated/models/call_o_auth_provider_api200_response.rb +272 -0
  119. data/lib/volcano/generated/lib/volcano-generated/models/call_o_auth_provider_api_request.rb +223 -0
  120. data/lib/volcano/generated/lib/volcano-generated/models/complete_upload_session_response.rb +148 -0
  121. data/lib/volcano/generated/lib/volcano-generated/models/configure_auth_methods_request.rb +167 -0
  122. data/lib/volcano/generated/lib/volcano-generated/models/configure_auth_methods_request_oauth_providers_inner.rb +156 -0
  123. data/lib/volcano/generated/lib/volcano-generated/models/connect_project_git_request.rb +250 -0
  124. data/lib/volcano/generated/lib/volcano-generated/models/create_anon_key_request.rb +228 -0
  125. data/lib/volcano/generated/lib/volcano-generated/models/create_database_backup_request.rb +185 -0
  126. data/lib/volcano/generated/lib/volcano-generated/models/create_database_branch_request.rb +223 -0
  127. data/lib/volcano/generated/lib/volcano-generated/models/create_database_request.rb +290 -0
  128. data/lib/volcano/generated/lib/volcano-generated/models/create_database_restore_request.rb +187 -0
  129. data/lib/volcano/generated/lib/volcano-generated/models/create_email_template_request.rb +270 -0
  130. data/lib/volcano/generated/lib/volcano-generated/models/create_frontend_custom_domain_request.rb +191 -0
  131. data/lib/volcano/generated/lib/volcano-generated/models/create_function_scheduler_request.rb +252 -0
  132. data/lib/volcano/generated/lib/volcano-generated/models/create_o_auth_config_request.rb +230 -0
  133. data/lib/volcano/generated/lib/volcano-generated/models/create_project_request.rb +219 -0
  134. data/lib/volcano/generated/lib/volcano-generated/models/create_service_key_request.rb +206 -0
  135. data/lib/volcano/generated/lib/volcano-generated/models/create_storage_bucket_request.rb +216 -0
  136. data/lib/volcano/generated/lib/volcano-generated/models/create_storage_policy_request.rb +243 -0
  137. data/lib/volcano/generated/lib/volcano-generated/models/create_upload_session_request.rb +276 -0
  138. data/lib/volcano/generated/lib/volcano-generated/models/create_upload_session_response.rb +179 -0
  139. data/lib/volcano/generated/lib/volcano-generated/models/create_variable_request.rb +219 -0
  140. data/lib/volcano/generated/lib/volcano-generated/models/database.rb +442 -0
  141. data/lib/volcano/generated/lib/volcano-generated/models/database_backup.rb +283 -0
  142. data/lib/volcano/generated/lib/volcano-generated/models/database_backup_list.rb +175 -0
  143. data/lib/volcano/generated/lib/volcano-generated/models/database_backup_schedule.rb +167 -0
  144. data/lib/volcano/generated/lib/volcano-generated/models/database_backup_schedule_entry.rb +301 -0
  145. data/lib/volcano/generated/lib/volcano-generated/models/database_branch.rb +480 -0
  146. data/lib/volcano/generated/lib/volcano-generated/models/database_branch_list.rb +166 -0
  147. data/lib/volcano/generated/lib/volcano-generated/models/database_branch_storage.rb +228 -0
  148. data/lib/volcano/generated/lib/volcano-generated/models/database_delete_request.rb +203 -0
  149. data/lib/volcano/generated/lib/volcano-generated/models/database_insert_request.rb +194 -0
  150. data/lib/volcano/generated/lib/volcano-generated/models/database_query_filter.rb +242 -0
  151. data/lib/volcano/generated/lib/volcano-generated/models/database_query_filter_value.rb +106 -0
  152. data/lib/volcano/generated/lib/volcano-generated/models/database_query_filter_value_one_of_inner.rb +105 -0
  153. data/lib/volcano/generated/lib/volcano-generated/models/database_query_order.rb +187 -0
  154. data/lib/volcano/generated/lib/volcano-generated/models/database_query_performance_database.rb +190 -0
  155. data/lib/volcano/generated/lib/volcano-generated/models/database_query_performance_item.rb +411 -0
  156. data/lib/volcano/generated/lib/volcano-generated/models/database_query_performance_response.rb +166 -0
  157. data/lib/volcano/generated/lib/volcano-generated/models/database_query_result.rb +161 -0
  158. data/lib/volcano/generated/lib/volcano-generated/models/database_restore.rb +388 -0
  159. data/lib/volcano/generated/lib/volcano-generated/models/database_restore_list.rb +166 -0
  160. data/lib/volcano/generated/lib/volcano-generated/models/database_restore_window.rb +159 -0
  161. data/lib/volcano/generated/lib/volcano-generated/models/database_select_request.rb +268 -0
  162. data/lib/volcano/generated/lib/volcano-generated/models/database_stats.rb +447 -0
  163. data/lib/volcano/generated/lib/volcano-generated/models/database_update_request.rb +232 -0
  164. data/lib/volcano/generated/lib/volcano-generated/models/delete_database202_response.rb +156 -0
  165. data/lib/volcano/generated/lib/volcano-generated/models/delete_database_backup200_response.rb +190 -0
  166. data/lib/volcano/generated/lib/volcano-generated/models/delete_database_branch202_response.rb +190 -0
  167. data/lib/volcano/generated/lib/volcano-generated/models/deployment_phase.rb +263 -0
  168. data/lib/volcano/generated/lib/volcano-generated/models/deployment_progress.rb +324 -0
  169. data/lib/volcano/generated/lib/volcano-generated/models/deployment_reference.rb +165 -0
  170. data/lib/volcano/generated/lib/volcano-generated/models/device_authorization_response.rb +296 -0
  171. data/lib/volcano/generated/lib/volcano-generated/models/email_template.rb +305 -0
  172. data/lib/volcano/generated/lib/volcano-generated/models/error.rb +174 -0
  173. data/lib/volcano/generated/lib/volcano-generated/models/export_project_source_request.rb +174 -0
  174. data/lib/volcano/generated/lib/volcano-generated/models/frontend.rb +504 -0
  175. data/lib/volcano/generated/lib/volcano-generated/models/frontend_custom_domain_response.rb +370 -0
  176. data/lib/volcano/generated/lib/volcano-generated/models/frontend_custom_domain_tls_config.rb +253 -0
  177. data/lib/volcano/generated/lib/volcano-generated/models/frontend_deployment.rb +487 -0
  178. data/lib/volcano/generated/lib/volcano-generated/models/frontend_domain_routing_record.rb +240 -0
  179. data/lib/volcano/generated/lib/volcano-generated/models/frontend_domain_verification_record.rb +216 -0
  180. data/lib/volcano/generated/lib/volcano-generated/models/frontend_usage_daily_entry.rb +247 -0
  181. data/lib/volcano/generated/lib/volcano-generated/models/frontend_usage_data.rb +204 -0
  182. data/lib/volcano/generated/lib/volcano-generated/models/frontend_usage_history_response.rb +298 -0
  183. data/lib/volcano/generated/lib/volcano-generated/models/function.rb +565 -0
  184. data/lib/volcano/generated/lib/volcano-generated/models/function_deployment.rb +477 -0
  185. data/lib/volcano/generated/lib/volcano-generated/models/function_http_auth_mode.rb +40 -0
  186. data/lib/volcano/generated/lib/volcano-generated/models/function_invocation_mode.rb +40 -0
  187. data/lib/volcano/generated/lib/volcano-generated/models/function_invocation_request.rb +150 -0
  188. data/lib/volcano/generated/lib/volcano-generated/models/function_region.rb +219 -0
  189. data/lib/volcano/generated/lib/volcano-generated/models/function_runtime_deployment.rb +250 -0
  190. data/lib/volcano/generated/lib/volcano-generated/models/function_runtime_option.rb +245 -0
  191. data/lib/volcano/generated/lib/volcano-generated/models/function_runtimes_response.rb +166 -0
  192. data/lib/volcano/generated/lib/volcano-generated/models/function_scheduler.rb +330 -0
  193. data/lib/volcano/generated/lib/volcano-generated/models/function_scheduler_list_response.rb +290 -0
  194. data/lib/volcano/generated/lib/volcano-generated/models/get_auth_methods200_response.rb +178 -0
  195. data/lib/volcano/generated/lib/volcano-generated/models/get_auth_methods200_response_email_password.rb +165 -0
  196. data/lib/volcano/generated/lib/volcano-generated/models/get_auth_methods200_response_oauth_providers_inner.rb +194 -0
  197. data/lib/volcano/generated/lib/volcano-generated/models/git_connect_start_response.rb +164 -0
  198. data/lib/volcano/generated/lib/volcano-generated/models/git_connection.rb +346 -0
  199. data/lib/volcano/generated/lib/volcano-generated/models/git_connections_response.rb +166 -0
  200. data/lib/volcano/generated/lib/volcano-generated/models/git_installation.rb +242 -0
  201. data/lib/volcano/generated/lib/volcano-generated/models/git_installations_response.rb +166 -0
  202. data/lib/volcano/generated/lib/volcano-generated/models/git_repositories_response.rb +166 -0
  203. data/lib/volcano/generated/lib/volcano-generated/models/git_repository.rb +270 -0
  204. data/lib/volcano/generated/lib/volcano-generated/models/hosted_auth_page_type.rb +44 -0
  205. data/lib/volcano/generated/lib/volcano-generated/models/hosted_login_email_check_request.rb +164 -0
  206. data/lib/volcano/generated/lib/volcano-generated/models/hosted_login_email_check_response.rb +147 -0
  207. data/lib/volcano/generated/lib/volcano-generated/models/hosted_login_options_response.rb +185 -0
  208. data/lib/volcano/generated/lib/volcano-generated/models/hosted_renderable_page_type.rb +43 -0
  209. data/lib/volcano/generated/lib/volcano-generated/models/import_connect_start_response.rb +164 -0
  210. data/lib/volcano/generated/lib/volcano-generated/models/import_connection.rb +432 -0
  211. data/lib/volcano/generated/lib/volcano-generated/models/import_connections_response.rb +166 -0
  212. data/lib/volcano/generated/lib/volcano-generated/models/import_provider.rb +39 -0
  213. data/lib/volcano/generated/lib/volcano-generated/models/import_source.rb +242 -0
  214. data/lib/volcano/generated/lib/volcano-generated/models/import_sources_response.rb +166 -0
  215. data/lib/volcano/generated/lib/volcano-generated/models/list_anon_keys200_response.rb +189 -0
  216. data/lib/volcano/generated/lib/volcano-generated/models/list_available_o_auth_providers200_response.rb +149 -0
  217. data/lib/volcano/generated/lib/volcano-generated/models/list_available_o_auth_providers200_response_providers_inner.rb +167 -0
  218. data/lib/volcano/generated/lib/volcano-generated/models/list_database_regions200_response_inner.rb +158 -0
  219. data/lib/volcano/generated/lib/volcano-generated/models/list_email_templates200_response.rb +149 -0
  220. data/lib/volcano/generated/lib/volcano-generated/models/list_o_auth_configs200_response.rb +149 -0
  221. data/lib/volcano/generated/lib/volcano-generated/models/list_postgres_versions200_response_inner.rb +178 -0
  222. data/lib/volcano/generated/lib/volcano-generated/models/list_storage_buckets200_response.rb +104 -0
  223. data/lib/volcano/generated/lib/volcano-generated/models/list_storage_objects_admin200_response.rb +205 -0
  224. data/lib/volcano/generated/lib/volcano-generated/models/live_log_level.rb +44 -0
  225. data/lib/volcano/generated/lib/volcano-generated/models/log_activity_bucket.rb +246 -0
  226. data/lib/volcano/generated/lib/volcano-generated/models/log_activity_bucket_counts.rb +226 -0
  227. data/lib/volcano/generated/lib/volcano-generated/models/log_activity_request.rb +252 -0
  228. data/lib/volcano/generated/lib/volcano-generated/models/log_activity_response.rb +194 -0
  229. data/lib/volcano/generated/lib/volcano-generated/models/log_database_request_resource.rb +221 -0
  230. data/lib/volcano/generated/lib/volcano-generated/models/log_deployment.rb +210 -0
  231. data/lib/volcano/generated/lib/volcano-generated/models/log_deployment_request_selector.rb +170 -0
  232. data/lib/volcano/generated/lib/volcano-generated/models/log_event.rb +257 -0
  233. data/lib/volcano/generated/lib/volcano-generated/models/log_event_body.rb +108 -0
  234. data/lib/volcano/generated/lib/volcano-generated/models/log_frontend_request_resource.rb +230 -0
  235. data/lib/volcano/generated/lib/volcano-generated/models/log_function_request_resource.rb +230 -0
  236. data/lib/volcano/generated/lib/volcano-generated/models/log_request_resource.rb +58 -0
  237. data/lib/volcano/generated/lib/volcano-generated/models/log_resource.rb +227 -0
  238. data/lib/volcano/generated/lib/volcano-generated/models/log_search_event.rb +297 -0
  239. data/lib/volcano/generated/lib/volcano-generated/models/log_search_request.rb +264 -0
  240. data/lib/volcano/generated/lib/volcano-generated/models/log_search_response.rb +232 -0
  241. data/lib/volcano/generated/lib/volcano-generated/models/log_stream_request.rb +244 -0
  242. data/lib/volcano/generated/lib/volcano-generated/models/metric_usage_data.rb +278 -0
  243. data/lib/volcano/generated/lib/volcano-generated/models/o_auth_config.rb +256 -0
  244. data/lib/volcano/generated/lib/volcano-generated/models/o_auth_error_response.rb +173 -0
  245. data/lib/volcano/generated/lib/volcano-generated/models/paginated_auth_users.rb +284 -0
  246. data/lib/volcano/generated/lib/volcano-generated/models/paginated_databases.rb +304 -0
  247. data/lib/volcano/generated/lib/volcano-generated/models/paginated_frontend_deployments.rb +284 -0
  248. data/lib/volcano/generated/lib/volcano-generated/models/paginated_frontends.rb +304 -0
  249. data/lib/volcano/generated/lib/volcano-generated/models/paginated_function_deployments.rb +284 -0
  250. data/lib/volcano/generated/lib/volcano-generated/models/paginated_functions.rb +304 -0
  251. data/lib/volcano/generated/lib/volcano-generated/models/paginated_project_custom_domains.rb +284 -0
  252. data/lib/volcano/generated/lib/volcano-generated/models/paginated_project_deployments.rb +306 -0
  253. data/lib/volcano/generated/lib/volcano-generated/models/paginated_projects.rb +368 -0
  254. data/lib/volcano/generated/lib/volcano-generated/models/paginated_service_keys.rb +304 -0
  255. data/lib/volcano/generated/lib/volcano-generated/models/paginated_storage_buckets.rb +251 -0
  256. data/lib/volcano/generated/lib/volcano-generated/models/paginated_variables.rb +304 -0
  257. data/lib/volcano/generated/lib/volcano-generated/models/platform_exchange_response.rb +242 -0
  258. data/lib/volcano/generated/lib/volcano-generated/models/preview_auth_page_request.rb +221 -0
  259. data/lib/volcano/generated/lib/volcano-generated/models/preview_auth_page_response.rb +190 -0
  260. data/lib/volcano/generated/lib/volcano-generated/models/project.rb +419 -0
  261. data/lib/volcano/generated/lib/volcano-generated/models/project_config.rb +273 -0
  262. data/lib/volcano/generated/lib/volcano-generated/models/project_config_apply_result.rb +261 -0
  263. data/lib/volcano/generated/lib/volcano-generated/models/project_config_apply_result_entry.rb +245 -0
  264. data/lib/volcano/generated/lib/volcano-generated/models/project_config_apply_summary.rb +320 -0
  265. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth.rb +238 -0
  266. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_cors.rb +176 -0
  267. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_email.rb +175 -0
  268. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_email_from.rb +156 -0
  269. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_email_password_provider.rb +147 -0
  270. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_email_smtp.rb +184 -0
  271. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_email_verification.rb +158 -0
  272. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_managed_pages.rb +175 -0
  273. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_page_appearance.rb +156 -0
  274. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_page_layouts.rb +214 -0
  275. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_password.rb +211 -0
  276. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_password_reset.rb +167 -0
  277. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_providers.rb +159 -0
  278. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_rate_limits.rb +175 -0
  279. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_redirects.rb +180 -0
  280. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_sessions.rb +158 -0
  281. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_signup.rb +232 -0
  282. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_tokens.rb +175 -0
  283. data/lib/volcano/generated/lib/volcano-generated/models/project_config_bucket.rb +226 -0
  284. data/lib/volcano/generated/lib/volcano-generated/models/project_config_bucket_policy.rb +250 -0
  285. data/lib/volcano/generated/lib/volcano-generated/models/project_config_custom_domain.rb +175 -0
  286. data/lib/volcano/generated/lib/volcano-generated/models/project_config_database.rb +274 -0
  287. data/lib/volcano/generated/lib/volcano-generated/models/project_config_email_template.rb +205 -0
  288. data/lib/volcano/generated/lib/volcano-generated/models/project_config_email_templates.rb +175 -0
  289. data/lib/volcano/generated/lib/volcano-generated/models/project_config_frontend.rb +183 -0
  290. data/lib/volcano/generated/lib/volcano-generated/models/project_config_function.rb +248 -0
  291. data/lib/volcano/generated/lib/volcano-generated/models/project_config_hosted_page.rb +203 -0
  292. data/lib/volcano/generated/lib/volcano-generated/models/project_config_hosted_pages.rb +193 -0
  293. data/lib/volcano/generated/lib/volcano-generated/models/project_config_missing_resource.rb +214 -0
  294. data/lib/volcano/generated/lib/volcano-generated/models/project_config_o_auth_provider.rb +238 -0
  295. data/lib/volcano/generated/lib/volcano-generated/models/project_config_project.rb +209 -0
  296. data/lib/volcano/generated/lib/volcano-generated/models/project_config_realtime.rb +174 -0
  297. data/lib/volcano/generated/lib/volcano-generated/models/project_config_scheduler.rb +229 -0
  298. data/lib/volcano/generated/lib/volcano-generated/models/project_config_skipped_resource.rb +240 -0
  299. data/lib/volcano/generated/lib/volcano-generated/models/project_config_validation_error.rb +201 -0
  300. data/lib/volcano/generated/lib/volcano-generated/models/project_config_validation_error_response.rb +193 -0
  301. data/lib/volcano/generated/lib/volcano-generated/models/project_config_variable.rb +199 -0
  302. data/lib/volcano/generated/lib/volcano-generated/models/project_deployment.rb +412 -0
  303. data/lib/volcano/generated/lib/volcano-generated/models/project_deployment_resource.rb +241 -0
  304. data/lib/volcano/generated/lib/volcano-generated/models/project_deployment_summary.rb +312 -0
  305. data/lib/volcano/generated/lib/volcano-generated/models/project_frontend_custom_domain.rb +403 -0
  306. data/lib/volcano/generated/lib/volcano-generated/models/project_frontend_custom_domain_all_of_frontend.rb +191 -0
  307. data/lib/volcano/generated/lib/volcano-generated/models/project_git_connection.rb +296 -0
  308. data/lib/volcano/generated/lib/volcano-generated/models/project_git_connection_summary.rb +294 -0
  309. data/lib/volcano/generated/lib/volcano-generated/models/project_git_deploy_settings.rb +239 -0
  310. data/lib/volcano/generated/lib/volcano-generated/models/project_health_category.rb +40 -0
  311. data/lib/volcano/generated/lib/volcano-generated/models/project_health_check.rb +316 -0
  312. data/lib/volcano/generated/lib/volcano-generated/models/project_health_data_status.rb +42 -0
  313. data/lib/volcano/generated/lib/volcano-generated/models/project_health_evidence.rb +251 -0
  314. data/lib/volcano/generated/lib/volcano-generated/models/project_health_resource.rb +240 -0
  315. data/lib/volcano/generated/lib/volcano-generated/models/project_health_response.rb +356 -0
  316. data/lib/volcano/generated/lib/volcano-generated/models/project_health_scope.rb +164 -0
  317. data/lib/volcano/generated/lib/volcano-generated/models/project_health_status.rb +42 -0
  318. data/lib/volcano/generated/lib/volcano-generated/models/project_health_summary.rb +186 -0
  319. data/lib/volcano/generated/lib/volcano-generated/models/project_import_action.rb +238 -0
  320. data/lib/volcano/generated/lib/volcano-generated/models/project_import_action_code.rb +42 -0
  321. data/lib/volcano/generated/lib/volcano-generated/models/project_import_destination.rb +238 -0
  322. data/lib/volcano/generated/lib/volcano-generated/models/project_import_destination_mode.rb +39 -0
  323. data/lib/volcano/generated/lib/volcano-generated/models/project_import_disposition.rb +42 -0
  324. data/lib/volcano/generated/lib/volcano-generated/models/project_import_finding.rb +327 -0
  325. data/lib/volcano/generated/lib/volcano-generated/models/project_import_impact.rb +41 -0
  326. data/lib/volcano/generated/lib/volcano-generated/models/project_import_preflight_request.rb +305 -0
  327. data/lib/volcano/generated/lib/volcano-generated/models/project_import_readiness.rb +41 -0
  328. data/lib/volcano/generated/lib/volcano-generated/models/project_import_report.rb +476 -0
  329. data/lib/volcano/generated/lib/volcano-generated/models/project_import_resource.rb +270 -0
  330. data/lib/volcano/generated/lib/volcano-generated/models/project_import_resource_kind.rb +43 -0
  331. data/lib/volcano/generated/lib/volcano-generated/models/project_import_run.rb +412 -0
  332. data/lib/volcano/generated/lib/volcano-generated/models/project_import_run_status.rb +43 -0
  333. data/lib/volcano/generated/lib/volcano-generated/models/project_import_start_request.rb +365 -0
  334. data/lib/volcano/generated/lib/volcano-generated/models/project_import_summary.rb +348 -0
  335. data/lib/volcano/generated/lib/volcano-generated/models/project_import_target.rb +39 -0
  336. data/lib/volcano/generated/lib/volcano-generated/models/project_lock_lease.rb +192 -0
  337. data/lib/volcano/generated/lib/volcano-generated/models/project_lock_lease_request.rb +183 -0
  338. data/lib/volcano/generated/lib/volcano-generated/models/project_lock_state.rb +185 -0
  339. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_data_status.rb +41 -0
  340. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_dimensions.rb +190 -0
  341. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_group_by.rb +40 -0
  342. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_metric.rb +42 -0
  343. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_query.rb +250 -0
  344. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_query_request.rb +210 -0
  345. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_query_response.rb +227 -0
  346. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_query_time_range.rb +188 -0
  347. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_result.rb +292 -0
  348. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_unit.rb +41 -0
  349. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_value.rb +199 -0
  350. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_window.rb +190 -0
  351. data/lib/volcano/generated/lib/volcano-generated/models/project_source_export.rb +302 -0
  352. data/lib/volcano/generated/lib/volcano-generated/models/project_source_export_omission.rb +218 -0
  353. data/lib/volcano/generated/lib/volcano-generated/models/project_source_export_skip.rb +217 -0
  354. data/lib/volcano/generated/lib/volcano-generated/models/project_source_export_state.rb +228 -0
  355. data/lib/volcano/generated/lib/volcano-generated/models/project_usage_response.rb +234 -0
  356. data/lib/volcano/generated/lib/volcano-generated/models/realtime_config.rb +217 -0
  357. data/lib/volcano/generated/lib/volcano-generated/models/realtime_plan_limits.rb +189 -0
  358. data/lib/volcano/generated/lib/volcano-generated/models/realtime_stats.rb +178 -0
  359. data/lib/volcano/generated/lib/volcano-generated/models/refresh_o_auth_provider_token200_response.rb +165 -0
  360. data/lib/volcano/generated/lib/volcano-generated/models/reset_database_password200_response.rb +177 -0
  361. data/lib/volcano/generated/lib/volcano-generated/models/resolve_function_response.rb +248 -0
  362. data/lib/volcano/generated/lib/volcano-generated/models/resource_reference.rb +241 -0
  363. data/lib/volcano/generated/lib/volcano-generated/models/schedule_request.rb +210 -0
  364. data/lib/volcano/generated/lib/volcano-generated/models/service_key.rb +294 -0
  365. data/lib/volcano/generated/lib/volcano-generated/models/set_project_git_production_branch_request.rb +183 -0
  366. data/lib/volcano/generated/lib/volcano-generated/models/storage_bucket.rb +282 -0
  367. data/lib/volcano/generated/lib/volcano-generated/models/storage_copy_request.rb +192 -0
  368. data/lib/volcano/generated/lib/volcano-generated/models/storage_list_response.rb +159 -0
  369. data/lib/volcano/generated/lib/volcano-generated/models/storage_move_request.rb +192 -0
  370. data/lib/volcano/generated/lib/volcano-generated/models/storage_object.rb +359 -0
  371. data/lib/volcano/generated/lib/volcano-generated/models/storage_object_with_bucket.rb +383 -0
  372. data/lib/volcano/generated/lib/volcano-generated/models/storage_policy.rb +313 -0
  373. data/lib/volcano/generated/lib/volcano-generated/models/storage_stats.rb +220 -0
  374. data/lib/volcano/generated/lib/volcano-generated/models/storage_visibility_request.rb +165 -0
  375. data/lib/volcano/generated/lib/volcano-generated/models/test_email_request.rb +234 -0
  376. data/lib/volcano/generated/lib/volcano-generated/models/test_email_response.rb +164 -0
  377. data/lib/volcano/generated/lib/volcano-generated/models/unban_user_response.rb +267 -0
  378. data/lib/volcano/generated/lib/volcano-generated/models/update_auth_config_request.rb +626 -0
  379. data/lib/volcano/generated/lib/volcano-generated/models/update_auth_hosted_page_request.rb +175 -0
  380. data/lib/volcano/generated/lib/volcano-generated/models/update_auth_page_layout_request.rb +186 -0
  381. data/lib/volcano/generated/lib/volcano-generated/models/update_auth_page_theme_request.rb +164 -0
  382. data/lib/volcano/generated/lib/volcano-generated/models/update_database_branch_request.rb +184 -0
  383. data/lib/volcano/generated/lib/volcano-generated/models/update_database_type_request.rb +190 -0
  384. data/lib/volcano/generated/lib/volcano-generated/models/update_email_template_request.rb +165 -0
  385. data/lib/volcano/generated/lib/volcano-generated/models/update_function_request.rb +201 -0
  386. data/lib/volcano/generated/lib/volcano-generated/models/update_function_scheduler_request.rb +225 -0
  387. data/lib/volcano/generated/lib/volcano-generated/models/update_o_auth_config_request.rb +187 -0
  388. data/lib/volcano/generated/lib/volcano-generated/models/update_project_git_deploy_settings_request.rb +211 -0
  389. data/lib/volcano/generated/lib/volcano-generated/models/update_project_request.rb +198 -0
  390. data/lib/volcano/generated/lib/volcano-generated/models/update_realtime_config_request.rb +179 -0
  391. data/lib/volcano/generated/lib/volcano-generated/models/update_storage_bucket_request.rb +158 -0
  392. data/lib/volcano/generated/lib/volcano-generated/models/update_variable_request.rb +164 -0
  393. data/lib/volcano/generated/lib/volcano-generated/models/upload_session_part.rb +169 -0
  394. data/lib/volcano/generated/lib/volcano-generated/models/upload_session_status_response.rb +295 -0
  395. data/lib/volcano/generated/lib/volcano-generated/models/upload_storage_object201_response.rb +104 -0
  396. data/lib/volcano/generated/lib/volcano-generated/models/usage_data_point.rb +193 -0
  397. data/lib/volcano/generated/lib/volcano-generated/models/variable.rb +389 -0
  398. data/lib/volcano/generated/lib/volcano-generated/version.rb +15 -0
  399. data/lib/volcano/generated/lib/volcano-generated.rb +405 -0
  400. data/lib/volcano/generated_transport.rb +131 -0
  401. data/lib/volcano/generated_transport_anonymous.rb +34 -0
  402. data/lib/volcano/generated_transport_auth.rb +108 -0
  403. data/lib/volcano/generated_transport_confirmation.rb +30 -0
  404. data/lib/volcano/generated_transport_database.rb +54 -0
  405. data/lib/volcano/generated_transport_email_change.rb +44 -0
  406. data/lib/volcano/generated_transport_functions.rb +108 -0
  407. data/lib/volcano/generated_transport_logs.rb +31 -0
  408. data/lib/volcano/generated_transport_oauth.rb +64 -0
  409. data/lib/volcano/generated_transport_sessions.rb +27 -0
  410. data/lib/volcano/generated_transport_storage.rb +86 -0
  411. data/lib/volcano/generated_transport_support.rb +221 -0
  412. data/lib/volcano/generated_transport_upload_session_api.rb +69 -0
  413. data/lib/volcano/generated_transport_upload_sessions.rb +67 -0
  414. data/lib/volcano/lock_auto_renewal.rb +51 -0
  415. data/lib/volcano/lock_guard.rb +135 -0
  416. data/lib/volcano/lock_lease_clock.rb +39 -0
  417. data/lib/volcano/lock_renewer.rb +73 -0
  418. data/lib/volcano/lock_session.rb +70 -0
  419. data/lib/volcano/locks.rb +109 -0
  420. data/lib/volcano/log_responses.rb +39 -0
  421. data/lib/volcano/logs.rb +82 -0
  422. data/lib/volcano/models.rb +115 -0
  423. data/lib/volcano/realtime/blocking_call.rb +32 -0
  424. data/lib/volcano/realtime/broadcast_delivery.rb +63 -0
  425. data/lib/volcano/realtime/channel_callbacks.rb +127 -0
  426. data/lib/volcano/realtime/channel_lifecycle.rb +133 -0
  427. data/lib/volcano/realtime/connection.rb +114 -0
  428. data/lib/volcano/realtime/connection_callbacks.rb +126 -0
  429. data/lib/volcano/realtime/lifecycle.rb +46 -0
  430. data/lib/volcano/realtime/postgres_batch.rb +89 -0
  431. data/lib/volcano/realtime/postgres_changes.rb +107 -0
  432. data/lib/volcano/realtime/postgres_database.rb +63 -0
  433. data/lib/volcano/realtime/postgres_delivery.rb +113 -0
  434. data/lib/volcano/realtime/postgres_expansion.rb +66 -0
  435. data/lib/volcano/realtime/presence.rb +122 -0
  436. data/lib/volcano/realtime/presence_state.rb +61 -0
  437. data/lib/volcano/realtime/protocol.rb +150 -0
  438. data/lib/volcano/realtime/protocol_dispatch.rb +114 -0
  439. data/lib/volcano/realtime/protocol_io.rb +96 -0
  440. data/lib/volcano/realtime/protocol_lifecycle.rb +122 -0
  441. data/lib/volcano/realtime/protocol_publication_dispatch.rb +121 -0
  442. data/lib/volcano/realtime/protocol_recovery.rb +117 -0
  443. data/lib/volcano/realtime/protocol_recovery_dispatch.rb +106 -0
  444. data/lib/volcano/realtime/protocol_recovery_position.rb +95 -0
  445. data/lib/volcano/realtime/reconnect.rb +88 -0
  446. data/lib/volcano/realtime.rb +260 -0
  447. data/lib/volcano/redaction.rb +60 -0
  448. data/lib/volcano/sign_up_result.rb +9 -0
  449. data/lib/volcano/storage.rb +120 -0
  450. data/lib/volcano/storage_models.rb +121 -0
  451. data/lib/volcano/storage_mutations.rb +81 -0
  452. data/lib/volcano/storage_public_url.rb +64 -0
  453. data/lib/volcano/storage_resumable_upload.rb +90 -0
  454. data/lib/volcano/storage_upload_sessions.rb +116 -0
  455. data/lib/volcano/transport.rb +60 -0
  456. data/lib/volcano/version.rb +5 -0
  457. data/lib/volcano.rb +58 -0
  458. metadata +580 -0
@@ -0,0 +1,791 @@
1
+ =begin
2
+ #Volcano Hosting API
3
+
4
+ #Public API for Volcano Hosting clients, SDKs, and CLI tooling (Port 8000). This specification intentionally excludes first-party/internal APIs. See api/openapi-internal.yaml for non-public internal and Builder operations.
5
+
6
+ The version of the OpenAPI document: 3.0.0
7
+ Contact: support@volcano.dev
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.17.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module Volcano::Generated
16
+ class DatabaseBackupsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Back up a database
23
+ # Captures the database as it is now. The backup is available immediately; its `size_bytes` appears once the storage provider has costed it. Backups are rate-limited to one per minute per database, and capped by the owner's plan.
24
+ # @param id [String] Project ID
25
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
26
+ # @param create_database_backup_request [CreateDatabaseBackupRequest]
27
+ # @param [Hash] opts the optional parameters
28
+ # @return [DatabaseBackup]
29
+ def create_database_backup(id, database_name, create_database_backup_request, opts = {})
30
+ data, _status_code, _headers = create_database_backup_with_http_info(id, database_name, create_database_backup_request, opts)
31
+ data
32
+ end
33
+
34
+ # Back up a database
35
+ # Captures the database as it is now. The backup is available immediately; its `size_bytes` appears once the storage provider has costed it. Backups are rate-limited to one per minute per database, and capped by the owner's plan.
36
+ # @param id [String] Project ID
37
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
38
+ # @param create_database_backup_request [CreateDatabaseBackupRequest]
39
+ # @param [Hash] opts the optional parameters
40
+ # @return [Array<(DatabaseBackup, Integer, Hash)>] DatabaseBackup data, response status code and response headers
41
+ def create_database_backup_with_http_info(id, database_name, create_database_backup_request, opts = {})
42
+ if @api_client.config.debugging
43
+ @api_client.config.logger.debug 'Calling API: DatabaseBackupsApi.create_database_backup ...'
44
+ end
45
+ # verify the required parameter 'id' is set
46
+ if @api_client.config.client_side_validation && id.nil?
47
+ fail ArgumentError, "Missing the required parameter 'id' when calling DatabaseBackupsApi.create_database_backup"
48
+ end
49
+ # verify the required parameter 'database_name' is set
50
+ if @api_client.config.client_side_validation && database_name.nil?
51
+ fail ArgumentError, "Missing the required parameter 'database_name' when calling DatabaseBackupsApi.create_database_backup"
52
+ end
53
+ if @api_client.config.client_side_validation && database_name.to_s.length > 64
54
+ fail ArgumentError, 'invalid value for "database_name" when calling DatabaseBackupsApi.create_database_backup, the character length must be smaller than or equal to 64.'
55
+ end
56
+
57
+ pattern = Regexp.new(/^[a-z0-9_]+$/)
58
+ if @api_client.config.client_side_validation && database_name !~ pattern
59
+ fail ArgumentError, "invalid value for 'database_name' when calling DatabaseBackupsApi.create_database_backup, must conform to the pattern #{pattern}."
60
+ end
61
+
62
+ # verify the required parameter 'create_database_backup_request' is set
63
+ if @api_client.config.client_side_validation && create_database_backup_request.nil?
64
+ fail ArgumentError, "Missing the required parameter 'create_database_backup_request' when calling DatabaseBackupsApi.create_database_backup"
65
+ end
66
+ # resource path
67
+ local_var_path = '/projects/{id}/databases/{databaseName}/backups'.sub('{' + 'id' + '}', CGI.escape(id.to_s)).sub('{' + 'databaseName' + '}', CGI.escape(database_name.to_s))
68
+
69
+ # query parameters
70
+ query_params = opts[:query_params] || {}
71
+
72
+ # header parameters
73
+ header_params = opts[:header_params] || {}
74
+ # HTTP header 'Accept' (if needed)
75
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
76
+ # HTTP header 'Content-Type'
77
+ content_type = @api_client.select_header_content_type(['application/json'])
78
+ if !content_type.nil?
79
+ header_params['Content-Type'] = content_type
80
+ end
81
+
82
+ # form parameters
83
+ form_params = opts[:form_params] || {}
84
+
85
+ # http body (model)
86
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(create_database_backup_request)
87
+
88
+ # return_type
89
+ return_type = opts[:debug_return_type] || 'DatabaseBackup'
90
+
91
+ # auth_names
92
+ auth_names = opts[:debug_auth_names] || ['UserToken']
93
+
94
+ new_options = opts.merge(
95
+ :operation => :"DatabaseBackupsApi.create_database_backup",
96
+ :header_params => header_params,
97
+ :query_params => query_params,
98
+ :form_params => form_params,
99
+ :body => post_body,
100
+ :auth_names => auth_names,
101
+ :return_type => return_type
102
+ )
103
+
104
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
105
+ if @api_client.config.debugging
106
+ @api_client.config.logger.debug "API called: DatabaseBackupsApi#create_database_backup\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
107
+ end
108
+ return data, status_code, headers
109
+ end
110
+
111
+ # Restore a database
112
+ # Replaces the database's data, either with a named backup or with its state at a point in time. This is destructive: everything written after that point is discarded. Asynchronous: the response is `202` with the restore `pending` and the database `restoring`. The database does not accept connections until the restore reports `completed`; its connection string is unchanged throughout, so nothing holding it needs updating. Restores are in place. There is no way to restore into a second database, and a database's branches are never restored — they keep serving their own data, but resetting a branch from its parent is refused by the storage provider for up to 24 hours afterwards.
113
+ # @param id [String] Project ID
114
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
115
+ # @param create_database_restore_request [CreateDatabaseRestoreRequest]
116
+ # @param [Hash] opts the optional parameters
117
+ # @return [DatabaseRestore]
118
+ def create_database_restore(id, database_name, create_database_restore_request, opts = {})
119
+ data, _status_code, _headers = create_database_restore_with_http_info(id, database_name, create_database_restore_request, opts)
120
+ data
121
+ end
122
+
123
+ # Restore a database
124
+ # Replaces the database&#39;s data, either with a named backup or with its state at a point in time. This is destructive: everything written after that point is discarded. Asynchronous: the response is &#x60;202&#x60; with the restore &#x60;pending&#x60; and the database &#x60;restoring&#x60;. The database does not accept connections until the restore reports &#x60;completed&#x60;; its connection string is unchanged throughout, so nothing holding it needs updating. Restores are in place. There is no way to restore into a second database, and a database&#39;s branches are never restored — they keep serving their own data, but resetting a branch from its parent is refused by the storage provider for up to 24 hours afterwards.
125
+ # @param id [String] Project ID
126
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
127
+ # @param create_database_restore_request [CreateDatabaseRestoreRequest]
128
+ # @param [Hash] opts the optional parameters
129
+ # @return [Array<(DatabaseRestore, Integer, Hash)>] DatabaseRestore data, response status code and response headers
130
+ def create_database_restore_with_http_info(id, database_name, create_database_restore_request, opts = {})
131
+ if @api_client.config.debugging
132
+ @api_client.config.logger.debug 'Calling API: DatabaseBackupsApi.create_database_restore ...'
133
+ end
134
+ # verify the required parameter 'id' is set
135
+ if @api_client.config.client_side_validation && id.nil?
136
+ fail ArgumentError, "Missing the required parameter 'id' when calling DatabaseBackupsApi.create_database_restore"
137
+ end
138
+ # verify the required parameter 'database_name' is set
139
+ if @api_client.config.client_side_validation && database_name.nil?
140
+ fail ArgumentError, "Missing the required parameter 'database_name' when calling DatabaseBackupsApi.create_database_restore"
141
+ end
142
+ if @api_client.config.client_side_validation && database_name.to_s.length > 64
143
+ fail ArgumentError, 'invalid value for "database_name" when calling DatabaseBackupsApi.create_database_restore, the character length must be smaller than or equal to 64.'
144
+ end
145
+
146
+ pattern = Regexp.new(/^[a-z0-9_]+$/)
147
+ if @api_client.config.client_side_validation && database_name !~ pattern
148
+ fail ArgumentError, "invalid value for 'database_name' when calling DatabaseBackupsApi.create_database_restore, must conform to the pattern #{pattern}."
149
+ end
150
+
151
+ # verify the required parameter 'create_database_restore_request' is set
152
+ if @api_client.config.client_side_validation && create_database_restore_request.nil?
153
+ fail ArgumentError, "Missing the required parameter 'create_database_restore_request' when calling DatabaseBackupsApi.create_database_restore"
154
+ end
155
+ # resource path
156
+ local_var_path = '/projects/{id}/databases/{databaseName}/restores'.sub('{' + 'id' + '}', CGI.escape(id.to_s)).sub('{' + 'databaseName' + '}', CGI.escape(database_name.to_s))
157
+
158
+ # query parameters
159
+ query_params = opts[:query_params] || {}
160
+
161
+ # header parameters
162
+ header_params = opts[:header_params] || {}
163
+ # HTTP header 'Accept' (if needed)
164
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
165
+ # HTTP header 'Content-Type'
166
+ content_type = @api_client.select_header_content_type(['application/json'])
167
+ if !content_type.nil?
168
+ header_params['Content-Type'] = content_type
169
+ end
170
+
171
+ # form parameters
172
+ form_params = opts[:form_params] || {}
173
+
174
+ # http body (model)
175
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(create_database_restore_request)
176
+
177
+ # return_type
178
+ return_type = opts[:debug_return_type] || 'DatabaseRestore'
179
+
180
+ # auth_names
181
+ auth_names = opts[:debug_auth_names] || ['UserToken']
182
+
183
+ new_options = opts.merge(
184
+ :operation => :"DatabaseBackupsApi.create_database_restore",
185
+ :header_params => header_params,
186
+ :query_params => query_params,
187
+ :form_params => form_params,
188
+ :body => post_body,
189
+ :auth_names => auth_names,
190
+ :return_type => return_type
191
+ )
192
+
193
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
194
+ if @api_client.config.debugging
195
+ @api_client.config.logger.debug "API called: DatabaseBackupsApi#create_database_restore\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
196
+ end
197
+ return data, status_code, headers
198
+ end
199
+
200
+ # Delete a backup
201
+ # Deletes the backup and frees its storage. Scheduled backups can be deleted too. A backup that is already gone reports `404`, so a name that never existed and a name that no longer does read the same. Refused with `409` while the database is being restored.
202
+ # @param id [String] Project ID
203
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
204
+ # @param backup_name [String] Backup name, unique within the database, exactly as returned by the list endpoint. Deliberately looser than the names you can create: a backup made by a schedule is named for you, so reading or deleting one accepts any name a backup can have.
205
+ # @param [Hash] opts the optional parameters
206
+ # @return [DeleteDatabaseBackup200Response]
207
+ def delete_database_backup(id, database_name, backup_name, opts = {})
208
+ data, _status_code, _headers = delete_database_backup_with_http_info(id, database_name, backup_name, opts)
209
+ data
210
+ end
211
+
212
+ # Delete a backup
213
+ # Deletes the backup and frees its storage. Scheduled backups can be deleted too. A backup that is already gone reports &#x60;404&#x60;, so a name that never existed and a name that no longer does read the same. Refused with &#x60;409&#x60; while the database is being restored.
214
+ # @param id [String] Project ID
215
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
216
+ # @param backup_name [String] Backup name, unique within the database, exactly as returned by the list endpoint. Deliberately looser than the names you can create: a backup made by a schedule is named for you, so reading or deleting one accepts any name a backup can have.
217
+ # @param [Hash] opts the optional parameters
218
+ # @return [Array<(DeleteDatabaseBackup200Response, Integer, Hash)>] DeleteDatabaseBackup200Response data, response status code and response headers
219
+ def delete_database_backup_with_http_info(id, database_name, backup_name, opts = {})
220
+ if @api_client.config.debugging
221
+ @api_client.config.logger.debug 'Calling API: DatabaseBackupsApi.delete_database_backup ...'
222
+ end
223
+ # verify the required parameter 'id' is set
224
+ if @api_client.config.client_side_validation && id.nil?
225
+ fail ArgumentError, "Missing the required parameter 'id' when calling DatabaseBackupsApi.delete_database_backup"
226
+ end
227
+ # verify the required parameter 'database_name' is set
228
+ if @api_client.config.client_side_validation && database_name.nil?
229
+ fail ArgumentError, "Missing the required parameter 'database_name' when calling DatabaseBackupsApi.delete_database_backup"
230
+ end
231
+ if @api_client.config.client_side_validation && database_name.to_s.length > 64
232
+ fail ArgumentError, 'invalid value for "database_name" when calling DatabaseBackupsApi.delete_database_backup, the character length must be smaller than or equal to 64.'
233
+ end
234
+
235
+ pattern = Regexp.new(/^[a-z0-9_]+$/)
236
+ if @api_client.config.client_side_validation && database_name !~ pattern
237
+ fail ArgumentError, "invalid value for 'database_name' when calling DatabaseBackupsApi.delete_database_backup, must conform to the pattern #{pattern}."
238
+ end
239
+
240
+ # verify the required parameter 'backup_name' is set
241
+ if @api_client.config.client_side_validation && backup_name.nil?
242
+ fail ArgumentError, "Missing the required parameter 'backup_name' when calling DatabaseBackupsApi.delete_database_backup"
243
+ end
244
+ if @api_client.config.client_side_validation && backup_name.to_s.length > 128
245
+ fail ArgumentError, 'invalid value for "backup_name" when calling DatabaseBackupsApi.delete_database_backup, the character length must be smaller than or equal to 128.'
246
+ end
247
+
248
+ if @api_client.config.client_side_validation && backup_name.to_s.length < 1
249
+ fail ArgumentError, 'invalid value for "backup_name" when calling DatabaseBackupsApi.delete_database_backup, the character length must be greater than or equal to 1.'
250
+ end
251
+
252
+ # resource path
253
+ local_var_path = '/projects/{id}/databases/{databaseName}/backups/{backupName}'.sub('{' + 'id' + '}', CGI.escape(id.to_s)).sub('{' + 'databaseName' + '}', CGI.escape(database_name.to_s)).sub('{' + 'backupName' + '}', CGI.escape(backup_name.to_s))
254
+
255
+ # query parameters
256
+ query_params = opts[:query_params] || {}
257
+
258
+ # header parameters
259
+ header_params = opts[:header_params] || {}
260
+ # HTTP header 'Accept' (if needed)
261
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
262
+
263
+ # form parameters
264
+ form_params = opts[:form_params] || {}
265
+
266
+ # http body (model)
267
+ post_body = opts[:debug_body]
268
+
269
+ # return_type
270
+ return_type = opts[:debug_return_type] || 'DeleteDatabaseBackup200Response'
271
+
272
+ # auth_names
273
+ auth_names = opts[:debug_auth_names] || ['UserToken']
274
+
275
+ new_options = opts.merge(
276
+ :operation => :"DatabaseBackupsApi.delete_database_backup",
277
+ :header_params => header_params,
278
+ :query_params => query_params,
279
+ :form_params => form_params,
280
+ :body => post_body,
281
+ :auth_names => auth_names,
282
+ :return_type => return_type
283
+ )
284
+
285
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
286
+ if @api_client.config.debugging
287
+ @api_client.config.logger.debug "API called: DatabaseBackupsApi#delete_database_backup\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
288
+ end
289
+ return data, status_code, headers
290
+ end
291
+
292
+ # Get a backup
293
+ # Returns one backup of the database.
294
+ # @param id [String] Project ID
295
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
296
+ # @param backup_name [String] Backup name, unique within the database, exactly as returned by the list endpoint. Deliberately looser than the names you can create: a backup made by a schedule is named for you, so reading or deleting one accepts any name a backup can have.
297
+ # @param [Hash] opts the optional parameters
298
+ # @return [DatabaseBackup]
299
+ def get_database_backup(id, database_name, backup_name, opts = {})
300
+ data, _status_code, _headers = get_database_backup_with_http_info(id, database_name, backup_name, opts)
301
+ data
302
+ end
303
+
304
+ # Get a backup
305
+ # Returns one backup of the database.
306
+ # @param id [String] Project ID
307
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
308
+ # @param backup_name [String] Backup name, unique within the database, exactly as returned by the list endpoint. Deliberately looser than the names you can create: a backup made by a schedule is named for you, so reading or deleting one accepts any name a backup can have.
309
+ # @param [Hash] opts the optional parameters
310
+ # @return [Array<(DatabaseBackup, Integer, Hash)>] DatabaseBackup data, response status code and response headers
311
+ def get_database_backup_with_http_info(id, database_name, backup_name, opts = {})
312
+ if @api_client.config.debugging
313
+ @api_client.config.logger.debug 'Calling API: DatabaseBackupsApi.get_database_backup ...'
314
+ end
315
+ # verify the required parameter 'id' is set
316
+ if @api_client.config.client_side_validation && id.nil?
317
+ fail ArgumentError, "Missing the required parameter 'id' when calling DatabaseBackupsApi.get_database_backup"
318
+ end
319
+ # verify the required parameter 'database_name' is set
320
+ if @api_client.config.client_side_validation && database_name.nil?
321
+ fail ArgumentError, "Missing the required parameter 'database_name' when calling DatabaseBackupsApi.get_database_backup"
322
+ end
323
+ if @api_client.config.client_side_validation && database_name.to_s.length > 64
324
+ fail ArgumentError, 'invalid value for "database_name" when calling DatabaseBackupsApi.get_database_backup, the character length must be smaller than or equal to 64.'
325
+ end
326
+
327
+ pattern = Regexp.new(/^[a-z0-9_]+$/)
328
+ if @api_client.config.client_side_validation && database_name !~ pattern
329
+ fail ArgumentError, "invalid value for 'database_name' when calling DatabaseBackupsApi.get_database_backup, must conform to the pattern #{pattern}."
330
+ end
331
+
332
+ # verify the required parameter 'backup_name' is set
333
+ if @api_client.config.client_side_validation && backup_name.nil?
334
+ fail ArgumentError, "Missing the required parameter 'backup_name' when calling DatabaseBackupsApi.get_database_backup"
335
+ end
336
+ if @api_client.config.client_side_validation && backup_name.to_s.length > 128
337
+ fail ArgumentError, 'invalid value for "backup_name" when calling DatabaseBackupsApi.get_database_backup, the character length must be smaller than or equal to 128.'
338
+ end
339
+
340
+ if @api_client.config.client_side_validation && backup_name.to_s.length < 1
341
+ fail ArgumentError, 'invalid value for "backup_name" when calling DatabaseBackupsApi.get_database_backup, the character length must be greater than or equal to 1.'
342
+ end
343
+
344
+ # resource path
345
+ local_var_path = '/projects/{id}/databases/{databaseName}/backups/{backupName}'.sub('{' + 'id' + '}', CGI.escape(id.to_s)).sub('{' + 'databaseName' + '}', CGI.escape(database_name.to_s)).sub('{' + 'backupName' + '}', CGI.escape(backup_name.to_s))
346
+
347
+ # query parameters
348
+ query_params = opts[:query_params] || {}
349
+
350
+ # header parameters
351
+ header_params = opts[:header_params] || {}
352
+ # HTTP header 'Accept' (if needed)
353
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
354
+
355
+ # form parameters
356
+ form_params = opts[:form_params] || {}
357
+
358
+ # http body (model)
359
+ post_body = opts[:debug_body]
360
+
361
+ # return_type
362
+ return_type = opts[:debug_return_type] || 'DatabaseBackup'
363
+
364
+ # auth_names
365
+ auth_names = opts[:debug_auth_names] || ['UserToken']
366
+
367
+ new_options = opts.merge(
368
+ :operation => :"DatabaseBackupsApi.get_database_backup",
369
+ :header_params => header_params,
370
+ :query_params => query_params,
371
+ :form_params => form_params,
372
+ :body => post_body,
373
+ :auth_names => auth_names,
374
+ :return_type => return_type
375
+ )
376
+
377
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
378
+ if @api_client.config.debugging
379
+ @api_client.config.logger.debug "API called: DatabaseBackupsApi#get_database_backup\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
380
+ end
381
+ return data, status_code, headers
382
+ end
383
+
384
+ # Get the automated backup schedule
385
+ # Returns the database's backup schedule. An empty list means no scheduled backups.
386
+ # @param id [String] Project ID
387
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
388
+ # @param [Hash] opts the optional parameters
389
+ # @return [DatabaseBackupSchedule]
390
+ def get_database_backup_schedule(id, database_name, opts = {})
391
+ data, _status_code, _headers = get_database_backup_schedule_with_http_info(id, database_name, opts)
392
+ data
393
+ end
394
+
395
+ # Get the automated backup schedule
396
+ # Returns the database&#39;s backup schedule. An empty list means no scheduled backups.
397
+ # @param id [String] Project ID
398
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
399
+ # @param [Hash] opts the optional parameters
400
+ # @return [Array<(DatabaseBackupSchedule, Integer, Hash)>] DatabaseBackupSchedule data, response status code and response headers
401
+ def get_database_backup_schedule_with_http_info(id, database_name, opts = {})
402
+ if @api_client.config.debugging
403
+ @api_client.config.logger.debug 'Calling API: DatabaseBackupsApi.get_database_backup_schedule ...'
404
+ end
405
+ # verify the required parameter 'id' is set
406
+ if @api_client.config.client_side_validation && id.nil?
407
+ fail ArgumentError, "Missing the required parameter 'id' when calling DatabaseBackupsApi.get_database_backup_schedule"
408
+ end
409
+ # verify the required parameter 'database_name' is set
410
+ if @api_client.config.client_side_validation && database_name.nil?
411
+ fail ArgumentError, "Missing the required parameter 'database_name' when calling DatabaseBackupsApi.get_database_backup_schedule"
412
+ end
413
+ if @api_client.config.client_side_validation && database_name.to_s.length > 64
414
+ fail ArgumentError, 'invalid value for "database_name" when calling DatabaseBackupsApi.get_database_backup_schedule, the character length must be smaller than or equal to 64.'
415
+ end
416
+
417
+ pattern = Regexp.new(/^[a-z0-9_]+$/)
418
+ if @api_client.config.client_side_validation && database_name !~ pattern
419
+ fail ArgumentError, "invalid value for 'database_name' when calling DatabaseBackupsApi.get_database_backup_schedule, must conform to the pattern #{pattern}."
420
+ end
421
+
422
+ # resource path
423
+ local_var_path = '/projects/{id}/databases/{databaseName}/backup-schedule'.sub('{' + 'id' + '}', CGI.escape(id.to_s)).sub('{' + 'databaseName' + '}', CGI.escape(database_name.to_s))
424
+
425
+ # query parameters
426
+ query_params = opts[:query_params] || {}
427
+
428
+ # header parameters
429
+ header_params = opts[:header_params] || {}
430
+ # HTTP header 'Accept' (if needed)
431
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
432
+
433
+ # form parameters
434
+ form_params = opts[:form_params] || {}
435
+
436
+ # http body (model)
437
+ post_body = opts[:debug_body]
438
+
439
+ # return_type
440
+ return_type = opts[:debug_return_type] || 'DatabaseBackupSchedule'
441
+
442
+ # auth_names
443
+ auth_names = opts[:debug_auth_names] || ['UserToken']
444
+
445
+ new_options = opts.merge(
446
+ :operation => :"DatabaseBackupsApi.get_database_backup_schedule",
447
+ :header_params => header_params,
448
+ :query_params => query_params,
449
+ :form_params => form_params,
450
+ :body => post_body,
451
+ :auth_names => auth_names,
452
+ :return_type => return_type
453
+ )
454
+
455
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
456
+ if @api_client.config.debugging
457
+ @api_client.config.logger.debug "API called: DatabaseBackupsApi#get_database_backup_schedule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
458
+ end
459
+ return data, status_code, headers
460
+ end
461
+
462
+ # Get a restore
463
+ # Returns the restore. Poll this after starting one; the database is connectable again once it reports `completed`.
464
+ # @param id [String] Project ID
465
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
466
+ # @param restore_id [String] Database restore ID
467
+ # @param [Hash] opts the optional parameters
468
+ # @return [DatabaseRestore]
469
+ def get_database_restore(id, database_name, restore_id, opts = {})
470
+ data, _status_code, _headers = get_database_restore_with_http_info(id, database_name, restore_id, opts)
471
+ data
472
+ end
473
+
474
+ # Get a restore
475
+ # Returns the restore. Poll this after starting one; the database is connectable again once it reports &#x60;completed&#x60;.
476
+ # @param id [String] Project ID
477
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
478
+ # @param restore_id [String] Database restore ID
479
+ # @param [Hash] opts the optional parameters
480
+ # @return [Array<(DatabaseRestore, Integer, Hash)>] DatabaseRestore data, response status code and response headers
481
+ def get_database_restore_with_http_info(id, database_name, restore_id, opts = {})
482
+ if @api_client.config.debugging
483
+ @api_client.config.logger.debug 'Calling API: DatabaseBackupsApi.get_database_restore ...'
484
+ end
485
+ # verify the required parameter 'id' is set
486
+ if @api_client.config.client_side_validation && id.nil?
487
+ fail ArgumentError, "Missing the required parameter 'id' when calling DatabaseBackupsApi.get_database_restore"
488
+ end
489
+ # verify the required parameter 'database_name' is set
490
+ if @api_client.config.client_side_validation && database_name.nil?
491
+ fail ArgumentError, "Missing the required parameter 'database_name' when calling DatabaseBackupsApi.get_database_restore"
492
+ end
493
+ if @api_client.config.client_side_validation && database_name.to_s.length > 64
494
+ fail ArgumentError, 'invalid value for "database_name" when calling DatabaseBackupsApi.get_database_restore, the character length must be smaller than or equal to 64.'
495
+ end
496
+
497
+ pattern = Regexp.new(/^[a-z0-9_]+$/)
498
+ if @api_client.config.client_side_validation && database_name !~ pattern
499
+ fail ArgumentError, "invalid value for 'database_name' when calling DatabaseBackupsApi.get_database_restore, must conform to the pattern #{pattern}."
500
+ end
501
+
502
+ # verify the required parameter 'restore_id' is set
503
+ if @api_client.config.client_side_validation && restore_id.nil?
504
+ fail ArgumentError, "Missing the required parameter 'restore_id' when calling DatabaseBackupsApi.get_database_restore"
505
+ end
506
+ # resource path
507
+ local_var_path = '/projects/{id}/databases/{databaseName}/restores/{restoreId}'.sub('{' + 'id' + '}', CGI.escape(id.to_s)).sub('{' + 'databaseName' + '}', CGI.escape(database_name.to_s)).sub('{' + 'restoreId' + '}', CGI.escape(restore_id.to_s))
508
+
509
+ # query parameters
510
+ query_params = opts[:query_params] || {}
511
+
512
+ # header parameters
513
+ header_params = opts[:header_params] || {}
514
+ # HTTP header 'Accept' (if needed)
515
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
516
+
517
+ # form parameters
518
+ form_params = opts[:form_params] || {}
519
+
520
+ # http body (model)
521
+ post_body = opts[:debug_body]
522
+
523
+ # return_type
524
+ return_type = opts[:debug_return_type] || 'DatabaseRestore'
525
+
526
+ # auth_names
527
+ auth_names = opts[:debug_auth_names] || ['UserToken']
528
+
529
+ new_options = opts.merge(
530
+ :operation => :"DatabaseBackupsApi.get_database_restore",
531
+ :header_params => header_params,
532
+ :query_params => query_params,
533
+ :form_params => form_params,
534
+ :body => post_body,
535
+ :auth_names => auth_names,
536
+ :return_type => return_type
537
+ )
538
+
539
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
540
+ if @api_client.config.debugging
541
+ @api_client.config.logger.debug "API called: DatabaseBackupsApi#get_database_restore\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
542
+ end
543
+ return data, status_code, headers
544
+ end
545
+
546
+ # List a database's backups
547
+ # Returns every backup of the database, newest first, together with the window a point-in-time restore may target. Both backups you took and backups the schedule produced are listed; `source` tells them apart. Only manual backups count against the plan's backup allowance.
548
+ # @param id [String] Project ID
549
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
550
+ # @param [Hash] opts the optional parameters
551
+ # @return [DatabaseBackupList]
552
+ def list_database_backups(id, database_name, opts = {})
553
+ data, _status_code, _headers = list_database_backups_with_http_info(id, database_name, opts)
554
+ data
555
+ end
556
+
557
+ # List a database&#39;s backups
558
+ # Returns every backup of the database, newest first, together with the window a point-in-time restore may target. Both backups you took and backups the schedule produced are listed; &#x60;source&#x60; tells them apart. Only manual backups count against the plan&#39;s backup allowance.
559
+ # @param id [String] Project ID
560
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
561
+ # @param [Hash] opts the optional parameters
562
+ # @return [Array<(DatabaseBackupList, Integer, Hash)>] DatabaseBackupList data, response status code and response headers
563
+ def list_database_backups_with_http_info(id, database_name, opts = {})
564
+ if @api_client.config.debugging
565
+ @api_client.config.logger.debug 'Calling API: DatabaseBackupsApi.list_database_backups ...'
566
+ end
567
+ # verify the required parameter 'id' is set
568
+ if @api_client.config.client_side_validation && id.nil?
569
+ fail ArgumentError, "Missing the required parameter 'id' when calling DatabaseBackupsApi.list_database_backups"
570
+ end
571
+ # verify the required parameter 'database_name' is set
572
+ if @api_client.config.client_side_validation && database_name.nil?
573
+ fail ArgumentError, "Missing the required parameter 'database_name' when calling DatabaseBackupsApi.list_database_backups"
574
+ end
575
+ if @api_client.config.client_side_validation && database_name.to_s.length > 64
576
+ fail ArgumentError, 'invalid value for "database_name" when calling DatabaseBackupsApi.list_database_backups, the character length must be smaller than or equal to 64.'
577
+ end
578
+
579
+ pattern = Regexp.new(/^[a-z0-9_]+$/)
580
+ if @api_client.config.client_side_validation && database_name !~ pattern
581
+ fail ArgumentError, "invalid value for 'database_name' when calling DatabaseBackupsApi.list_database_backups, must conform to the pattern #{pattern}."
582
+ end
583
+
584
+ # resource path
585
+ local_var_path = '/projects/{id}/databases/{databaseName}/backups'.sub('{' + 'id' + '}', CGI.escape(id.to_s)).sub('{' + 'databaseName' + '}', CGI.escape(database_name.to_s))
586
+
587
+ # query parameters
588
+ query_params = opts[:query_params] || {}
589
+
590
+ # header parameters
591
+ header_params = opts[:header_params] || {}
592
+ # HTTP header 'Accept' (if needed)
593
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
594
+
595
+ # form parameters
596
+ form_params = opts[:form_params] || {}
597
+
598
+ # http body (model)
599
+ post_body = opts[:debug_body]
600
+
601
+ # return_type
602
+ return_type = opts[:debug_return_type] || 'DatabaseBackupList'
603
+
604
+ # auth_names
605
+ auth_names = opts[:debug_auth_names] || ['UserToken']
606
+
607
+ new_options = opts.merge(
608
+ :operation => :"DatabaseBackupsApi.list_database_backups",
609
+ :header_params => header_params,
610
+ :query_params => query_params,
611
+ :form_params => form_params,
612
+ :body => post_body,
613
+ :auth_names => auth_names,
614
+ :return_type => return_type
615
+ )
616
+
617
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
618
+ if @api_client.config.debugging
619
+ @api_client.config.logger.debug "API called: DatabaseBackupsApi#list_database_backups\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
620
+ end
621
+ return data, status_code, headers
622
+ end
623
+
624
+ # List a database's restores
625
+ # Returns the database's restore history, newest first, capped at the 50 most recent. There is no pagination: a database that has been restored more than 50 times keeps the older records but does not return them.
626
+ # @param id [String] Project ID
627
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
628
+ # @param [Hash] opts the optional parameters
629
+ # @return [DatabaseRestoreList]
630
+ def list_database_restores(id, database_name, opts = {})
631
+ data, _status_code, _headers = list_database_restores_with_http_info(id, database_name, opts)
632
+ data
633
+ end
634
+
635
+ # List a database&#39;s restores
636
+ # Returns the database&#39;s restore history, newest first, capped at the 50 most recent. There is no pagination: a database that has been restored more than 50 times keeps the older records but does not return them.
637
+ # @param id [String] Project ID
638
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
639
+ # @param [Hash] opts the optional parameters
640
+ # @return [Array<(DatabaseRestoreList, Integer, Hash)>] DatabaseRestoreList data, response status code and response headers
641
+ def list_database_restores_with_http_info(id, database_name, opts = {})
642
+ if @api_client.config.debugging
643
+ @api_client.config.logger.debug 'Calling API: DatabaseBackupsApi.list_database_restores ...'
644
+ end
645
+ # verify the required parameter 'id' is set
646
+ if @api_client.config.client_side_validation && id.nil?
647
+ fail ArgumentError, "Missing the required parameter 'id' when calling DatabaseBackupsApi.list_database_restores"
648
+ end
649
+ # verify the required parameter 'database_name' is set
650
+ if @api_client.config.client_side_validation && database_name.nil?
651
+ fail ArgumentError, "Missing the required parameter 'database_name' when calling DatabaseBackupsApi.list_database_restores"
652
+ end
653
+ if @api_client.config.client_side_validation && database_name.to_s.length > 64
654
+ fail ArgumentError, 'invalid value for "database_name" when calling DatabaseBackupsApi.list_database_restores, the character length must be smaller than or equal to 64.'
655
+ end
656
+
657
+ pattern = Regexp.new(/^[a-z0-9_]+$/)
658
+ if @api_client.config.client_side_validation && database_name !~ pattern
659
+ fail ArgumentError, "invalid value for 'database_name' when calling DatabaseBackupsApi.list_database_restores, must conform to the pattern #{pattern}."
660
+ end
661
+
662
+ # resource path
663
+ local_var_path = '/projects/{id}/databases/{databaseName}/restores'.sub('{' + 'id' + '}', CGI.escape(id.to_s)).sub('{' + 'databaseName' + '}', CGI.escape(database_name.to_s))
664
+
665
+ # query parameters
666
+ query_params = opts[:query_params] || {}
667
+
668
+ # header parameters
669
+ header_params = opts[:header_params] || {}
670
+ # HTTP header 'Accept' (if needed)
671
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
672
+
673
+ # form parameters
674
+ form_params = opts[:form_params] || {}
675
+
676
+ # http body (model)
677
+ post_body = opts[:debug_body]
678
+
679
+ # return_type
680
+ return_type = opts[:debug_return_type] || 'DatabaseRestoreList'
681
+
682
+ # auth_names
683
+ auth_names = opts[:debug_auth_names] || ['UserToken']
684
+
685
+ new_options = opts.merge(
686
+ :operation => :"DatabaseBackupsApi.list_database_restores",
687
+ :header_params => header_params,
688
+ :query_params => query_params,
689
+ :form_params => form_params,
690
+ :body => post_body,
691
+ :auth_names => auth_names,
692
+ :return_type => return_type
693
+ )
694
+
695
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
696
+ if @api_client.config.debugging
697
+ @api_client.config.logger.debug "API called: DatabaseBackupsApi#list_database_restores\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
698
+ end
699
+ return data, status_code, headers
700
+ end
701
+
702
+ # Replace the automated backup schedule
703
+ # Replaces the schedule wholesale. Send an empty `entries` list to stop scheduled backups. Scheduled backups do not count against the plan's backup allowance, but their retention is clamped to the plan's.
704
+ # @param id [String] Project ID
705
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
706
+ # @param database_backup_schedule [DatabaseBackupSchedule]
707
+ # @param [Hash] opts the optional parameters
708
+ # @return [DatabaseBackupSchedule]
709
+ def update_database_backup_schedule(id, database_name, database_backup_schedule, opts = {})
710
+ data, _status_code, _headers = update_database_backup_schedule_with_http_info(id, database_name, database_backup_schedule, opts)
711
+ data
712
+ end
713
+
714
+ # Replace the automated backup schedule
715
+ # Replaces the schedule wholesale. Send an empty &#x60;entries&#x60; list to stop scheduled backups. Scheduled backups do not count against the plan&#39;s backup allowance, but their retention is clamped to the plan&#39;s.
716
+ # @param id [String] Project ID
717
+ # @param database_name [String] Database name (unique within project, lowercase letters, numbers, and underscores only)
718
+ # @param database_backup_schedule [DatabaseBackupSchedule]
719
+ # @param [Hash] opts the optional parameters
720
+ # @return [Array<(DatabaseBackupSchedule, Integer, Hash)>] DatabaseBackupSchedule data, response status code and response headers
721
+ def update_database_backup_schedule_with_http_info(id, database_name, database_backup_schedule, opts = {})
722
+ if @api_client.config.debugging
723
+ @api_client.config.logger.debug 'Calling API: DatabaseBackupsApi.update_database_backup_schedule ...'
724
+ end
725
+ # verify the required parameter 'id' is set
726
+ if @api_client.config.client_side_validation && id.nil?
727
+ fail ArgumentError, "Missing the required parameter 'id' when calling DatabaseBackupsApi.update_database_backup_schedule"
728
+ end
729
+ # verify the required parameter 'database_name' is set
730
+ if @api_client.config.client_side_validation && database_name.nil?
731
+ fail ArgumentError, "Missing the required parameter 'database_name' when calling DatabaseBackupsApi.update_database_backup_schedule"
732
+ end
733
+ if @api_client.config.client_side_validation && database_name.to_s.length > 64
734
+ fail ArgumentError, 'invalid value for "database_name" when calling DatabaseBackupsApi.update_database_backup_schedule, the character length must be smaller than or equal to 64.'
735
+ end
736
+
737
+ pattern = Regexp.new(/^[a-z0-9_]+$/)
738
+ if @api_client.config.client_side_validation && database_name !~ pattern
739
+ fail ArgumentError, "invalid value for 'database_name' when calling DatabaseBackupsApi.update_database_backup_schedule, must conform to the pattern #{pattern}."
740
+ end
741
+
742
+ # verify the required parameter 'database_backup_schedule' is set
743
+ if @api_client.config.client_side_validation && database_backup_schedule.nil?
744
+ fail ArgumentError, "Missing the required parameter 'database_backup_schedule' when calling DatabaseBackupsApi.update_database_backup_schedule"
745
+ end
746
+ # resource path
747
+ local_var_path = '/projects/{id}/databases/{databaseName}/backup-schedule'.sub('{' + 'id' + '}', CGI.escape(id.to_s)).sub('{' + 'databaseName' + '}', CGI.escape(database_name.to_s))
748
+
749
+ # query parameters
750
+ query_params = opts[:query_params] || {}
751
+
752
+ # header parameters
753
+ header_params = opts[:header_params] || {}
754
+ # HTTP header 'Accept' (if needed)
755
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
756
+ # HTTP header 'Content-Type'
757
+ content_type = @api_client.select_header_content_type(['application/json'])
758
+ if !content_type.nil?
759
+ header_params['Content-Type'] = content_type
760
+ end
761
+
762
+ # form parameters
763
+ form_params = opts[:form_params] || {}
764
+
765
+ # http body (model)
766
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(database_backup_schedule)
767
+
768
+ # return_type
769
+ return_type = opts[:debug_return_type] || 'DatabaseBackupSchedule'
770
+
771
+ # auth_names
772
+ auth_names = opts[:debug_auth_names] || ['UserToken']
773
+
774
+ new_options = opts.merge(
775
+ :operation => :"DatabaseBackupsApi.update_database_backup_schedule",
776
+ :header_params => header_params,
777
+ :query_params => query_params,
778
+ :form_params => form_params,
779
+ :body => post_body,
780
+ :auth_names => auth_names,
781
+ :return_type => return_type
782
+ )
783
+
784
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
785
+ if @api_client.config.debugging
786
+ @api_client.config.logger.debug "API called: DatabaseBackupsApi#update_database_backup_schedule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
787
+ end
788
+ return data, status_code, headers
789
+ end
790
+ end
791
+ end