fastly 10.0.0 → 12.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 (496) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +54 -1
  3. data/Gemfile.lock +3 -3
  4. data/README.md +34 -47
  5. data/docs/AclsInComputeApi.md +1 -1
  6. data/docs/AutomationToken.md +1 -1
  7. data/docs/AutomationTokenCreateRequestAttributes.md +1 -1
  8. data/docs/AutomationTokenCreateResponse.md +4 -6
  9. data/docs/AutomationTokenCreateResponseAllOf.md +3 -3
  10. data/docs/AutomationTokenResponse.md +4 -6
  11. data/docs/AutomationTokenResponseAllOf.md +4 -4
  12. data/docs/Backend.md +1 -0
  13. data/docs/BackendApi.md +4 -0
  14. data/docs/BackendResponse.md +1 -0
  15. data/docs/BillingUsageMetricsApi.md +11 -9
  16. data/docs/BotManagementResponseBodyGetAllServices.md +13 -0
  17. data/docs/BotManagementResponseCustomer.md +10 -0
  18. data/docs/{BillingBandwidth.md → BotManagementResponseCustomerCustomer.md} +3 -3
  19. data/docs/{BillingEstimateLines.md → BotManagementResponseEnabledServices.md} +2 -2
  20. data/docs/{RelationshipWafActiveRules.md → BotManagementResponseLinksGetAllServices.md} +2 -2
  21. data/docs/BotManagementResponseLinksGetAllServicesLinks.md +10 -0
  22. data/docs/BrotliCompressionResponseBodyGetAllServices.md +13 -0
  23. data/docs/BrotliCompressionResponseCustomer.md +10 -0
  24. data/docs/BrotliCompressionResponseEnabledServices.md +10 -0
  25. data/docs/{RelationshipWafRuleRevision.md → BrotliCompressionResponseLinksGetAllServices.md} +2 -2
  26. data/docs/BrotliCompressionResponseLinksGetAllServicesLinks.md +10 -0
  27. data/docs/ComputeAclListEntriesMeta.md +1 -1
  28. data/docs/ComputeAclUpdateEntry.md +2 -2
  29. data/docs/{TypeWafExclusion.md → DdosProtectionAction.md} +1 -1
  30. data/docs/DdosProtectionApi.md +223 -0
  31. data/docs/DdosProtectionAttributeStats.md +11 -0
  32. data/docs/DdosProtectionAttributeValue.md +11 -0
  33. data/docs/DdosProtectionError.md +13 -0
  34. data/docs/{IncludedWithWafFirewallVersionItem.md → DdosProtectionErrorErrors.md} +3 -2
  35. data/docs/DdosProtectionEvent.md +17 -0
  36. data/docs/DdosProtectionEventAllOf.md +15 -0
  37. data/docs/DdosProtectionNotAuthenticated.md +11 -0
  38. data/docs/DdosProtectionNotFound.md +11 -0
  39. data/docs/DdosProtectionResponseBodyGetAllServices.md +13 -0
  40. data/docs/DdosProtectionResponseCustomer.md +10 -0
  41. data/docs/DdosProtectionResponseEnabledServices.md +10 -0
  42. data/docs/{WafFirewall.md → DdosProtectionResponseLinksGetAllServices.md} +2 -2
  43. data/docs/{BulkWafActiveRules.md → DdosProtectionResponseLinksGetAllServicesLinks.md} +2 -2
  44. data/docs/DdosProtectionRule.md +22 -0
  45. data/docs/DdosProtectionRuleAllOf.md +20 -0
  46. data/docs/{TypeWafActiveRule.md → DdosProtectionTrafficAttribute.md} +1 -1
  47. data/docs/{SnippetResponseCommon.md → DdosProtectionTrafficStats.md} +4 -5
  48. data/docs/DdosProtectionTrafficStatsAllOf.md +12 -0
  49. data/docs/DictionaryApi.md +15 -15
  50. data/docs/DictionaryInfoApi.md +3 -3
  51. data/docs/DictionaryItemApi.md +22 -22
  52. data/docs/DomainInspectorResponseBodyGetAllServices.md +13 -0
  53. data/docs/DomainInspectorResponseCustomer.md +10 -0
  54. data/docs/DomainInspectorResponseEnabledServices.md +10 -0
  55. data/docs/{WafExclusion.md → DomainInspectorResponseLinksGetAllServices.md} +2 -2
  56. data/docs/DomainInspectorResponseLinksGetAllServicesLinks.md +10 -0
  57. data/docs/DomainOwnershipsApi.md +2 -2
  58. data/docs/FanoutResponseBodyGetAllServices.md +13 -0
  59. data/docs/FanoutResponseCustomer.md +10 -0
  60. data/docs/FanoutResponseEnabledServices.md +10 -0
  61. data/docs/FanoutResponseLinksGetAllServices.md +10 -0
  62. data/docs/{SnippetWithDynamicNumberAllOf.md → FanoutResponseLinksGetAllServicesLinks.md} +2 -2
  63. data/docs/Header.md +2 -0
  64. data/docs/HeaderApi.md +8 -8
  65. data/docs/HistoricalApi.md +10 -10
  66. data/docs/ImageOptimizerResponseBodyGetAllServices.md +13 -0
  67. data/docs/ImageOptimizerResponseCustomer.md +10 -0
  68. data/docs/ImageOptimizerResponseEnabledServices.md +10 -0
  69. data/docs/ImageOptimizerResponseLinksGetAllServices.md +10 -0
  70. data/docs/{BillingInvoiceId.md → ImageOptimizerResponseLinksGetAllServicesLinks.md} +2 -2
  71. data/docs/InlineResponse2002.md +2 -1
  72. data/docs/InlineResponse2003.md +1 -1
  73. data/docs/InlineResponse2004.md +1 -2
  74. data/docs/InlineResponse2005.md +1 -1
  75. data/docs/InlineResponse2006.md +1 -1
  76. data/docs/InlineResponse2007.md +2 -1
  77. data/docs/InlineResponse2008.md +11 -0
  78. data/docs/InlineResponse2009.md +10 -0
  79. data/docs/KvStoreApi.md +2 -2
  80. data/docs/KvStoreItemApi.md +6 -6
  81. data/docs/KvStoreRequestCreate.md +1 -1
  82. data/docs/LogAggregationsFilterFieldItem.md +12 -0
  83. data/docs/LogAggregationsGetResponse.md +11 -0
  84. data/docs/LogAggregationsGetResponseMeta.md +15 -0
  85. data/docs/LogAggregationsGetResponseMetaFilters.md +10 -0
  86. data/docs/LogAggregationsResult.md +11 -0
  87. data/docs/{WafActiveRuleCreationResponse.md → LogAggregationsValueField.md} +19 -9
  88. data/docs/LogExplorerInsightsResponseBodyGetAllServices.md +13 -0
  89. data/docs/LogExplorerInsightsResponseCustomer.md +10 -0
  90. data/docs/LogExplorerInsightsResponseEnabledServices.md +10 -0
  91. data/docs/LogExplorerInsightsResponseLinksGetAllServices.md +10 -0
  92. data/docs/LogExplorerInsightsResponseLinksGetAllServicesLinks.md +10 -0
  93. data/docs/LogTimeseriesFilterFieldItem.md +12 -0
  94. data/docs/LogTimeseriesGetResponse.md +11 -0
  95. data/docs/LogTimeseriesGetResponseMeta.md +14 -0
  96. data/docs/LogTimeseriesGetResponseMetaFilters.md +10 -0
  97. data/docs/LogTimeseriesResult.md +11 -0
  98. data/docs/{TypeWafFirewall.md → LogTimeseriesResultDimensions.md} +2 -1
  99. data/docs/{WafRuleRevisionOrLatest.md → LogTimeseriesValueField.md} +15 -5
  100. data/docs/LoggingAzureblobAdditional.md +1 -1
  101. data/docs/LoggingAzureblobApi.md +4 -4
  102. data/docs/LoggingAzureblobResponse.md +1 -1
  103. data/docs/NgwafResponseBodyGetAllServices.md +13 -0
  104. data/docs/NgwafResponseCustomer.md +10 -0
  105. data/docs/{BillingResponseItemItemsData.md → NgwafResponseEnabledServices.md} +2 -2
  106. data/docs/NgwafResponseLinksGetAllServices.md +10 -0
  107. data/docs/{BillingEstimateInvoiceId.md → NgwafResponseLinksGetAllServicesLinks.md} +2 -2
  108. data/docs/ObservabilityAggregationsForLogsApi.md +71 -0
  109. data/docs/ObservabilityTimeseriesForLogsApi.md +67 -0
  110. data/docs/OriginInspectorResponseBodyGetAllServices.md +13 -0
  111. data/docs/OriginInspectorResponseCustomer.md +10 -0
  112. data/docs/OriginInspectorResponseEnabledServices.md +10 -0
  113. data/docs/OriginInspectorResponseLinksGetAllServices.md +10 -0
  114. data/docs/OriginInspectorResponseLinksGetAllServicesLinks.md +10 -0
  115. data/docs/ProductBotManagementApi.md +33 -0
  116. data/docs/ProductBrotliCompressionApi.md +33 -0
  117. data/docs/ProductDdosProtectionApi.md +34 -1
  118. data/docs/ProductDomainInspectorApi.md +33 -0
  119. data/docs/ProductFanoutApi.md +33 -0
  120. data/docs/ProductImageOptimizerApi.md +33 -0
  121. data/docs/ProductLogExplorerInsightsApi.md +33 -0
  122. data/docs/ProductNgwafApi.md +33 -0
  123. data/docs/ProductOriginInspectorApi.md +33 -0
  124. data/docs/ProductWebsocketsApi.md +33 -0
  125. data/docs/RateLimiter.md +1 -1
  126. data/docs/RateLimiterApi.md +4 -4
  127. data/docs/RateLimiterResponse.md +1 -1
  128. data/docs/Resource.md +1 -1
  129. data/docs/ResourceApi.md +4 -4
  130. data/docs/ResourceResponse.md +1 -1
  131. data/docs/Results.md +7 -0
  132. data/docs/SecretStoreApi.md +2 -2
  133. data/docs/SecretStoreItemApi.md +2 -2
  134. data/docs/ServiceAuthorizationsApi.md +2 -2
  135. data/docs/SnippetApi.md +2 -2
  136. data/docs/{SnippetResponseCommonAllOf.md → SnippetResponseAllOf.md} +1 -1
  137. data/docs/TlsBulkCertificatesApi.md +4 -0
  138. data/docs/WebsocketsResponseBodyGetAllServices.md +13 -0
  139. data/docs/WebsocketsResponseCustomer.md +10 -0
  140. data/docs/WebsocketsResponseEnabledServices.md +10 -0
  141. data/docs/WebsocketsResponseLinksGetAllServices.md +10 -0
  142. data/docs/{SnippetAllOf.md → WebsocketsResponseLinksGetAllServicesLinks.md} +2 -2
  143. data/lib/fastly/api/acls_in_compute_api.rb +2 -2
  144. data/lib/fastly/api/automation_tokens_api.rb +6 -6
  145. data/lib/fastly/api/backend_api.rb +6 -0
  146. data/lib/fastly/api/billing_usage_metrics_api.rb +11 -8
  147. data/lib/fastly/api/ddos_protection_api.rb +367 -0
  148. data/lib/fastly/api/dictionary_api.rb +10 -10
  149. data/lib/fastly/api/dictionary_info_api.rb +2 -2
  150. data/lib/fastly/api/dictionary_item_api.rb +18 -18
  151. data/lib/fastly/api/domain_ownerships_api.rb +3 -3
  152. data/lib/fastly/api/header_api.rb +8 -8
  153. data/lib/fastly/api/historical_api.rb +15 -15
  154. data/lib/fastly/api/kv_store_api.rb +3 -3
  155. data/lib/fastly/api/kv_store_item_api.rb +8 -8
  156. data/lib/fastly/api/logging_azureblob_api.rb +4 -4
  157. data/lib/fastly/api/observability_aggregations_for_logs_api.rb +128 -0
  158. data/lib/fastly/api/observability_timeseries_for_logs_api.rb +132 -0
  159. data/lib/fastly/api/product_bot_management_api.rb +56 -0
  160. data/lib/fastly/api/product_brotli_compression_api.rb +56 -0
  161. data/lib/fastly/api/product_ddos_protection_api.rb +58 -2
  162. data/lib/fastly/api/product_domain_inspector_api.rb +56 -0
  163. data/lib/fastly/api/product_fanout_api.rb +56 -0
  164. data/lib/fastly/api/product_image_optimizer_api.rb +56 -0
  165. data/lib/fastly/api/product_log_explorer_insights_api.rb +56 -0
  166. data/lib/fastly/api/product_ngwaf_api.rb +56 -0
  167. data/lib/fastly/api/product_origin_inspector_api.rb +56 -0
  168. data/lib/fastly/api/product_websockets_api.rb +56 -0
  169. data/lib/fastly/api/rate_limiter_api.rb +4 -4
  170. data/lib/fastly/api/resource_api.rb +4 -4
  171. data/lib/fastly/api/secret_store_api.rb +3 -3
  172. data/lib/fastly/api/secret_store_item_api.rb +3 -3
  173. data/lib/fastly/api/service_authorizations_api.rb +3 -3
  174. data/lib/fastly/api/snippet_api.rb +3 -3
  175. data/lib/fastly/api/tls_bulk_certificates_api.rb +6 -0
  176. data/lib/fastly/configuration.rb +102 -192
  177. data/lib/fastly/models/automation_token.rb +1 -1
  178. data/lib/fastly/models/automation_token_create_request_attributes.rb +1 -1
  179. data/lib/fastly/models/automation_token_create_response.rb +21 -43
  180. data/lib/fastly/models/automation_token_create_response_all_of.rb +13 -12
  181. data/lib/fastly/models/automation_token_response.rb +24 -46
  182. data/lib/fastly/models/automation_token_response_all_of.rb +11 -10
  183. data/lib/fastly/models/backend.rb +11 -1
  184. data/lib/fastly/models/backend_response.rb +11 -1
  185. data/lib/fastly/models/{waf_active_rules_response.rb → bot_management_response_body_get_all_services.rb} +34 -33
  186. data/lib/fastly/models/bot_management_response_customer.rb +216 -0
  187. data/lib/fastly/models/{relationship_member_waf_tag.rb → bot_management_response_customer_customer.rb} +18 -19
  188. data/lib/fastly/models/bot_management_response_enabled_services.rb +219 -0
  189. data/lib/fastly/models/{relationship_waf_active_rules_waf_active_rules.rb → bot_management_response_links_get_all_services.rb} +10 -12
  190. data/lib/fastly/models/bot_management_response_links_get_all_services_links.rb +217 -0
  191. data/lib/fastly/models/brotli_compression_response_body_get_all_services.rb +256 -0
  192. data/lib/fastly/models/brotli_compression_response_customer.rb +216 -0
  193. data/lib/fastly/models/brotli_compression_response_enabled_services.rb +219 -0
  194. data/lib/fastly/models/brotli_compression_response_links_get_all_services.rb +216 -0
  195. data/lib/fastly/models/brotli_compression_response_links_get_all_services_links.rb +217 -0
  196. data/lib/fastly/models/compute_acl_list_entries_meta.rb +1 -1
  197. data/lib/fastly/models/compute_acl_update_entry.rb +2 -2
  198. data/lib/fastly/models/{type_waf_exclusion.rb → ddos_protection_action.rb} +7 -4
  199. data/lib/fastly/models/{waf_tag_attributes.rb → ddos_protection_attribute_stats.rb} +19 -7
  200. data/lib/fastly/models/{relationship_waf_rule_revisions.rb → ddos_protection_attribute_value.rb} +20 -10
  201. data/lib/fastly/models/{relationship_waf_tags.rb → ddos_protection_error.rb} +39 -10
  202. data/lib/fastly/models/{relationship_member_waf_rule.rb → ddos_protection_error_errors.rb} +16 -18
  203. data/lib/fastly/models/{schemas_snippet_response_common.rb → ddos_protection_event.rb} +53 -30
  204. data/lib/fastly/models/{billing_bandwidth_tiers.rb → ddos_protection_event_all_of.rb} +45 -28
  205. data/lib/fastly/models/{billing_status.rb → ddos_protection_not_authenticated.rb} +18 -21
  206. data/lib/fastly/models/{snippet_all_of.rb → ddos_protection_not_found.rb} +27 -19
  207. data/lib/fastly/models/ddos_protection_response_body_get_all_services.rb +256 -0
  208. data/lib/fastly/models/ddos_protection_response_customer.rb +216 -0
  209. data/lib/fastly/models/ddos_protection_response_enabled_services.rb +219 -0
  210. data/lib/fastly/models/ddos_protection_response_links_get_all_services.rb +216 -0
  211. data/lib/fastly/models/ddos_protection_response_links_get_all_services_links.rb +217 -0
  212. data/lib/fastly/models/{snippet_response_post.rb → ddos_protection_rule.rb} +99 -119
  213. data/lib/fastly/models/{billing_estimate_response.rb → ddos_protection_rule_all_of.rb} +88 -70
  214. data/lib/fastly/models/{type_waf_firewall.rb → ddos_protection_traffic_attribute.rb} +10 -4
  215. data/lib/fastly/models/{snippet_response_common.rb → ddos_protection_traffic_stats.rb} +25 -33
  216. data/lib/fastly/models/{waf_rule.rb → ddos_protection_traffic_stats_all_of.rb} +22 -20
  217. data/lib/fastly/models/domain_inspector_response_body_get_all_services.rb +256 -0
  218. data/lib/fastly/models/domain_inspector_response_customer.rb +216 -0
  219. data/lib/fastly/models/domain_inspector_response_enabled_services.rb +219 -0
  220. data/lib/fastly/models/domain_inspector_response_links_get_all_services.rb +216 -0
  221. data/lib/fastly/models/{relationship_waf_firewall.rb → domain_inspector_response_links_get_all_services_links.rb} +11 -10
  222. data/lib/fastly/models/{waf_firewalls_response.rb → fanout_response_body_get_all_services.rb} +34 -33
  223. data/lib/fastly/models/{relationship_waf_rule.rb → fanout_response_customer.rb} +10 -10
  224. data/lib/fastly/models/{relationship_member_waf_firewall.rb → fanout_response_enabled_services.rb} +13 -21
  225. data/lib/fastly/models/fanout_response_links_get_all_services.rb +216 -0
  226. data/lib/fastly/models/{billing_invoice_id.rb → fanout_response_links_get_all_services_links.rb} +11 -10
  227. data/lib/fastly/models/header.rb +26 -4
  228. data/lib/fastly/models/header_response.rb +0 -1
  229. data/lib/fastly/models/image_optimizer_response_body_get_all_services.rb +256 -0
  230. data/lib/fastly/models/image_optimizer_response_customer.rb +216 -0
  231. data/lib/fastly/models/image_optimizer_response_enabled_services.rb +219 -0
  232. data/lib/fastly/models/image_optimizer_response_links_get_all_services.rb +216 -0
  233. data/lib/fastly/models/image_optimizer_response_links_get_all_services_links.rb +217 -0
  234. data/lib/fastly/models/inline_response2002.rb +18 -8
  235. data/lib/fastly/models/inline_response2003.rb +1 -1
  236. data/lib/fastly/models/inline_response2004.rb +8 -18
  237. data/lib/fastly/models/inline_response2005.rb +1 -1
  238. data/lib/fastly/models/inline_response2006.rb +1 -1
  239. data/lib/fastly/models/inline_response2007.rb +13 -4
  240. data/lib/fastly/models/{relationship_waf_firewall_version_waf_firewall_version.rb → inline_response2008.rb} +16 -7
  241. data/lib/fastly/models/{bulk_waf_active_rules.rb → inline_response2009.rb} +4 -4
  242. data/lib/fastly/models/kv_store_request_create.rb +1 -1
  243. data/lib/fastly/models/{waf_active_rule_data_attributes.rb → log_aggregations_filter_field_item.rb} +33 -32
  244. data/lib/fastly/models/{relationship_waf_rule_waf_rule.rb → log_aggregations_get_response.rb} +16 -7
  245. data/lib/fastly/models/{waf_firewall_version_response_data.rb → log_aggregations_get_response_meta.rb} +77 -39
  246. data/lib/fastly/models/log_aggregations_get_response_meta_filters.rb +220 -0
  247. data/lib/fastly/models/{waf_rules_response_all_of.rb → log_aggregations_result.rb} +18 -18
  248. data/lib/fastly/models/{waf_active_rule_creation_response.rb → log_aggregations_value_field.rb} +8 -3
  249. data/lib/fastly/models/log_explorer_insights_response_body_get_all_services.rb +256 -0
  250. data/lib/fastly/models/log_explorer_insights_response_customer.rb +216 -0
  251. data/lib/fastly/models/log_explorer_insights_response_enabled_services.rb +219 -0
  252. data/lib/fastly/models/log_explorer_insights_response_links_get_all_services.rb +216 -0
  253. data/lib/fastly/models/log_explorer_insights_response_links_get_all_services_links.rb +217 -0
  254. data/lib/fastly/models/{snippet_with_dynamic_number_all_of.rb → log_timeseries_filter_field_item.rb} +39 -19
  255. data/lib/fastly/models/{waf_tags_response_all_of.rb → log_timeseries_get_response.rb} +11 -13
  256. data/lib/fastly/models/{included_with_waf_exclusion_item.rb → log_timeseries_get_response_meta.rb} +44 -45
  257. data/lib/fastly/models/{billing_bandwidth.rb → log_timeseries_get_response_meta_filters.rb} +13 -20
  258. data/lib/fastly/models/{waf_firewall_response.rb → log_timeseries_result.rb} +17 -17
  259. data/lib/fastly/models/{waf_exclusion_response.rb → log_timeseries_result_dimensions.rb} +10 -10
  260. data/lib/fastly/models/{waf_rule_revision_or_latest.rb → log_timeseries_value_field.rb} +6 -1
  261. data/lib/fastly/models/logging_azureblob_additional.rb +1 -1
  262. data/lib/fastly/models/logging_azureblob_response.rb +1 -1
  263. data/lib/fastly/models/{waf_firewall_versions_response.rb → ngwaf_response_body_get_all_services.rb} +34 -33
  264. data/lib/fastly/models/{waf_active_rule_response.rb → ngwaf_response_customer.rb} +10 -10
  265. data/lib/fastly/models/{billing_response_item_items_data.rb → ngwaf_response_enabled_services.rb} +12 -11
  266. data/lib/fastly/models/{waf_rule_revision_response_data_all_of.rb → ngwaf_response_links_get_all_services.rb} +10 -10
  267. data/lib/fastly/models/{billing_estimate_invoice_id.rb → ngwaf_response_links_get_all_services_links.rb} +11 -10
  268. data/lib/fastly/models/origin_inspector_response_body_get_all_services.rb +256 -0
  269. data/lib/fastly/models/origin_inspector_response_customer.rb +216 -0
  270. data/lib/fastly/models/origin_inspector_response_enabled_services.rb +219 -0
  271. data/lib/fastly/models/origin_inspector_response_links_get_all_services.rb +216 -0
  272. data/lib/fastly/models/origin_inspector_response_links_get_all_services_links.rb +217 -0
  273. data/lib/fastly/models/pop.rb +6 -6
  274. data/lib/fastly/models/rate_limiter.rb +1 -1
  275. data/lib/fastly/models/rate_limiter_response.rb +1 -1
  276. data/lib/fastly/models/resource.rb +1 -1
  277. data/lib/fastly/models/resource_response.rb +1 -1
  278. data/lib/fastly/models/results.rb +71 -1
  279. data/lib/fastly/models/schemas_snippet_response.rb +3 -2
  280. data/lib/fastly/models/snippet.rb +0 -8
  281. data/lib/fastly/models/snippet_response.rb +2 -1
  282. data/lib/fastly/models/{snippet_response_common_all_of.rb → snippet_response_all_of.rb} +3 -3
  283. data/lib/fastly/models/{waf_exclusions_response.rb → websockets_response_body_get_all_services.rb} +34 -33
  284. data/lib/fastly/models/{relationship_waf_tags_waf_tags.rb → websockets_response_customer.rb} +10 -12
  285. data/lib/fastly/models/{billing_estimate_lines.rb → websockets_response_enabled_services.rb} +12 -11
  286. data/lib/fastly/models/websockets_response_links_get_all_services.rb +216 -0
  287. data/lib/fastly/models/websockets_response_links_get_all_services_links.rb +217 -0
  288. data/lib/fastly/version.rb +1 -1
  289. data/lib/fastly.rb +84 -135
  290. data/sig.json +1 -1
  291. metadata +170 -272
  292. data/docs/Billing.md +0 -16
  293. data/docs/BillingApi.md +0 -139
  294. data/docs/BillingBandwidthTiers.md +0 -14
  295. data/docs/BillingEstimateLinesLineItems.md +0 -18
  296. data/docs/BillingEstimateResponse.md +0 -18
  297. data/docs/BillingRegions.md +0 -13
  298. data/docs/BillingResponse.md +0 -18
  299. data/docs/BillingResponseLineItem.md +0 -29
  300. data/docs/BillingStatus.md +0 -11
  301. data/docs/BillingTotal.md +0 -25
  302. data/docs/BillingTotalExtras.md +0 -12
  303. data/docs/HeaderResponseAdditional.md +0 -11
  304. data/docs/IncludedWithWafActiveRuleItem.md +0 -13
  305. data/docs/IncludedWithWafExclusionItem.md +0 -12
  306. data/docs/IncludedWithWafRuleItem.md +0 -12
  307. data/docs/LineItemData.md +0 -26
  308. data/docs/RelationshipMemberWafActiveRule.md +0 -11
  309. data/docs/RelationshipMemberWafFirewall.md +0 -11
  310. data/docs/RelationshipMemberWafFirewallVersion.md +0 -11
  311. data/docs/RelationshipMemberWafRule.md +0 -11
  312. data/docs/RelationshipMemberWafRuleRevision.md +0 -11
  313. data/docs/RelationshipMemberWafTag.md +0 -11
  314. data/docs/RelationshipWafActiveRulesWafActiveRules.md +0 -10
  315. data/docs/RelationshipWafFirewall.md +0 -10
  316. data/docs/RelationshipWafFirewallVersion.md +0 -10
  317. data/docs/RelationshipWafFirewallVersionWafFirewallVersion.md +0 -10
  318. data/docs/RelationshipWafFirewallVersions.md +0 -10
  319. data/docs/RelationshipWafFirewallWafFirewall.md +0 -10
  320. data/docs/RelationshipWafRule.md +0 -10
  321. data/docs/RelationshipWafRuleRevisionWafRuleRevisions.md +0 -10
  322. data/docs/RelationshipWafRuleRevisions.md +0 -10
  323. data/docs/RelationshipWafRuleWafRule.md +0 -10
  324. data/docs/RelationshipWafRules.md +0 -10
  325. data/docs/RelationshipWafTags.md +0 -10
  326. data/docs/RelationshipWafTagsWafTags.md +0 -10
  327. data/docs/RelationshipsForWafActiveRule.md +0 -11
  328. data/docs/RelationshipsForWafExclusion.md +0 -11
  329. data/docs/RelationshipsForWafFirewallVersion.md +0 -11
  330. data/docs/RelationshipsForWafRule.md +0 -11
  331. data/docs/SchemasSnippetResponseCommon.md +0 -15
  332. data/docs/SchemasWafFirewallVersion.md +0 -10
  333. data/docs/SchemasWafFirewallVersionData.md +0 -11
  334. data/docs/SnippetCommon.md +0 -13
  335. data/docs/SnippetResponsePost.md +0 -20
  336. data/docs/SnippetWithDynamicNumber.md +0 -14
  337. data/docs/TypeWafFirewallVersion.md +0 -9
  338. data/docs/TypeWafRule.md +0 -9
  339. data/docs/TypeWafRuleRevision.md +0 -9
  340. data/docs/TypeWafTag.md +0 -9
  341. data/docs/WafActiveRule.md +0 -10
  342. data/docs/WafActiveRuleData.md +0 -12
  343. data/docs/WafActiveRuleDataAttributes.md +0 -12
  344. data/docs/WafActiveRuleResponse.md +0 -10
  345. data/docs/WafActiveRuleResponseData.md +0 -13
  346. data/docs/WafActiveRuleResponseDataAllOf.md +0 -12
  347. data/docs/WafActiveRuleResponseDataAttributes.md +0 -14
  348. data/docs/WafActiveRuleResponseDataAttributesAllOf.md +0 -11
  349. data/docs/WafActiveRuleResponseDataRelationships.md +0 -11
  350. data/docs/WafActiveRulesApi.md +0 -367
  351. data/docs/WafActiveRulesResponse.md +0 -13
  352. data/docs/WafActiveRulesResponseAllOf.md +0 -11
  353. data/docs/WafExclusionData.md +0 -12
  354. data/docs/WafExclusionDataAttributes.md +0 -15
  355. data/docs/WafExclusionResponse.md +0 -10
  356. data/docs/WafExclusionResponseData.md +0 -13
  357. data/docs/WafExclusionResponseDataAllOf.md +0 -12
  358. data/docs/WafExclusionResponseDataAttributes.md +0 -18
  359. data/docs/WafExclusionResponseDataAttributesAllOf.md +0 -15
  360. data/docs/WafExclusionResponseDataRelationships.md +0 -11
  361. data/docs/WafExclusionsApi.md +0 -238
  362. data/docs/WafExclusionsResponse.md +0 -13
  363. data/docs/WafExclusionsResponseAllOf.md +0 -11
  364. data/docs/WafFirewallData.md +0 -11
  365. data/docs/WafFirewallDataAttributes.md +0 -13
  366. data/docs/WafFirewallResponse.md +0 -11
  367. data/docs/WafFirewallResponseData.md +0 -13
  368. data/docs/WafFirewallResponseDataAllOf.md +0 -12
  369. data/docs/WafFirewallResponseDataAttributes.md +0 -21
  370. data/docs/WafFirewallResponseDataAttributesAllOf.md +0 -18
  371. data/docs/WafFirewallVersion.md +0 -10
  372. data/docs/WafFirewallVersionData.md +0 -11
  373. data/docs/WafFirewallVersionDataAttributes.md +0 -40
  374. data/docs/WafFirewallVersionResponse.md +0 -11
  375. data/docs/WafFirewallVersionResponseData.md +0 -13
  376. data/docs/WafFirewallVersionResponseDataAllOf.md +0 -12
  377. data/docs/WafFirewallVersionResponseDataAttributes.md +0 -24
  378. data/docs/WafFirewallVersionResponseDataAttributesAllOf.md +0 -21
  379. data/docs/WafFirewallVersionsApi.md +0 -265
  380. data/docs/WafFirewallVersionsResponse.md +0 -13
  381. data/docs/WafFirewallVersionsResponseAllOf.md +0 -11
  382. data/docs/WafFirewallsApi.md +0 -222
  383. data/docs/WafFirewallsResponse.md +0 -13
  384. data/docs/WafFirewallsResponseAllOf.md +0 -11
  385. data/docs/WafRule.md +0 -12
  386. data/docs/WafRuleAttributes.md +0 -12
  387. data/docs/WafRuleResponse.md +0 -11
  388. data/docs/WafRuleResponseData.md +0 -13
  389. data/docs/WafRuleResponseDataAllOf.md +0 -10
  390. data/docs/WafRuleRevision.md +0 -12
  391. data/docs/WafRuleRevisionAttributes.md +0 -17
  392. data/docs/WafRuleRevisionResponse.md +0 -11
  393. data/docs/WafRuleRevisionResponseData.md +0 -13
  394. data/docs/WafRuleRevisionResponseDataAllOf.md +0 -10
  395. data/docs/WafRuleRevisionsApi.md +0 -103
  396. data/docs/WafRuleRevisionsResponse.md +0 -13
  397. data/docs/WafRuleRevisionsResponseAllOf.md +0 -11
  398. data/docs/WafRulesApi.md +0 -107
  399. data/docs/WafRulesResponse.md +0 -13
  400. data/docs/WafRulesResponseAllOf.md +0 -11
  401. data/docs/WafTag.md +0 -12
  402. data/docs/WafTagAttributes.md +0 -10
  403. data/docs/WafTagsApi.md +0 -61
  404. data/docs/WafTagsResponse.md +0 -13
  405. data/docs/WafTagsResponseAllOf.md +0 -11
  406. data/docs/WafTagsResponseDataItem.md +0 -13
  407. data/lib/fastly/api/billing_api.rb +0 -229
  408. data/lib/fastly/api/waf_active_rules_api.rb +0 -667
  409. data/lib/fastly/api/waf_exclusions_api.rb +0 -433
  410. data/lib/fastly/api/waf_firewall_versions_api.rb +0 -460
  411. data/lib/fastly/api/waf_firewalls_api.rb +0 -377
  412. data/lib/fastly/api/waf_rule_revisions_api.rb +0 -177
  413. data/lib/fastly/api/waf_rules_api.rb +0 -171
  414. data/lib/fastly/api/waf_tags_api.rb +0 -100
  415. data/lib/fastly/models/billing.rb +0 -278
  416. data/lib/fastly/models/billing_estimate_lines_line_items.rb +0 -288
  417. data/lib/fastly/models/billing_regions.rb +0 -243
  418. data/lib/fastly/models/billing_response.rb +0 -307
  419. data/lib/fastly/models/billing_response_line_item.rb +0 -418
  420. data/lib/fastly/models/billing_total.rb +0 -371
  421. data/lib/fastly/models/billing_total_extras.rb +0 -237
  422. data/lib/fastly/models/header_response_additional.rb +0 -229
  423. data/lib/fastly/models/included_with_waf_active_rule_item.rb +0 -266
  424. data/lib/fastly/models/included_with_waf_firewall_version_item.rb +0 -236
  425. data/lib/fastly/models/included_with_waf_rule_item.rb +0 -257
  426. data/lib/fastly/models/line_item_data.rb +0 -377
  427. data/lib/fastly/models/relationship_member_waf_active_rule.rb +0 -227
  428. data/lib/fastly/models/relationship_member_waf_firewall_version.rb +0 -228
  429. data/lib/fastly/models/relationship_member_waf_rule_revision.rb +0 -228
  430. data/lib/fastly/models/relationship_waf_active_rules.rb +0 -216
  431. data/lib/fastly/models/relationship_waf_firewall_version.rb +0 -216
  432. data/lib/fastly/models/relationship_waf_firewall_versions.rb +0 -216
  433. data/lib/fastly/models/relationship_waf_firewall_waf_firewall.rb +0 -218
  434. data/lib/fastly/models/relationship_waf_rule_revision.rb +0 -216
  435. data/lib/fastly/models/relationship_waf_rule_revision_waf_rule_revisions.rb +0 -218
  436. data/lib/fastly/models/relationship_waf_rules.rb +0 -216
  437. data/lib/fastly/models/relationships_for_waf_active_rule.rb +0 -245
  438. data/lib/fastly/models/relationships_for_waf_exclusion.rb +0 -245
  439. data/lib/fastly/models/relationships_for_waf_firewall_version.rb +0 -245
  440. data/lib/fastly/models/relationships_for_waf_rule.rb +0 -245
  441. data/lib/fastly/models/schemas_waf_firewall_version.rb +0 -216
  442. data/lib/fastly/models/schemas_waf_firewall_version_data.rb +0 -227
  443. data/lib/fastly/models/snippet_common.rb +0 -284
  444. data/lib/fastly/models/snippet_with_dynamic_number.rb +0 -314
  445. data/lib/fastly/models/type_waf_active_rule.rb +0 -34
  446. data/lib/fastly/models/type_waf_firewall_version.rb +0 -34
  447. data/lib/fastly/models/type_waf_rule.rb +0 -34
  448. data/lib/fastly/models/type_waf_rule_revision.rb +0 -34
  449. data/lib/fastly/models/type_waf_tag.rb +0 -34
  450. data/lib/fastly/models/waf_active_rule.rb +0 -216
  451. data/lib/fastly/models/waf_active_rule_data.rb +0 -236
  452. data/lib/fastly/models/waf_active_rule_response_data.rb +0 -253
  453. data/lib/fastly/models/waf_active_rule_response_data_all_of.rb +0 -234
  454. data/lib/fastly/models/waf_active_rule_response_data_attributes.rb +0 -268
  455. data/lib/fastly/models/waf_active_rule_response_data_attributes_all_of.rb +0 -227
  456. data/lib/fastly/models/waf_active_rule_response_data_relationships.rb +0 -245
  457. data/lib/fastly/models/waf_active_rules_response_all_of.rb +0 -229
  458. data/lib/fastly/models/waf_exclusion.rb +0 -216
  459. data/lib/fastly/models/waf_exclusion_data.rb +0 -236
  460. data/lib/fastly/models/waf_exclusion_data_attributes.rb +0 -316
  461. data/lib/fastly/models/waf_exclusion_response_data.rb +0 -254
  462. data/lib/fastly/models/waf_exclusion_response_data_all_of.rb +0 -235
  463. data/lib/fastly/models/waf_exclusion_response_data_attributes.rb +0 -357
  464. data/lib/fastly/models/waf_exclusion_response_data_attributes_all_of.rb +0 -316
  465. data/lib/fastly/models/waf_exclusion_response_data_relationships.rb +0 -245
  466. data/lib/fastly/models/waf_exclusions_response_all_of.rb +0 -229
  467. data/lib/fastly/models/waf_firewall.rb +0 -216
  468. data/lib/fastly/models/waf_firewall_data.rb +0 -227
  469. data/lib/fastly/models/waf_firewall_data_attributes.rb +0 -248
  470. data/lib/fastly/models/waf_firewall_response_data.rb +0 -253
  471. data/lib/fastly/models/waf_firewall_response_data_all_of.rb +0 -234
  472. data/lib/fastly/models/waf_firewall_response_data_attributes.rb +0 -337
  473. data/lib/fastly/models/waf_firewall_response_data_attributes_all_of.rb +0 -296
  474. data/lib/fastly/models/waf_firewall_version.rb +0 -216
  475. data/lib/fastly/models/waf_firewall_version_data.rb +0 -227
  476. data/lib/fastly/models/waf_firewall_version_data_attributes.rb +0 -551
  477. data/lib/fastly/models/waf_firewall_version_response.rb +0 -227
  478. data/lib/fastly/models/waf_firewall_version_response_data_all_of.rb +0 -235
  479. data/lib/fastly/models/waf_firewall_version_response_data_attributes.rb +0 -403
  480. data/lib/fastly/models/waf_firewall_version_response_data_attributes_all_of.rb +0 -362
  481. data/lib/fastly/models/waf_firewall_versions_response_all_of.rb +0 -229
  482. data/lib/fastly/models/waf_firewalls_response_all_of.rb +0 -229
  483. data/lib/fastly/models/waf_rule_attributes.rb +0 -283
  484. data/lib/fastly/models/waf_rule_response.rb +0 -227
  485. data/lib/fastly/models/waf_rule_response_data.rb +0 -253
  486. data/lib/fastly/models/waf_rule_response_data_all_of.rb +0 -216
  487. data/lib/fastly/models/waf_rule_revision.rb +0 -237
  488. data/lib/fastly/models/waf_rule_revision_attributes.rb +0 -321
  489. data/lib/fastly/models/waf_rule_revision_response.rb +0 -227
  490. data/lib/fastly/models/waf_rule_revision_response_data.rb +0 -254
  491. data/lib/fastly/models/waf_rule_revisions_response.rb +0 -255
  492. data/lib/fastly/models/waf_rule_revisions_response_all_of.rb +0 -229
  493. data/lib/fastly/models/waf_rules_response.rb +0 -255
  494. data/lib/fastly/models/waf_tag.rb +0 -237
  495. data/lib/fastly/models/waf_tags_response.rb +0 -255
  496. data/lib/fastly/models/waf_tags_response_data_item.rb +0 -254
