fastly 9.0.0 → 10.0.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 (289) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +42 -19
  3. data/Gemfile.lock +3 -3
  4. data/README.md +49 -42
  5. data/docs/AclsInComputeApi.md +2 -2
  6. data/docs/AiAcceleratorResponseBodyEnable.md +12 -0
  7. data/docs/AiAcceleratorResponseCustomer.md +10 -0
  8. data/docs/AiAcceleratorResponseCustomerCustomer.md +11 -0
  9. data/docs/AiAcceleratorResponseLinks.md +10 -0
  10. data/docs/AiAcceleratorResponseLinksLinks.md +10 -0
  11. data/docs/AiAcceleratorResponseProduct.md +10 -0
  12. data/docs/AiAcceleratorResponseProductProduct.md +11 -0
  13. data/docs/Backend.md +1 -1
  14. data/docs/BackendApi.md +4 -4
  15. data/docs/BackendResponse.md +1 -1
  16. data/docs/BillingUsageMetricsApi.md +8 -8
  17. data/docs/BotManagementResponseBodyEnable.md +12 -0
  18. data/docs/BotManagementResponseLinks.md +10 -0
  19. data/docs/BotManagementResponseLinksLinks.md +11 -0
  20. data/docs/BotManagementResponseProduct.md +10 -0
  21. data/docs/BotManagementResponseProductProduct.md +11 -0
  22. data/docs/BotManagementResponseService.md +10 -0
  23. data/docs/{EnabledProductResponseService.md → BotManagementResponseServiceService.md} +1 -1
  24. data/docs/BrotliCompressionResponseBodyEnable.md +12 -0
  25. data/docs/BrotliCompressionResponseLinks.md +10 -0
  26. data/docs/BrotliCompressionResponseLinksLinks.md +11 -0
  27. data/docs/BrotliCompressionResponseProduct.md +10 -0
  28. data/docs/BrotliCompressionResponseProductProduct.md +11 -0
  29. data/docs/BrotliCompressionResponseService.md +10 -0
  30. data/docs/ComputeAclList.md +11 -0
  31. data/docs/{ReadOnlyServiceId.md → ComputeAclListMeta.md} +2 -1
  32. data/docs/ComputeAclLookup.md +1 -2
  33. data/docs/{ReadOnlyVersion.md → DdosProtectionRequestUpdateConfiguration.md} +2 -1
  34. data/docs/DdosProtectionResponseConfiguration.md +10 -0
  35. data/docs/{Store.md → DdosProtectionResponseConfigurationConfiguration.md} +2 -2
  36. data/docs/DdosProtectionResponseConfigure.md +13 -0
  37. data/docs/DdosProtectionResponseEnable.md +12 -0
  38. data/docs/DdosProtectionResponseLinks.md +10 -0
  39. data/docs/DdosProtectionResponseLinksLinks.md +11 -0
  40. data/docs/DdosProtectionResponseProduct.md +10 -0
  41. data/docs/DdosProtectionResponseProductProduct.md +11 -0
  42. data/docs/DdosProtectionResponseService.md +10 -0
  43. data/docs/DomainInspectorMeasurements.md +2 -0
  44. data/docs/DomainInspectorResponseBodyEnable.md +12 -0
  45. data/docs/DomainInspectorResponseLinks.md +10 -0
  46. data/docs/DomainInspectorResponseLinksLinks.md +11 -0
  47. data/docs/DomainInspectorResponseProduct.md +10 -0
  48. data/docs/{InlineResponse2003Meta.md → DomainInspectorResponseProductProduct.md} +3 -3
  49. data/docs/DomainInspectorResponseService.md +10 -0
  50. data/docs/FanoutResponseBodyEnable.md +12 -0
  51. data/docs/FanoutResponseLinks.md +10 -0
  52. data/docs/{EnabledProductResponseLinks.md → FanoutResponseLinksLinks.md} +1 -1
  53. data/docs/FanoutResponseProduct.md +10 -0
  54. data/docs/{EnabledProductResponseProduct.md → FanoutResponseProductProduct.md} +1 -1
  55. data/docs/FanoutResponseService.md +10 -0
  56. data/docs/ImageOptimizerResponseBodyEnable.md +12 -0
  57. data/docs/ImageOptimizerResponseLinks.md +10 -0
  58. data/docs/ImageOptimizerResponseLinksLinks.md +11 -0
  59. data/docs/ImageOptimizerResponseProduct.md +10 -0
  60. data/docs/ImageOptimizerResponseProductProduct.md +11 -0
  61. data/docs/ImageOptimizerResponseService.md +10 -0
  62. data/docs/InlineResponse2003.md +2 -2
  63. data/docs/InlineResponse2004.md +1 -1
  64. data/docs/KvStoreApi.md +30 -30
  65. data/docs/{Batch.md → KvStoreBatchResponse.md} +2 -2
  66. data/docs/{BatchErrors.md → KvStoreBatchResponseErrors.md} +4 -4
  67. data/docs/{StoreResponse.md → KvStoreDetails.md} +2 -2
  68. data/docs/KvStoreItemApi.md +55 -52
  69. data/docs/KvStoreRequestCreate.md +10 -0
  70. data/docs/KvStoreUpsertBatch.md +14 -0
  71. data/docs/LogExplorerInsightsResponseBodyEnable.md +12 -0
  72. data/docs/LogExplorerInsightsResponseLinks.md +10 -0
  73. data/docs/LogExplorerInsightsResponseLinksLinks.md +11 -0
  74. data/docs/LogExplorerInsightsResponseProduct.md +10 -0
  75. data/docs/LogExplorerInsightsResponseProductProduct.md +11 -0
  76. data/docs/LogExplorerInsightsResponseService.md +10 -0
  77. data/docs/{LegacyWafTag.md → NgwafRequestEnable.md} +2 -2
  78. data/docs/NgwafRequestUpdateConfiguration.md +11 -0
  79. data/docs/NgwafResponseConfiguration.md +10 -0
  80. data/docs/{ConfiguredProductResponseConfiguration.md → NgwafResponseConfigurationConfiguration.md} +2 -2
  81. data/docs/NgwafResponseConfigure.md +13 -0
  82. data/docs/NgwafResponseEnable.md +12 -0
  83. data/docs/NgwafResponseLinks.md +10 -0
  84. data/docs/{ConfiguredProductResponseLinks.md → NgwafResponseLinksLinks.md} +1 -1
  85. data/docs/{InlineResponse2004Meta.md → NgwafResponseProduct.md} +2 -3
  86. data/docs/{ConfiguredProductResponseProduct.md → NgwafResponseProductProduct.md} +1 -1
  87. data/docs/NgwafResponseService.md +10 -0
  88. data/docs/ObjectStorageResponseBodyEnable.md +12 -0
  89. data/docs/ObjectStorageResponseCustomer.md +10 -0
  90. data/docs/ObjectStorageResponseLinks.md +10 -0
  91. data/docs/ObjectStorageResponseLinksLinks.md +10 -0
  92. data/docs/ObjectStorageResponseProduct.md +10 -0
  93. data/docs/ObjectStorageResponseProductProduct.md +11 -0
  94. data/docs/OriginInspectorMeasurements.md +4 -0
  95. data/docs/OriginInspectorResponseBodyEnable.md +12 -0
  96. data/docs/OriginInspectorResponseLinks.md +10 -0
  97. data/docs/OriginInspectorResponseLinksLinks.md +11 -0
  98. data/docs/OriginInspectorResponseProduct.md +10 -0
  99. data/docs/OriginInspectorResponseProductProduct.md +11 -0
  100. data/docs/OriginInspectorResponseService.md +10 -0
  101. data/docs/OriginInspectorValues.md +4 -0
  102. data/docs/ProductAiAcceleratorApi.md +115 -0
  103. data/docs/ProductBotManagementApi.md +130 -0
  104. data/docs/ProductBrotliCompressionApi.md +130 -0
  105. data/docs/ProductDdosProtectionApi.md +208 -0
  106. data/docs/ProductDomainInspectorApi.md +130 -0
  107. data/docs/ProductFanoutApi.md +130 -0
  108. data/docs/ProductImageOptimizerApi.md +130 -0
  109. data/docs/ProductLogExplorerInsightsApi.md +130 -0
  110. data/docs/ProductNgwafApi.md +210 -0
  111. data/docs/ProductObjectStorageApi.md +115 -0
  112. data/docs/ProductOriginInspectorApi.md +130 -0
  113. data/docs/ProductWebsocketsApi.md +130 -0
  114. data/docs/RealtimeEntryAggregated.md +18 -3
  115. data/docs/RealtimeMeasurements.md +18 -3
  116. data/docs/Results.md +18 -3
  117. data/docs/SnippetApi.md +15 -15
  118. data/docs/Values.md +2 -0
  119. data/docs/WebsocketsResponseBodyEnable.md +12 -0
  120. data/docs/WebsocketsResponseLinks.md +10 -0
  121. data/docs/WebsocketsResponseLinksLinks.md +11 -0
  122. data/docs/WebsocketsResponseProduct.md +10 -0
  123. data/docs/WebsocketsResponseProductProduct.md +11 -0
  124. data/docs/WebsocketsResponseService.md +10 -0
  125. data/lib/fastly/api/acls_in_compute_api.rb +3 -3
  126. data/lib/fastly/api/backend_api.rb +4 -4
  127. data/lib/fastly/api/billing_usage_metrics_api.rb +26 -26
  128. data/lib/fastly/api/kv_store_api.rb +53 -45
  129. data/lib/fastly/api/kv_store_item_api.rb +114 -102
  130. data/lib/fastly/api/product_ai_accelerator_api.rb +186 -0
  131. data/lib/fastly/api/product_bot_management_api.rb +207 -0
  132. data/lib/fastly/api/product_brotli_compression_api.rb +207 -0
  133. data/lib/fastly/api/product_ddos_protection_api.rb +340 -0
  134. data/lib/fastly/api/product_domain_inspector_api.rb +207 -0
  135. data/lib/fastly/api/product_fanout_api.rb +207 -0
  136. data/lib/fastly/api/product_image_optimizer_api.rb +207 -0
  137. data/lib/fastly/api/product_log_explorer_insights_api.rb +207 -0
  138. data/lib/fastly/api/product_ngwaf_api.rb +347 -0
  139. data/lib/fastly/api/product_object_storage_api.rb +186 -0
  140. data/lib/fastly/api/product_origin_inspector_api.rb +207 -0
  141. data/lib/fastly/api/product_websockets_api.rb +207 -0
  142. data/lib/fastly/api/snippet_api.rb +35 -35
  143. data/lib/fastly/configuration.rb +248 -206
  144. data/lib/fastly/models/{legacy_waf_rule_status.rb → ai_accelerator_response_body_enable.rb} +31 -25
  145. data/lib/fastly/models/ai_accelerator_response_customer.rb +216 -0
  146. data/lib/fastly/models/ai_accelerator_response_customer_customer.rb +227 -0
  147. data/lib/fastly/models/ai_accelerator_response_links.rb +216 -0
  148. data/lib/fastly/models/ai_accelerator_response_links_links.rb +217 -0
  149. data/lib/fastly/models/ai_accelerator_response_product.rb +216 -0
  150. data/lib/fastly/models/ai_accelerator_response_product_product.rb +227 -0
  151. data/lib/fastly/models/backend.rb +1 -1
  152. data/lib/fastly/models/backend_response.rb +1 -1
  153. data/lib/fastly/models/bot_management_response_body_enable.rb +243 -0
  154. data/lib/fastly/models/bot_management_response_links.rb +216 -0
  155. data/lib/fastly/models/bot_management_response_links_links.rb +227 -0
  156. data/lib/fastly/models/bot_management_response_product.rb +216 -0
  157. data/lib/fastly/models/bot_management_response_product_product.rb +227 -0
  158. data/lib/fastly/models/bot_management_response_service.rb +216 -0
  159. data/lib/fastly/models/{enabled_product_response_service.rb → bot_management_response_service_service.rb} +3 -3
  160. data/lib/fastly/models/brotli_compression_response_body_enable.rb +243 -0
  161. data/lib/fastly/models/brotli_compression_response_links.rb +216 -0
  162. data/lib/fastly/models/brotli_compression_response_links_links.rb +227 -0
  163. data/lib/fastly/models/brotli_compression_response_product.rb +216 -0
  164. data/lib/fastly/models/brotli_compression_response_product_product.rb +227 -0
  165. data/lib/fastly/models/brotli_compression_response_service.rb +216 -0
  166. data/lib/fastly/models/{inline_response2004_meta.rb → compute_acl_list.rb} +19 -16
  167. data/lib/fastly/models/compute_acl_list_meta.rb +218 -0
  168. data/lib/fastly/models/compute_acl_lookup.rb +2 -12
  169. data/lib/fastly/models/{set_configuration.rb → ddos_protection_request_update_configuration.rb} +43 -24
  170. data/lib/fastly/models/ddos_protection_response_configuration.rb +216 -0
  171. data/lib/fastly/models/ddos_protection_response_configuration_configuration.rb +217 -0
  172. data/lib/fastly/models/ddos_protection_response_configure.rb +253 -0
  173. data/lib/fastly/models/ddos_protection_response_enable.rb +243 -0
  174. data/lib/fastly/models/ddos_protection_response_links.rb +216 -0
  175. data/lib/fastly/models/ddos_protection_response_links_links.rb +227 -0
  176. data/lib/fastly/models/ddos_protection_response_product.rb +216 -0
  177. data/lib/fastly/models/ddos_protection_response_product_product.rb +227 -0
  178. data/lib/fastly/models/ddos_protection_response_service.rb +216 -0
  179. data/lib/fastly/models/domain_inspector_measurements.rb +21 -1
  180. data/lib/fastly/models/domain_inspector_response_body_enable.rb +243 -0
  181. data/lib/fastly/models/domain_inspector_response_links.rb +216 -0
  182. data/lib/fastly/models/domain_inspector_response_links_links.rb +227 -0
  183. data/lib/fastly/models/domain_inspector_response_product.rb +216 -0
  184. data/lib/fastly/models/domain_inspector_response_product_product.rb +227 -0
  185. data/lib/fastly/models/domain_inspector_response_service.rb +216 -0
  186. data/lib/fastly/models/fanout_response_body_enable.rb +243 -0
  187. data/lib/fastly/models/{store.rb → fanout_response_links.rb} +10 -11
  188. data/lib/fastly/models/{enabled_product_response_links.rb → fanout_response_links_links.rb} +3 -3
  189. data/lib/fastly/models/fanout_response_product.rb +216 -0
  190. data/lib/fastly/models/{enabled_product_response_product.rb → fanout_response_product_product.rb} +3 -3
  191. data/lib/fastly/models/fanout_response_service.rb +216 -0
  192. data/lib/fastly/models/image_optimizer_response_body_enable.rb +243 -0
  193. data/lib/fastly/models/image_optimizer_response_links.rb +216 -0
  194. data/lib/fastly/models/image_optimizer_response_links_links.rb +227 -0
  195. data/lib/fastly/models/image_optimizer_response_product.rb +216 -0
  196. data/lib/fastly/models/image_optimizer_response_product_product.rb +227 -0
  197. data/lib/fastly/models/image_optimizer_response_service.rb +216 -0
  198. data/lib/fastly/models/inline_response2003.rb +2 -2
  199. data/lib/fastly/models/inline_response2004.rb +1 -1
  200. data/lib/fastly/models/{batch.rb → kv_store_batch_response.rb} +5 -5
  201. data/lib/fastly/models/{batch_errors.rb → kv_store_batch_response_errors.rb} +6 -6
  202. data/lib/fastly/models/{store_response.rb → kv_store_details.rb} +4 -4
  203. data/lib/fastly/models/{legacy_waf_configuration_set.rb → kv_store_request_create.rb} +10 -15
  204. data/lib/fastly/models/{legacy_waf_update_status.rb → kv_store_upsert_batch.rb} +51 -49
  205. data/lib/fastly/models/log_explorer_insights_response_body_enable.rb +243 -0
  206. data/lib/fastly/models/log_explorer_insights_response_links.rb +216 -0
  207. data/lib/fastly/models/log_explorer_insights_response_links_links.rb +227 -0
  208. data/lib/fastly/models/log_explorer_insights_response_product.rb +216 -0
  209. data/lib/fastly/models/log_explorer_insights_response_product_product.rb +227 -0
  210. data/lib/fastly/models/log_explorer_insights_response_service.rb +216 -0
  211. data/lib/fastly/models/{set_workspace_id.rb → ngwaf_request_enable.rb} +9 -4
  212. data/lib/fastly/models/ngwaf_request_update_configuration.rb +227 -0
  213. data/lib/fastly/models/ngwaf_response_configuration.rb +216 -0
  214. data/lib/fastly/models/{configured_product_response_configuration.rb → ngwaf_response_configuration_configuration.rb} +4 -4
  215. data/lib/fastly/models/{configured_product_response.rb → ngwaf_response_configure.rb} +17 -7
  216. data/lib/fastly/models/{enabled_product_response.rb → ngwaf_response_enable.rb} +15 -6
  217. data/lib/fastly/models/{legacy_waf_tag.rb → ngwaf_response_links.rb} +10 -11
  218. data/lib/fastly/models/{configured_product_response_links.rb → ngwaf_response_links_links.rb} +3 -3
  219. data/lib/fastly/models/{read_only_version.rb → ngwaf_response_product.rb} +14 -5
  220. data/lib/fastly/models/ngwaf_response_product_product.rb +227 -0
  221. data/lib/fastly/models/ngwaf_response_service.rb +216 -0
  222. data/lib/fastly/models/object_storage_response_body_enable.rb +243 -0
  223. data/lib/fastly/models/object_storage_response_customer.rb +216 -0
  224. data/lib/fastly/models/object_storage_response_links.rb +216 -0
  225. data/lib/fastly/models/object_storage_response_links_links.rb +217 -0
  226. data/lib/fastly/models/object_storage_response_product.rb +216 -0
  227. data/lib/fastly/models/object_storage_response_product_product.rb +227 -0
  228. data/lib/fastly/models/origin_inspector_measurements.rb +41 -1
  229. data/lib/fastly/models/origin_inspector_response_body_enable.rb +243 -0
  230. data/lib/fastly/models/origin_inspector_response_links.rb +216 -0
  231. data/lib/fastly/models/origin_inspector_response_links_links.rb +227 -0
  232. data/lib/fastly/models/origin_inspector_response_product.rb +216 -0
  233. data/lib/fastly/models/origin_inspector_response_product_product.rb +227 -0
  234. data/lib/fastly/models/origin_inspector_response_service.rb +216 -0
  235. data/lib/fastly/models/origin_inspector_values.rb +41 -1
  236. data/lib/fastly/models/realtime_entry_aggregated.rb +169 -19
  237. data/lib/fastly/models/realtime_measurements.rb +169 -19
  238. data/lib/fastly/models/results.rb +169 -19
  239. data/lib/fastly/models/schemas_snippet_response.rb +1 -0
  240. data/lib/fastly/models/snippet.rb +1 -0
  241. data/lib/fastly/models/snippet_common.rb +1 -0
  242. data/lib/fastly/models/snippet_response.rb +1 -0
  243. data/lib/fastly/models/snippet_response_post.rb +1 -0
  244. data/lib/fastly/models/snippet_with_dynamic_number.rb +1 -0
  245. data/lib/fastly/models/values.rb +21 -1
  246. data/lib/fastly/models/websockets_response_body_enable.rb +243 -0
  247. data/lib/fastly/models/{read_only_service_id.rb → websockets_response_links.rb} +14 -5
  248. data/lib/fastly/models/websockets_response_links_links.rb +227 -0
  249. data/lib/fastly/models/websockets_response_product.rb +216 -0
  250. data/lib/fastly/models/{configured_product_response_product.rb → websockets_response_product_product.rb} +3 -3
  251. data/lib/fastly/models/websockets_response_service.rb +216 -0
  252. data/lib/fastly/version.rb +1 -1
  253. data/lib/fastly.rb +102 -35
  254. data/sig.json +1 -1
  255. metadata +209 -75
  256. data/docs/ConfiguredProductResponse.md +0 -13
  257. data/docs/EnabledProductResponse.md +0 -12
  258. data/docs/EnabledProductsApi.md +0 -220
  259. data/docs/LegacyWafConfigurationSet.md +0 -11
  260. data/docs/LegacyWafConfigurationSetsApi.md +0 -128
  261. data/docs/LegacyWafFirewall.md +0 -18
  262. data/docs/LegacyWafFirewallApi.md +0 -355
  263. data/docs/LegacyWafOwasp.md +0 -38
  264. data/docs/LegacyWafOwaspApi.md +0 -141
  265. data/docs/LegacyWafRule.md +0 -14
  266. data/docs/LegacyWafRuleApi.md +0 -187
  267. data/docs/LegacyWafRuleStatus.md +0 -12
  268. data/docs/LegacyWafRuleStatusApi.md +0 -205
  269. data/docs/LegacyWafRuleset.md +0 -11
  270. data/docs/LegacyWafRulesetApi.md +0 -139
  271. data/docs/LegacyWafTagApi.md +0 -61
  272. data/docs/LegacyWafUpdateStatus.md +0 -15
  273. data/docs/LegacyWafUpdateStatusApi.md +0 -105
  274. data/docs/SetConfiguration.md +0 -12
  275. data/docs/SetWorkspaceId.md +0 -10
  276. data/lib/fastly/api/enabled_products_api.rb +0 -382
  277. data/lib/fastly/api/legacy_waf_configuration_sets_api.rb +0 -209
  278. data/lib/fastly/api/legacy_waf_firewall_api.rb +0 -627
  279. data/lib/fastly/api/legacy_waf_owasp_api.rb +0 -244
  280. data/lib/fastly/api/legacy_waf_rule_api.rb +0 -307
  281. data/lib/fastly/api/legacy_waf_rule_status_api.rb +0 -366
  282. data/lib/fastly/api/legacy_waf_ruleset_api.rb +0 -237
  283. data/lib/fastly/api/legacy_waf_tag_api.rb +0 -96
  284. data/lib/fastly/api/legacy_waf_update_status_api.rb +0 -184
  285. data/lib/fastly/models/inline_response2003_meta.rb +0 -228
  286. data/lib/fastly/models/legacy_waf_firewall.rb +0 -297
  287. data/lib/fastly/models/legacy_waf_owasp.rb +0 -527
  288. data/lib/fastly/models/legacy_waf_rule.rb +0 -257
  289. data/lib/fastly/models/legacy_waf_ruleset.rb +0 -227