@@ -12,74 +12,61 @@ require 'date'
12
12
  require 'time'
13
13
 
14
14
  module Fastly
15
- class SnippetResponsePost
16
- # The name for the snippet.
17
- attr_accessor :name
15
+ class DdosProtectionRule
16
+ # Date and time in ISO 8601 format.
17
+ attr_accessor :created_at
18
18
 
19
- # The location in generated VCL where the snippet should be placed.
20
- attr_accessor :type
19
+ # Date and time in ISO 8601 format.
20
+ attr_accessor :updated_at
21
21
 
22
- # The VCL code that specifies exactly what the snippet does.
23
- attr_accessor :content
22
+ # Unique ID of the rule.
23
+ attr_accessor :id
24
24
 
25
- # Priority determines execution order. Lower numbers execute first.
26
- attr_accessor :priority
25
+ # A human-readable name for the rule.
26
+ attr_accessor :name
27
27
 
28
- # Sets the snippet version.
29
- attr_accessor :dynamic
28
+ attr_accessor :action
30
29
 
31
- # Date and time in ISO 8601 format.
32
- attr_accessor :created_at
30
+ # Alphanumeric string identifying the customer.
31
+ attr_accessor :customer_id
33
32
 
34
- # Date and time in ISO 8601 format.
35
- attr_accessor :deleted_at
33
+ # Alphanumeric string identifying the service.
34
+ attr_accessor :service_id
36
35
 
37
- # Date and time in ISO 8601 format.
38
- attr_accessor :updated_at
36
+ # Source IP address attribute.
37
+ attr_accessor :source_ip
39
38
 
40
- attr_accessor :service_id
39
+ # Country code attribute.
40
+ attr_accessor :country_code
41
41
 
42
- # String representing the number identifying a version of the service.
43
- attr_accessor :version
42
+ # Host attribute.
43
+ attr_accessor :host
44
44
 
45
- attr_accessor :id
45
+ # ASN attribute.
46
+ attr_accessor :asn
46
47
 
47
- class EnumAttributeValidator
48
- attr_reader :datatype
49
- attr_reader :allowable_values
50
-
51
- def initialize(datatype, allowable_values)
52
- @allowable_values = allowable_values.map do |value|
53
- case datatype.to_s
54
- when /Integer/i
55
- value.to_i
56
- when /Float/i
57
- value.to_f
58
- else
59
- value
60
- end
61
- end
62
- end
48
+ # Source IP prefix attribute.
49
+ attr_accessor :source_ip_prefix
63
50
 
64
- def valid?(value)
65
- !value || allowable_values.include?(value)
66
- end
67
- end
51
+ # Attribute category for additional, unlisted attributes used in a rule.
52
+ attr_accessor :additional_attributes
68
53
 