@@ -0,0 +1,347 @@
1
+ =begin
2
+ #Fastly API
3
+
4
+ #Via the Fastly API you can perform any of the operations that are possible within the management console, including creating services, domains, and backends, configuring rules or uploading your own application code, as well as account operations such as user administration and billing reports. The API is organized into collections of endpoints that allow manipulation of objects related to Fastly services and accounts. For the most accurate and up-to-date API reference content, visit our [Developer Hub](https://www.fastly.com/documentation/reference/api/)
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: oss@fastly.com
8
+
9
+ =end
10
+
11
+ require 'cgi'
12
+
13
+ module Fastly
14
+ class ProductNgwafApi
15
+ attr_accessor :api_client
16
+
17
+ def initialize(api_client = ApiClient.default)
18
+ @api_client = api_client
19
+ end
20
+ # Disable product
21
+ # Disable the Next-Gen WAF product on a service.
22
+ # @option opts [String] :service_id Alphanumeric string identifying the service. (required)
23
+ # @return [nil]
24
+ def disable_product_ngwaf(opts = {})
25
+ disable_product_ngwaf_with_http_info(opts)
26
+ nil
27
+ end
28
+
29
+ # Disable product
30
+ # Disable the Next-Gen WAF product on a service.
31
+ # @option opts [String] :service_id Alphanumeric string identifying the service. (required)
32
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
33
+ def disable_product_ngwaf_with_http_info(opts = {})
34
+ if @api_client.config.debugging
35
+ @api_client.config.logger.debug 'Calling API: ProductNgwafApi.disable_product_ngwaf ...'
36
+ end
37
+ # unbox the parameters from the hash
38
+ service_id = opts[:'service_id']
39
+ # verify the required parameter 'service_id' is set
40
+ if @api_client.config.client_side_validation && service_id.nil?
41
+ fail ArgumentError, "Missing the required parameter 'service_id' when calling ProductNgwafApi.disable_product_ngwaf"
42
+ end
43
+ # resource path
44
+ local_var_path = '/enabled-products/v1/ngwaf/services/{service_id}'.sub('{' + 'service_id' + '}', CGI.escape(service_id.to_s))
45
+
46
+ # query parameters
47
+ query_params = opts[:query_params] || {}
48
+
49
+ # header parameters
50
+ header_params = opts[:header_params] || {}
51
+
52
+ # form parameters
53
+ form_params = opts[:form_params] || {}
54
+
55
+ # http body (model)
56
+ post_body = opts[:debug_body]
57
+
58
+ # return_type
59
+ return_type = opts[:debug_return_type]
60
+
61
+ # auth_names
62
+ auth_names = opts[:debug_auth_names] || ['token']
63
+
64
+ new_options = opts.merge(
65
+ :operation => :"ProductNgwafApi.disable_product_ngwaf",
66
+ :header_params => header_params,
67
+ :query_params => query_params,
68
+ :form_params => form_params,
69
+ :body => post_body,
70
+ :auth_names => auth_names,
71
+ :return_type => return_type
72
+ )
73
+
74
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
75
+ if @api_client.config.debugging
76
+ @api_client.config.logger.debug "API called: ProductNgwafApi#disable_product_ngwaf\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
77
+ end
78
+ return data, status_code, headers
79
+ end
80
+
81
+ # Enable product
82
+ # Enable the Next-Gen WAF product on a service.
83
+ # @option opts [String] :service_id Alphanumeric string identifying the service. (required)
84
+ # @option opts [NgwafRequestEnable] :ngwaf_request_enable
85
+ # @return [NgwafResponseEnable]
86
+ def enable_product_ngwaf(opts = {})
87
+ data, _status_code, _headers = enable_product_ngwaf_with_http_info(opts)
88
+ data
89
+ end
90
+
91
+ # Enable product
92
+ # Enable the Next-Gen WAF product on a service.
93
+ # @option opts [String] :service_id Alphanumeric string identifying the service. (required)
94
+ # @option opts [NgwafRequestEnable] :ngwaf_request_enable
95
+ # @return [Array<(NgwafResponseEnable, Integer, Hash)>] NgwafResponseEnable data, response status code and response headers
96
+ def enable_product_ngwaf_with_http_info(opts = {})
97
+ if @api_client.config.debugging
98
+ @api_client.config.logger.debug 'Calling API: ProductNgwafApi.enable_product_ngwaf ...'
99
+ end
100
+ # unbox the parameters from the hash
101
+ service_id = opts[:'service_id']
102
+ # verify the required parameter 'service_id' is set
103
+ if @api_client.config.client_side_validation && service_id.nil?
104
+ fail ArgumentError, "Missing the required parameter 'service_id' when calling ProductNgwafApi.enable_product_ngwaf"
105
+ end
106
+ # resource path
107
+ local_var_path = '/enabled-products/v1/ngwaf/services/{service_id}'.sub('{' + 'service_id' + '}', CGI.escape(service_id.to_s))
108
+
109
+ # query parameters
110
+ query_params = opts[:query_params] || {}
111
+
112
+ # header parameters
113
+ header_params = opts[:header_params] || {}
114
+ # HTTP header 'Accept' (if needed)
115
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
116
+ # HTTP header 'Content-Type'
117
+ content_type = @api_client.select_header_content_type(['application/json'])
118
+ if !content_type.nil?
119
+ header_params['Content-Type'] = content_type
120
+ end
121
+
122
+ # form parameters
123
+ form_params = opts[:form_params] || {}
124
+
125
+ # http body (model)
126
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'ngwaf_request_enable'])
127
+
128
+ # return_type
129
+ return_type = opts[:debug_return_type] || 'NgwafResponseEnable'
130
+
131
+ # auth_names
132
+ auth_names = opts[:debug_auth_names] || ['token']
133
+
134
+ new_options = opts.merge(
135
+ :operation => :"ProductNgwafApi.enable_product_ngwaf",
136
+ :header_params => header_params,
137
+ :query_params => query_params,
138
+ :form_params => form_params,
139
+ :body => post_body,
140
+ :auth_names => auth_names,
141
+ :return_type => return_type
142
+ )
143
+
144
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
145
+ if @api_client.config.debugging
146
+ @api_client.config.logger.debug "API called: ProductNgwafApi#enable_product_ngwaf\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
147
+ end
148
+ return data, status_code, headers
149
+ end
150
+
151
+ # Get product enablement status
152
+ # Get the enablement status of the Next-Gen WAF product on a service.
153
+ # @option opts [String] :service_id Alphanumeric string identifying the service. (required)
154
+ # @return [NgwafResponseEnable]
155
+ def get_product_ngwaf(opts = {})
156
+ data, _status_code, _headers = get_product_ngwaf_with_http_info(opts)
157
+ data
158
+ end
159
+
160
+ # Get product enablement status
161
+ # Get the enablement status of the Next-Gen WAF product on a service.
162
+ # @option opts [String] :service_id Alphanumeric string identifying the service. (required)
163
+ # @return [Array<(NgwafResponseEnable, Integer, Hash)>] NgwafResponseEnable data, response status code and response headers
164
+ def get_product_ngwaf_with_http_info(opts = {})
165
+ if @api_client.config.debugging
166
+ @api_client.config.logger.debug 'Calling API: ProductNgwafApi.get_product_ngwaf ...'
167
+ end
168
+ # unbox the parameters from the hash
169
+ service_id = opts[:'service_id']
170
+ # verify the required parameter 'service_id' is set
171
+ if @api_client.config.client_side_validation && service_id.nil?
172
+ fail ArgumentError, "Missing the required parameter 'service_id' when calling ProductNgwafApi.get_product_ngwaf"
173
+ end
174
+ # resource path
175
+ local_var_path = '/enabled-products/v1/ngwaf/services/{service_id}'.sub('{' + 'service_id' + '}', CGI.escape(service_id.to_s))
176
+
177
+ # query parameters
178
+ query_params = opts[:query_params] || {}
179
+
180
+ # header parameters
181
+ header_params = opts[:header_params] || {}
182
+ # HTTP header 'Accept' (if needed)
183
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
184
+
185
+ # form parameters
186
+ form_params = opts[:form_params] || {}
187
+
188
+ # http body (model)
189
+ post_body = opts[:debug_body]
190
+
191
+ # return_type
192
+ return_type = opts[:debug_return_type] || 'NgwafResponseEnable'
193
+
194
+ # auth_names
195
+ auth_names = opts[:debug_auth_names] || ['token']
196
+
197
+ new_options = opts.merge(
198
+ :operation => :"ProductNgwafApi.get_product_ngwaf",
199
+ :header_params => header_params,
200
+ :query_params => query_params,
201
+ :form_params => form_params,
202
+ :body => post_body,
203
+ :auth_names => auth_names,
204
+ :return_type => return_type
205
+ )
206
+
207
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
208
+ if @api_client.config.debugging
209
+ @api_client.config.logger.debug "API called: ProductNgwafApi#get_product_ngwaf\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
210
+ end
211
+ return data, status_code, headers
212
+ end
213
+
214
+ # Get configuration
215
+ # Get configuration of the Next-Gen WAF product on a service.
216
+ # @option opts [String] :service_id Alphanumeric string identifying the service. (required)
217
+ # @return [NgwafResponseConfigure]
218
+ def get_product_ngwaf_configuration(opts = {})
219
+ data, _status_code, _headers = get_product_ngwaf_configuration_with_http_info(opts)
220
+ data
221
+ end
222
+
223
+ # Get configuration
224
+ # Get configuration of the Next-Gen WAF product on a service.
225
+ # @option opts [String] :service_id Alphanumeric string identifying the service. (required)
226
+ # @return [Array<(NgwafResponseConfigure, Integer, Hash)>] NgwafResponseConfigure data, response status code and response headers
227
+ def get_product_ngwaf_configuration_with_http_info(opts = {})
228
+ if @api_client.config.debugging
229
+ @api_client.config.logger.debug 'Calling API: ProductNgwafApi.get_product_ngwaf_configuration ...'
230
+ end
231
+ # unbox the parameters from the hash
232
+ service_id = opts[:'service_id']
233
+ # verify the required parameter 'service_id' is set
234
+ if @api_client.config.client_side_validation && service_id.nil?
235
+ fail ArgumentError, "Missing the required parameter 'service_id' when calling ProductNgwafApi.get_product_ngwaf_configuration"
236
+ end
237
+ # resource path
238
+ local_var_path = '/enabled-products/v1/ngwaf/services/{service_id}/configuration'.sub('{' + 'service_id' + '}', CGI.escape(service_id.to_s))
239
+
240
+ # query parameters
241
+ query_params = opts[:query_params] || {}
242
+
243
+ # header parameters
244
+ header_params = opts[:header_params] || {}
245
+ # HTTP header 'Accept' (if needed)
246
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
247
+
248
+ # form parameters
249
+ form_params = opts[:form_params] || {}
250
+
251
+ # http body (model)
252
+ post_body = opts[:debug_body]
253
+
254
+ # return_type
255
+ return_type = opts[:debug_return_type] || 'NgwafResponseConfigure'
256
+
257
+ # auth_names
258
+ auth_names = opts[:debug_auth_names] || ['token']
259
+
260
+ new_options = opts.merge(
261
+ :operation => :"ProductNgwafApi.get_product_ngwaf_configuration",
262
+ :header_params => header_params,
263
+ :query_params => query_params,
264
+ :form_params => form_params,
265
+ :body => post_body,
266
+ :auth_names => auth_names,
267
+ :return_type => return_type
268
+ )
269
+
270
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
271
+ if @api_client.config.debugging
272
+ @api_client.config.logger.debug "API called: ProductNgwafApi#get_product_ngwaf_configuration\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
273
+ end
274
+ return data, status_code, headers
275
+ end
276
+
277
+ # Update configuration
278
+ # Update configuration of the Next-Gen WAF product on a service.
279
+ # @option opts [String] :service_id Alphanumeric string identifying the service. (required)
280
+ # @option opts [NgwafRequestUpdateConfiguration] :ngwaf_request_update_configuration
281
+ # @return [NgwafResponseConfigure]
282
+ def set_product_ngwaf_configuration(opts = {})
283
+ data, _status_code, _headers = set_product_ngwaf_configuration_with_http_info(opts)
284
+ data
285
+ end
286
+
287
+ # Update configuration
288
+ # Update configuration of the Next-Gen WAF product on a service.
289
+ # @option opts [String] :service_id Alphanumeric string identifying the service. (required)
290
+ # @option opts [NgwafRequestUpdateConfiguration] :ngwaf_request_update_configuration
291
+ # @return [Array<(NgwafResponseConfigure, Integer, Hash)>] NgwafResponseConfigure data, response status code and response headers
292
+ def set_product_ngwaf_configuration_with_http_info(opts = {})
293
+ if @api_client.config.debugging
294
+ @api_client.config.logger.debug 'Calling API: ProductNgwafApi.set_product_ngwaf_configuration ...'
295
+ end
296
+ # unbox the parameters from the hash
297
+ service_id = opts[:'service_id']
298
+ # verify the required parameter 'service_id' is set
299
+ if @api_client.config.client_side_validation && service_id.nil?
300
+ fail ArgumentError, "Missing the required parameter 'service_id' when calling ProductNgwafApi.set_product_ngwaf_configuration"
301
+ end
302
+ # resource path
303
+ local_var_path = '/enabled-products/v1/ngwaf/services/{service_id}/configuration'.sub('{' + 'service_id' + '}', CGI.escape(service_id.to_s))
304
+
305
+ # query parameters
306
+ query_params = opts[:query_params] || {}
307
+
308
+ # header parameters
309
+ header_params = opts[:header_params] || {}
310
+ # HTTP header 'Accept' (if needed)
311
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
312
+ # HTTP header 'Content-Type'
313
+ content_type = @api_client.select_header_content_type(['application/json'])
314
+ if !content_type.nil?
315
+ header_params['Content-Type'] = content_type
316
+ end
317
+
318
+ # form parameters
319
+ form_params = opts[:form_params] || {}
320
+
321
+ # http body (model)
322
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'ngwaf_request_update_configuration'])
323
+
324
+ # return_type
325
+ return_type = opts[:debug_return_type] || 'NgwafResponseConfigure'
326
+
327
+ # auth_names
328
+ auth_names = opts[:debug_auth_names] || ['token']
329
+
330
+ new_options = opts.merge(
331
+ :operation => :"ProductNgwafApi.set_product_ngwaf_configuration",
332
+ :header_params => header_params,
333
+ :query_params => query_params,
334
+ :form_params => form_params,
335
+ :body => post_body,
336
+ :auth_names => auth_names,
337
+ :return_type => return_type
338
+ )
339
+
340
+ data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options)
341
+ if @api_client.config.debugging
342
+ @api_client.config.logger.debug "API called: ProductNgwafApi#set_product_ngwaf_configuration\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
343
+ end
344
+ return data, status_code, headers
345
+ end
346
+ end
347
+ end
@@ -0,0 +1,186 @@
1
+ =begin
2
+ #Fastly API
3
+
4
+ #Via the Fastly API you can perform any of the operations that are possible within the management console, including creating services, domains, and backends, configuring rules or uploading your own application code, as well as account operations such as user administration and billing reports. The API is organized into collections of endpoints that allow manipulation of objects related to Fastly services and accounts. For the most accurate and up-to-date API reference content, visit our [Developer Hub](https://www.fastly.com/documentation/reference/api/)
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: oss@fastly.com
8
+
9
+ =end
10
+
11
+ require 'cgi'
12
+
13
+ module Fastly
14
+ class ProductObjectStorageApi
15
+ attr_accessor :api_client
16
+
17
+ def initialize(api_client = ApiClient.default)
18
+ @api_client = api_client
19
+ end
20
+ # Disable product
21
+ # Disable the Object Storage product
22
+ # @return [nil]
23
+ def disable_product_object_storage(opts = {})
24
+ disable_product_object_storage_with_http_info(opts)
25
+ nil
26
+ end
27
+
28
+ # Disable product
29
+ # Disable the Object Storage product
30
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
31
+ def disable_product_object_storage_with_http_info(opts = {})
32
+ if @api_client.config.debugging
33
+ @api_client.config.logger.debug 'Calling API: ProductObjectStorageApi.disable_product_object_storage ...'
34
+ end
35
+ # unbox the parameters from the hash
36
+ # resource path
37
+ local_var_path = '/enabled-products/v1/object_storage'
38
+
39
+ # query parameters
40
+ query_params = opts[:query_params] || {}
41
+
42
+ # header parameters
43
+ header_params = opts[:header_params] || {}
44
+
45
+ # form parameters
46
+ form_params = opts[:form_params] || {}
47
+
48
+ # http body (model)
49
+ post_body = opts[:debug_body]
50
+
51
+ # return_type
52
+ return_type = opts[:debug_return_type]
53
+
54
+ # auth_names
55
+ auth_names = opts[:debug_auth_names] || ['token']
56
+
57
+ new_options = opts.merge(
58
+ :operation => :"ProductObjectStorageApi.disable_product_object_storage",
59
+ :header_params => header_params,
60
+ :query_params => query_params,
61
+ :form_params => form_params,
62
+ :body => post_body,
63
+ :auth_names => auth_names,
64
+ :return_type => return_type
65
+ )
66
+
67
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
68
+ if @api_client.config.debugging
69
+ @api_client.config.logger.debug "API called: ProductObjectStorageApi#disable_product_object_storage\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
70
+ end
71
+ return data, status_code, headers
72
+ end
73
+
74
+ # Enable product
75
+ # Enable the Object Storage product
76
+ # @return [ObjectStorageResponseBodyEnable]
77
+ def enable_object_storage(opts = {})
78
+ data, _status_code, _headers = enable_object_storage_with_http_info(opts)
79
+ data
80
+ end
81
+
82
+ # Enable product
83
+ # Enable the Object Storage product
84
+ # @return [Array<(ObjectStorageResponseBodyEnable, Integer, Hash)>] ObjectStorageResponseBodyEnable data, response status code and response headers
85
+ def enable_object_storage_with_http_info(opts = {})
86
+ if @api_client.config.debugging
87
+ @api_client.config.logger.debug 'Calling API: ProductObjectStorageApi.enable_object_storage ...'
88
+ end
89
+ # unbox the parameters from the hash
90
+ # resource path
91
+ local_var_path = '/enabled-products/v1/object_storage'
92
+
93
+ # query parameters
94
+ query_params = opts[:query_params] || {}
95
+
96
+ # header parameters
97
+ header_params = opts[:header_params] || {}
98
+ # HTTP header 'Accept' (if needed)
99
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
100
+
101
+ # form parameters
102
+ form_params = opts[:form_params] || {}
103
+
104
+ # http body (model)
105
+ post_body = opts[:debug_body]
106
+
107
+ # return_type
108
+ return_type = opts[:debug_return_type] || 'ObjectStorageResponseBodyEnable'
109
+
110
+ # auth_names
111
+ auth_names = opts[:debug_auth_names] || ['token']
112
+
113
+ new_options = opts.merge(
114
+ :operation => :"ProductObjectStorageApi.enable_object_storage",
115
+ :header_params => header_params,
116
+ :query_params => query_params,
117
+ :form_params => form_params,
118
+ :body => post_body,
119
+ :auth_names => auth_names,
120
+ :return_type => return_type
121
+ )
122
+
123
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
124
+ if @api_client.config.debugging
125
+ @api_client.config.logger.debug "API called: ProductObjectStorageApi#enable_object_storage\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
126
+ end
127
+ return data, status_code, headers
128
+ end
129
+
130
+ # Get product enablement status
131
+ # Get the enablement status of the Object Storage product
132
+ # @return [ObjectStorageResponseBodyEnable]
133
+ def get_object_storage(opts = {})
134
+ data, _status_code, _headers = get_object_storage_with_http_info(opts)
135
+ data
136
+ end
137
+
138
+ # Get product enablement status
139
+ # Get the enablement status of the Object Storage product
140
+ # @return [Array<(ObjectStorageResponseBodyEnable, Integer, Hash)>] ObjectStorageResponseBodyEnable data, response status code and response headers
141
+ def get_object_storage_with_http_info(opts = {})
142
+ if @api_client.config.debugging
143
+ @api_client.config.logger.debug 'Calling API: ProductObjectStorageApi.get_object_storage ...'
144
+ end
145
+ # unbox the parameters from the hash
146
+ # resource path
147
+ local_var_path = '/enabled-products/v1/object_storage'
148
+
149
+ # query parameters
150
+ query_params = opts[:query_params] || {}
151
+
152
+ # header parameters
153
+ header_params = opts[:header_params] || {}
154
+ # HTTP header 'Accept' (if needed)
155
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
156
+
157
+ # form parameters
158
+ form_params = opts[:form_params] || {}
159
+
160
+ # http body (model)
161
+ post_body = opts[:debug_body]
162
+
163
+ # return_type
164
+ return_type = opts[:debug_return_type] || 'ObjectStorageResponseBodyEnable'
165
+
166
+ # auth_names
167
+ auth_names = opts[:debug_auth_names] || ['token']
168
+
169
+ new_options = opts.merge(
170
+ :operation => :"ProductObjectStorageApi.get_object_storage",
171
+ :header_params => header_params,
172
+ :query_params => query_params,
173
+ :form_params => form_params,
174
+ :body => post_body,
175
+ :auth_names => auth_names,
176
+ :return_type => return_type
177
+ )
178
+
179
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
180
+ if @api_client.config.debugging
181
+ @api_client.config.logger.debug "API called: ProductObjectStorageApi#get_object_storage\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
182
+ end
183
+ return data, status_code, headers
184
+ end
185
+ end
186
+ end