69
54
  # Attribute mapping from ruby-style variable name to JSON key.
70
55
  def self.attribute_map
71
56
  {
72
- :'name' => :'name',
73
- :'type' => :'type',
74
- :'content' => :'content',
75
- :'priority' => :'priority',
76
- :'dynamic' => :'dynamic',
77
57
  :'created_at' => :'created_at',
78
- :'deleted_at' => :'deleted_at',
79
58
  :'updated_at' => :'updated_at',
59
+ :'id' => :'id',
60
+ :'name' => :'name',
61
+ :'action' => :'action',
62
+ :'customer_id' => :'customer_id',
80
63
  :'service_id' => :'service_id',
81
- :'version' => :'version',
82
- :'id' => :'id'
64
+ :'source_ip' => :'source_ip',
65
+ :'country_code' => :'country_code',
66
+ :'host' => :'host',
67
+ :'asn' => :'asn',
68
+ :'source_ip_prefix' => :'source_ip_prefix',
69
+ :'additional_attributes' => :'additional_attributes'
83
70
  }
84
71
  end
85
72
 
@@ -91,35 +78,40 @@ module Fastly
91
78
  # Attribute type mapping.
92
79
  def self.fastly_types
93
80
  {
94
- :'name' => :'String',
95
- :'type' => :'String',
96
- :'content' => :'String',
97
- :'priority' => :'String',
98
- :'dynamic' => :'Float',
99
81
  :'created_at' => :'Time',
100
- :'deleted_at' => :'Time',
101
82
  :'updated_at' => :'Time',
83
+ :'id' => :'String',
84
+ :'name' => :'String',
85
+ :'action' => :'DdosProtectionAction',
86
+ :'customer_id' => :'String',
102
87
  :'service_id' => :'String',
103
- :'version' => :'String',
104
- :'id' => :'String'
88
+ :'source_ip' => :'String',
89
+ :'country_code' => :'String',
90
+ :'host' => :'String',
91
+ :'asn' => :'String',
92
+ :'source_ip_prefix' => :'String',
93
+ :'additional_attributes' => :'Array<String>'
105
94
  }
106
95
  end
107
96
 
108
97
  # List of attributes with nullable: true
109
98
  def self.fastly_nullable
110
99
  Set.new([
111
- :'content',
112
100
  :'created_at',
113
- :'deleted_at',
114
101
  :'updated_at',
102
+ :'source_ip',
103
+ :'country_code',
104
+ :'host',
105
+ :'asn',
106
+ :'source_ip_prefix',
115
107
  ])
116
108
  end
117
109
 
118
110
  # List of class defined in allOf (OpenAPI v3)
119
111
  def self.fastly_all_of
120
112
  [
121
- :'SnippetResponseCommon',
122
- :'SnippetWithDynamicNumber'
113
+ :'DdosProtectionRuleAllOf',
114
+ :'TimestampsNoDelete'
123
115
  ]
124
116
  end
125
117
 
@@ -127,61 +119,71 @@ module Fastly
127
119
  # @param [Hash] attributes Model attributes in the form of hash
128
120
  def initialize(attributes = {})
129
121
  if (!attributes.is_a?(Hash))
130
- fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::SnippetResponsePost` initialize method"
122
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::DdosProtectionRule` initialize method"
131
123
  end
132
124
 
133
125
  # check to see if the attribute exists and convert string to symbol for hash key
134
126
  attributes = attributes.each_with_object({}) { |(k, v), h|
135
127
  if (!self.class.attribute_map.key?(k.to_sym))
136
- fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::SnippetResponsePost`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
128
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::DdosProtectionRule`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
137
129
  end
138
130
  h[k.to_sym] = v
139
131
  }
140
132
 
141
- if attributes.key?(:'name')
142
- self.name = attributes[:'name']
133
+ if attributes.key?(:'created_at')
134
+ self.created_at = attributes[:'created_at']
143
135
  end
144
136
 
145
- if attributes.key?(:'type')
146
- self.type = attributes[:'type']
137
+ if attributes.key?(:'updated_at')
138
+ self.updated_at = attributes[:'updated_at']
147
139
  end
148
140
 
149
- if attributes.key?(:'content')
150
- self.content = attributes[:'content']
141
+ if attributes.key?(:'id')
142
+ self.id = attributes[:'id']
143
+ end
144
+
145
+ if attributes.key?(:'name')
146
+ self.name = attributes[:'name']
151
147
  end
152
148
 
153
- if attributes.key?(:'priority')
154
- self.priority = attributes[:'priority']
149
+ if attributes.key?(:'action')
150
+ self.action = attributes[:'action']
155
151
  else
156
- self.priority = '100'
152
+ self.action = 'default'
157
153
  end
158
154
 
159
- if attributes.key?(:'dynamic')
160
- self.dynamic = attributes[:'dynamic']
155
+ if attributes.key?(:'customer_id')
156
+ self.customer_id = attributes[:'customer_id']
161
157
  end
162
158
 
163
- if attributes.key?(:'created_at')
164
- self.created_at = attributes[:'created_at']
159
+ if attributes.key?(:'service_id')
160
+ self.service_id = attributes[:'service_id']
165
161
  end
166
162
 
167
- if attributes.key?(:'deleted_at')
168
- self.deleted_at = attributes[:'deleted_at']
163
+ if attributes.key?(:'source_ip')
164
+ self.source_ip = attributes[:'source_ip']
169
165
  end
170
166
 
171
- if attributes.key?(:'updated_at')
172
- self.updated_at = attributes[:'updated_at']
167
+ if attributes.key?(:'country_code')
168
+ self.country_code = attributes[:'country_code']
173
169
  end
174
170
 
175
- if attributes.key?(:'service_id')
176
- self.service_id = attributes[:'service_id']
171
+ if attributes.key?(:'host')
172
+ self.host = attributes[:'host']
177
173
  end
178
174
 
179
- if attributes.key?(:'version')
180
- self.version = attributes[:'version']
175
+ if attributes.key?(:'asn')
176
+ self.asn = attributes[:'asn']
181
177
  end
182
178
 
183
- if attributes.key?(:'id')
184
- self.id = attributes[:'id']
179
+ if attributes.key?(:'source_ip_prefix')
180
+ self.source_ip_prefix = attributes[:'source_ip_prefix']
181
+ end
182
+
183
+ if attributes.key?(:'additional_attributes')
184
+ if (value = attributes[:'additional_attributes']).is_a?(Array)
185
+ self.additional_attributes = value
186
+ end
185
187
  end
186
188
  end
187
189
 
@@ -195,49 +197,27 @@ module Fastly
195
197
  # Check to see if the all the properties in the model are valid
196
198
  # @return true if the model is valid
197
199
  def valid?
198
- type_validator = EnumAttributeValidator.new('String', ["init", "recv", "hash", "hit", "miss", "pass", "fetch", "error", "deliver", "log", "none"])
199
- return false unless type_validator.valid?(@type)
200
- dynamic_validator = EnumAttributeValidator.new('Float', [0, 1])
201
- return false unless dynamic_validator.valid?(@dynamic)
202
200
  true
203
201
  end
204
202
 
205
- # Custom attribute writer method checking allowed values (enum).
206
- # @param [Object] type Object to be assigned
207
- def type=(type)
208
- validator = EnumAttributeValidator.new('String', ["init", "recv", "hash", "hit", "miss", "pass", "fetch", "error", "deliver", "log", "none"])
209
- unless validator.valid?(type)
210
- fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
211
- end
212
- @type = type
213
- end
214
-
215
- # Custom attribute writer method checking allowed values (enum).
216
- # @param [Object] dynamic Object to be assigned
217
- def dynamic=(dynamic)
218
- validator = EnumAttributeValidator.new('Float', [0, 1])
219
- unless validator.valid?(dynamic)
220
- fail ArgumentError, "invalid value for \"dynamic\", must be one of #{validator.allowable_values}."
221
- end
222
- @dynamic = dynamic
223
- end
224
-
225
203
  # Checks equality by comparing each attribute.
226
204
  # @param [Object] Object to be compared
227
205
  def ==(o)
228
206
  return true if self.equal?(o)
229
207
  self.class == o.class &&
230
- name == o.name &&
231
- type == o.type &&
232
- content == o.content &&
233
- priority == o.priority &&
234
- dynamic == o.dynamic &&
235
208
  created_at == o.created_at &&
236
- deleted_at == o.deleted_at &&
237
209
  updated_at == o.updated_at &&
210
+ id == o.id &&
211
+ name == o.name &&
212
+ action == o.action &&
213
+ customer_id == o.customer_id &&
238
214
  service_id == o.service_id &&
239
- version == o.version &&
240
- id == o.id
215
+ source_ip == o.source_ip &&
216
+ country_code == o.country_code &&
217
+ host == o.host &&
218
+ asn == o.asn &&
219
+ source_ip_prefix == o.source_ip_prefix &&
220
+ additional_attributes == o.additional_attributes
241
221
  end
242
222
 
243
223
  # @see the `==` method
@@ -249,7 +229,7 @@ module Fastly
249
229
  # Calculates hash code according to all attributes.
250
230
  # @return [Integer] Hash code
251
231
  def hash
252
- [name, type, content, priority, dynamic, created_at, deleted_at, updated_at, service_id, version, id].hash
232
+ [created_at, updated_at, id, name, action, customer_id, service_id, source_ip, country_code, host, asn, source_ip_prefix, additional_attributes].hash
253
233
  end
254
234
 
255
235
  # Builds the object from hash
@@ -12,41 +12,53 @@ require 'date'
12
12
  require 'time'
13
13
 
14
14
  module Fastly
15
- class BillingEstimateResponse
16
- # Date and time in ISO 8601 format.
17
- attr_accessor :end_time
15
+ class DdosProtectionRuleAllOf
16
+ # Unique ID of the rule.
17
+ attr_accessor :id
18
18
 
19
- # Date and time in ISO 8601 format.
20
- attr_accessor :start_time
19
+ # A human-readable name for the rule.
20
+ attr_accessor :name
21
21
 
22
+ attr_accessor :action
23
+
24
+ # Alphanumeric string identifying the customer.
22
25
  attr_accessor :customer_id
23
26
 
24
- # The current state of our third-party billing vendor. One of `up` or `down`.
25
- attr_accessor :vendor_state
27
+ # Alphanumeric string identifying the service.
28
+ attr_accessor :service_id
29
+
30
+ # Source IP address attribute.
31
+ attr_accessor :source_ip
26
32
 
27
- attr_accessor :status
33
+ # Country code attribute.
34
+ attr_accessor :country_code
28
35
 
29
- attr_accessor :total
36
+ # Host attribute.
37
+ attr_accessor :host
30
38
 
31
- # Breakdown of regional data for products that are region based.
32
- attr_accessor :regions
39
+ # ASN attribute.
40
+ attr_accessor :asn
33
41
 
34
- attr_accessor :invoice_id
42
+ # Source IP prefix attribute.
43
+ attr_accessor :source_ip_prefix
35
44
 
36
- attr_accessor :line_items
45
+ # Attribute category for additional, unlisted attributes used in a rule.
46
+ attr_accessor :additional_attributes
37
47
 
38
48
  # Attribute mapping from ruby-style variable name to JSON key.
39
49
  def self.attribute_map
40
50
  {
41
- :'end_time' => :'end_time',
42
- :'start_time' => :'start_time',
51
+ :'id' => :'id',
52
+ :'name' => :'name',
53
+ :'action' => :'action',
43
54
  :'customer_id' => :'customer_id',
44
- :'vendor_state' => :'vendor_state',
45
- :'status' => :'status',
46
- :'total' => :'total',
47
- :'regions' => :'regions',
48
- :'invoice_id' => :'invoice_id',
49
- :'line_items' => :'line_items'
55
+ :'service_id' => :'service_id',
56
+ :'source_ip' => :'source_ip',
57
+ :'country_code' => :'country_code',
58
+ :'host' => :'host',
59
+ :'asn' => :'asn',
60
+ :'source_ip_prefix' => :'source_ip_prefix',
61
+ :'additional_attributes' => :'additional_attributes'
50
62
  }
51
63
  end
52
64
 
@@ -58,87 +70,91 @@ module Fastly
58
70
  # Attribute type mapping.
59
71
  def self.fastly_types
60
72
  {
61
- :'end_time' => :'Time',
62
- :'start_time' => :'Time',
73
+ :'id' => :'String',
74
+ :'name' => :'String',
75
+ :'action' => :'DdosProtectionAction',
63
76
  :'customer_id' => :'String',
64
- :'vendor_state' => :'String',
65
- :'status' => :'BillingStatus',
66
- :'total' => :'BillingTotal',
67
- :'regions' => :'Hash<String, BillingRegions>',
68
- :'invoice_id' => :'String',
69
- :'line_items' => :'Array<BillingEstimateLinesLineItems>'
77
+ :'service_id' => :'String',
78
+ :'source_ip' => :'String',
79
+ :'country_code' => :'String',
80
+ :'host' => :'String',
81
+ :'asn' => :'String',
82
+ :'source_ip_prefix' => :'String',
83
+ :'additional_attributes' => :'Array<String>'
70
84
  }
71
85
  end
72
86
 
73
87
  # List of attributes with nullable: true
74
88
  def self.fastly_nullable
75
89
  Set.new([
76
- :'end_time',
77
- :'start_time',
90
+ :'source_ip',
91
+ :'country_code',
92
+ :'host',
93
+ :'asn',
94
+ :'source_ip_prefix',
78
95
  ])
79
96
  end
80
97
 
81
- # List of class defined in allOf (OpenAPI v3)
82
- def self.fastly_all_of
83
- [
84
- :'Billing',
85
- :'BillingEstimateInvoiceId',
86
- :'BillingEstimateLines'
87
- ]
88
- end
89
-
90
98
  # Initializes the object
91
99
  # @param [Hash] attributes Model attributes in the form of hash
92
100
  def initialize(attributes = {})
93
101
  if (!attributes.is_a?(Hash))
94
- fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::BillingEstimateResponse` initialize method"
102
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::DdosProtectionRuleAllOf` initialize method"
95
103
  end
96
104
 
97
105
  # check to see if the attribute exists and convert string to symbol for hash key
98
106
  attributes = attributes.each_with_object({}) { |(k, v), h|
99
107
  if (!self.class.attribute_map.key?(k.to_sym))
100
- fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::BillingEstimateResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
108
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::DdosProtectionRuleAllOf`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
101
109
  end
102
110
  h[k.to_sym] = v
103
111
  }
104
112
 
105
- if attributes.key?(:'end_time')
106
- self.end_time = attributes[:'end_time']
113
+ if attributes.key?(:'id')
114
+ self.id = attributes[:'id']
115
+ end
116
+
117
+ if attributes.key?(:'name')
118
+ self.name = attributes[:'name']
107
119
  end
108
120
 
109
- if attributes.key?(:'start_time')
110
- self.start_time = attributes[:'start_time']
121
+ if attributes.key?(:'action')
122
+ self.action = attributes[:'action']
123
+ else
124
+ self.action = 'default'
111
125
  end
112
126
 
113
127
  if attributes.key?(:'customer_id')
114
128
  self.customer_id = attributes[:'customer_id']
115
129
  end
116
130
 
117
- if attributes.key?(:'vendor_state')
118
- self.vendor_state = attributes[:'vendor_state']
131
+ if attributes.key?(:'service_id')
132
+ self.service_id = attributes[:'service_id']
119
133
  end
120
134
 
121
- if attributes.key?(:'status')
122
- self.status = attributes[:'status']
135
+ if attributes.key?(:'source_ip')
136
+ self.source_ip = attributes[:'source_ip']
123
137
  end
124
138
 
125
- if attributes.key?(:'total')
126
- self.total = attributes[:'total']
139
+ if attributes.key?(:'country_code')
140
+ self.country_code = attributes[:'country_code']
127
141
  end
128
142
 
129
- if attributes.key?(:'regions')
130
- if (value = attributes[:'regions']).is_a?(Hash)
131
- self.regions = value
132
- end
143
+ if attributes.key?(:'host')
144
+ self.host = attributes[:'host']
145
+ end
146
+
147
+ if attributes.key?(:'asn')
148
+ self.asn = attributes[:'asn']
133
149
  end
134
150
 
135
- if attributes.key?(:'invoice_id')
136
- self.invoice_id = attributes[:'invoice_id']
151
+ if attributes.key?(:'source_ip_prefix')
152
+ self.source_ip_prefix = attributes[:'source_ip_prefix']
137
153
  end
138
154
 
139
- if attributes.key?(:'line_items')
140
- if (value = attributes[:'line_items']).is_a?(Array)
141
- self.line_items = value
155
+ if attributes.key?(:'additional_attributes')
156
+ if (value = attributes[:'additional_attributes']).is_a?(Array)
157
+ self.additional_attributes = value
142
158
  end
143
159
  end
144
160
  end
@@ -161,15 +177,17 @@ module Fastly
161
177
  def ==(o)
162
178
  return true if self.equal?(o)
163
179
  self.class == o.class &&
164
- end_time == o.end_time &&
165
- start_time == o.start_time &&
180
+ id == o.id &&
181
+ name == o.name &&
182
+ action == o.action &&
166
183
  customer_id == o.customer_id &&
167
- vendor_state == o.vendor_state &&
168
- status == o.status &&
169
- total == o.total &&
170
- regions == o.regions &&
171
- invoice_id == o.invoice_id &&
172
- line_items == o.line_items
184
+ service_id == o.service_id &&
185
+ source_ip == o.source_ip &&
186
+ country_code == o.country_code &&
187
+ host == o.host &&
188
+ asn == o.asn &&
189
+ source_ip_prefix == o.source_ip_prefix &&
190
+ additional_attributes == o.additional_attributes
173
191
  end
174
192
 
175
193
  # @see the `==` method
@@ -181,7 +199,7 @@ module Fastly
181
199
  # Calculates hash code according to all attributes.
182
200
  # @return [Integer] Hash code
183
201
  def hash
184
- [end_time, start_time, customer_id, vendor_state, status, total, regions, invoice_id, line_items].hash
202
+ [id, name, action, customer_id, service_id, source_ip, country_code, host, asn, source_ip_prefix, additional_attributes].hash
185
203
  end
186
204
 
187
205
  # Builds the object from hash
@@ -12,8 +12,14 @@ require 'date'
12
12
  require 'time'
13
13
 
14
14
  module Fastly
15
- class TypeWafFirewall
16
- WAF_FIREWALL = "waf_firewall".freeze
15
+ class DdosProtectionTrafficAttribute
16
+ SOURCE_IP = "source_ip".freeze
17
+ COUNTRY_CODE = "country_code".freeze
18
+ HOST = "host".freeze
19
+ ASN = "asn".freeze
20
+ SOURCE_IP_PREFIX = "source_ip_prefix".freeze
21
+ USER_AGENT = "user_agent".freeze
22
+ METHOD_PATH = "method_path".freeze
17
23
 
18
24
  # Builds the enum from string
19
25
  # @param [String] The enum value in the form of the string
@@ -26,8 +32,8 @@ module Fastly
26
32
  # @param [String] The enum value in the form of the string
27
33
  # @return [String] The enum value
28
34
  def build_from_hash(value)
29
- constantValues = TypeWafFirewall.constants.select { |c| TypeWafFirewall::const_get(c) == value }
30
- raise "Invalid ENUM value #{value} for class #TypeWafFirewall" if constantValues.empty?
35
+ constantValues = DdosProtectionTrafficAttribute.constants.select { |c| DdosProtectionTrafficAttribute::const_get(c) == value }
36
+ raise "Invalid ENUM value #{value} for class #DdosProtectionTrafficAttribute" if constantValues.empty?
31
37
  value
32
38
  end
33
39
  end