fastly 17.2.0 → 18.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 (340) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +45 -1
  3. data/Gemfile.lock +1 -1
  4. data/README.md +73 -2
  5. data/docs/AiRuntimeControlProviderConnectionsApi.md +210 -0
  6. data/docs/AiRuntimeControlProvidersApi.md +121 -0
  7. data/docs/AiRuntimeControlResponseBodyEnable.md +12 -0
  8. data/docs/AiRuntimeControlResponseCustomer.md +10 -0
  9. data/docs/AiRuntimeControlResponseLinks.md +10 -0
  10. data/docs/AiRuntimeControlResponseLinksLinks.md +10 -0
  11. data/docs/AiRuntimeControlResponseProduct.md +10 -0
  12. data/docs/AiRuntimeControlResponseProductProduct.md +11 -0
  13. data/docs/AiRuntimeControlSessionsApi.md +69 -0
  14. data/docs/AiRuntimeControlUsageMetricsApi.md +113 -0
  15. data/docs/AiRuntimeControlVirtualKeysApi.md +334 -0
  16. data/docs/ArcBedrockSetupResponse.md +11 -0
  17. data/docs/ArcCreateVirtualKeyResponse.md +19 -0
  18. data/docs/ArcError.md +12 -0
  19. data/docs/ArcFailoverTarget.md +10 -0
  20. data/docs/ArcGetProviderConnectionResponse.md +19 -0
  21. data/docs/ArcGetProviderConnectionResponseExtra.md +10 -0
  22. data/docs/ArcModel.md +12 -0
  23. data/docs/ArcModelsMeta.md +10 -0
  24. data/docs/ArcModelsResponse.md +11 -0
  25. data/docs/ArcProvider.md +13 -0
  26. data/docs/ArcProviderConnectionApiKey.md +14 -0
  27. data/docs/ArcProviderConnectionAwsIam.md +14 -0
  28. data/docs/ArcProviderConnectionListItemResponse.md +19 -0
  29. data/docs/ArcProviderConnectionListItemResponseExtra.md +10 -0
  30. data/docs/ArcProviderConnectionRequest.md +49 -0
  31. data/docs/ArcProviderConnectionResponse.md +18 -0
  32. data/docs/ArcProviderConnectionsMeta.md +11 -0
  33. data/docs/ArcProviderConnectionsResponse.md +11 -0
  34. data/docs/ArcProvidersMeta.md +10 -0
  35. data/docs/ArcProvidersResponse.md +11 -0
  36. data/docs/ArcRotateVirtualKeyRequest.md +10 -0
  37. data/docs/ArcRotateVirtualKeyResponse.md +17 -0
  38. data/docs/ArcSession.md +28 -0
  39. data/docs/ArcSessionLogEntry.md +12 -0
  40. data/docs/ArcSessionsMeta.md +14 -0
  41. data/docs/ArcSessionsResponse.md +11 -0
  42. data/docs/ArcUpdateProviderConnectionRequest.md +14 -0
  43. data/docs/ArcUpdateVirtualKeyRequest.md +16 -0
  44. data/docs/ArcUpdateVirtualKeyResponse.md +20 -0
  45. data/docs/ArcUsageMetric.md +18 -0
  46. data/docs/ArcUsageMetricsMeta.md +11 -0
  47. data/docs/ArcUsageMetricsResponse.md +11 -0
  48. data/docs/ArcVirtualKey.md +15 -0
  49. data/docs/ArcVirtualKeyFailoverRequest.md +13 -0
  50. data/docs/ArcVirtualKeyFailoverResponse.md +13 -0
  51. data/docs/ArcVirtualKeyListItemResponse.md +26 -0
  52. data/docs/ArcVirtualKeyListItemResponseExtra.md +20 -0
  53. data/docs/ArcVirtualKeyResponse.md +25 -0
  54. data/docs/ArcVirtualKeyResponseExtra.md +19 -0
  55. data/docs/ArcVirtualKeysMeta.md +14 -0
  56. data/docs/ArcVirtualKeysResponse.md +11 -0
  57. data/docs/AutomationToken.md +6 -2
  58. data/docs/AutomationTokenCreateRequest.md +10 -1
  59. data/docs/AutomationTokenCreateResponse.md +6 -2
  60. data/docs/AutomationTokenResponse.md +5 -1
  61. data/docs/AutomationTokenRole.md +11 -0
  62. data/docs/AutomationTokenUnversionedError.md +11 -0
  63. data/docs/AutomationTokenUnversionedErrorResponse.md +10 -0
  64. data/docs/AutomationTokenWorkspace.md +11 -0
  65. data/docs/AutomationTokenWorkspacesMeta.md +12 -0
  66. data/docs/AutomationTokenWorkspacesResponse.md +12 -0
  67. data/docs/AutomationTokensApi.md +43 -1
  68. data/docs/BotManagementAction.md +10 -0
  69. data/docs/BotManagementApi.md +433 -0
  70. data/docs/BotManagementBot.md +10 -0
  71. data/docs/BotManagementBotAction.md +10 -0
  72. data/docs/BotManagementBotResponse.md +12 -0
  73. data/docs/BotManagementBotResponseExtra.md +11 -0
  74. data/docs/BotManagementBotsResponse.md +11 -0
  75. data/docs/BotManagementCategoriesResponse.md +11 -0
  76. data/docs/BotManagementCategory.md +10 -0
  77. data/docs/BotManagementCategoryResponse.md +13 -0
  78. data/docs/BotManagementCategoryResponseExtra.md +12 -0
  79. data/docs/BotManagementError.md +12 -0
  80. data/docs/BotManagementInvalidRequestError.md +12 -0
  81. data/docs/BotManagementInvalidRequestErrorExtra.md +12 -0
  82. data/docs/BotManagementMeta.md +12 -0
  83. data/docs/BotManagementNotAllowedError.md +12 -0
  84. data/docs/BotManagementNotAllowedErrorExtra.md +11 -0
  85. data/docs/BotManagementNotAuthenticatedError.md +12 -0
  86. data/docs/BotManagementNotAuthenticatedErrorExtra.md +11 -0
  87. data/docs/BotManagementNotFoundError.md +12 -0
  88. data/docs/BotManagementNotFoundErrorExtra.md +11 -0
  89. data/docs/BotManagementProtectionMode.md +9 -0
  90. data/docs/BotManagementRateLimitError.md +12 -0
  91. data/docs/BotManagementRateLimitErrorExtra.md +11 -0
  92. data/docs/BotManagementWorkspace.md +12 -0
  93. data/docs/BotManagementWorkspaceBotResponse.md +13 -0
  94. data/docs/BotManagementWorkspaceBotResponseExtra.md +10 -0
  95. data/docs/BotManagementWorkspaceBotsResponse.md +11 -0
  96. data/docs/BotManagementWorkspaceResponse.md +16 -0
  97. data/docs/BotManagementWorkspaceResponseExtra.md +13 -0
  98. data/docs/BotManagementWorkspacesResponse.md +11 -0
  99. data/docs/BotRequestMetricsDataItem.md +16 -0
  100. data/docs/BotRequestMetricsMetadata.md +14 -0
  101. data/docs/BotRequestMetricsResponse.md +11 -0
  102. data/docs/BotRequestsMetricsApi.md +77 -0
  103. data/docs/BulkUpdateDictionaryItem.md +1 -1
  104. data/docs/DdosProtectionRule.md +1 -1
  105. data/docs/DdosProtectionRuleAllOf.md +1 -1
  106. data/docs/DdosProtectionRulePatch.md +1 -1
  107. data/docs/DdosProtectionRuleWithStats.md +1 -1
  108. data/docs/DictionaryItem.md +1 -1
  109. data/docs/DictionaryItemApi.md +14 -14
  110. data/docs/DictionaryItemResponse.md +1 -1
  111. data/docs/MetricsPlatformApi.md +69 -13
  112. data/docs/NetworkProtectApi.md +789 -0
  113. data/docs/NetworkProtectConflict.md +13 -0
  114. data/docs/NetworkProtectConflictError.md +11 -0
  115. data/docs/NetworkProtectEndpoint.md +11 -0
  116. data/docs/NetworkProtectEndpointCreate.md +11 -0
  117. data/docs/NetworkProtectEndpointPolicy.md +11 -0
  118. data/docs/NetworkProtectEndpointResponse.md +14 -0
  119. data/docs/NetworkProtectEndpointResponseFields.md +12 -0
  120. data/docs/NetworkProtectEndpointUpdate.md +10 -0
  121. data/docs/NetworkProtectEndpointsResponse.md +11 -0
  122. data/docs/NetworkProtectErrorDetail.md +11 -0
  123. data/docs/NetworkProtectInvalidRequest.md +13 -0
  124. data/docs/NetworkProtectListMeta.md +11 -0
  125. data/docs/NetworkProtectLoaStatus.md +9 -0
  126. data/docs/NetworkProtectNetwork.md +15 -0
  127. data/docs/NetworkProtectNetworkCreate.md +14 -0
  128. data/docs/NetworkProtectNetworkResponse.md +22 -0
  129. data/docs/NetworkProtectNetworkResponseFields.md +16 -0
  130. data/docs/NetworkProtectNetworkUpdate.md +14 -0
  131. data/docs/NetworkProtectNetworksResponse.md +11 -0
  132. data/docs/NetworkProtectPolicyEndpoint.md +13 -0
  133. data/docs/NetworkProtectPrefixList.md +12 -0
  134. data/docs/NetworkProtectPrefixListCreate.md +12 -0
  135. data/docs/NetworkProtectPrefixListFamily.md +9 -0
  136. data/docs/NetworkProtectPrefixListResponse.md +15 -0
  137. data/docs/NetworkProtectPrefixListResponseFields.md +12 -0
  138. data/docs/NetworkProtectPrefixListUpdate.md +11 -0
  139. data/docs/NetworkProtectPrefixListsResponse.md +11 -0
  140. data/docs/NetworkProtectRegion.md +9 -0
  141. data/docs/NetworkProtectRoaStatus.md +9 -0
  142. data/docs/NetworkProtectRule.md +16 -0
  143. data/docs/NetworkProtectRuleAction.md +9 -0
  144. data/docs/NetworkProtectRuleDestinationPorts.md +9 -0
  145. data/docs/NetworkProtectRuleIpProtocol.md +9 -0
  146. data/docs/NetworkProtectRuleMatchDestinationIp.md +10 -0
  147. data/docs/NetworkProtectRuleMatchDestinationPorts.md +10 -0
  148. data/docs/NetworkProtectRuleMatchIpProtocol.md +10 -0
  149. data/docs/NetworkProtectRuleMatchSourcePorts.md +10 -0
  150. data/docs/NetworkProtectRuleMatchSourcePrefixList.md +10 -0
  151. data/docs/NetworkProtectRuleResponse.md +16 -0
  152. data/docs/NetworkProtectRuleSet.md +11 -0
  153. data/docs/NetworkProtectRuleSetCreate.md +11 -0
  154. data/docs/NetworkProtectRuleSetDefaultAction.md +9 -0
  155. data/docs/NetworkProtectRuleSetResponse.md +14 -0
  156. data/docs/NetworkProtectRuleSetResponseFields.md +12 -0
  157. data/docs/NetworkProtectRuleSetUpdate.md +11 -0
  158. data/docs/NetworkProtectRuleSetsResponse.md +11 -0
  159. data/docs/NetworkProtectRuleSourcePorts.md +9 -0
  160. data/docs/NetworkProtectRuleTimestamps.md +11 -0
  161. data/docs/PlatformValues.md +359 -16
  162. data/docs/ProductAiRuntimeControlApi.md +115 -0
  163. data/docs/PurgeApi.md +6 -0
  164. data/docs/RealtimeEntryAggregated.md +16 -0
  165. data/docs/RealtimeEntryDatacenter.md +16 -0
  166. data/docs/RealtimeMeasurements.md +16 -0
  167. data/docs/Results.md +16 -0
  168. data/lib/fastly/api/ai_runtime_control_provider_connections_api.rb +355 -0
  169. data/lib/fastly/api/ai_runtime_control_providers_api.rb +195 -0
  170. data/lib/fastly/api/ai_runtime_control_sessions_api.rb +112 -0
  171. data/lib/fastly/api/ai_runtime_control_usage_metrics_api.rb +176 -0
  172. data/lib/fastly/api/ai_runtime_control_virtual_keys_api.rb +580 -0
  173. data/lib/fastly/api/automation_tokens_api.rb +78 -1
  174. data/lib/fastly/api/bot_management_api.rb +787 -0
  175. data/lib/fastly/api/bot_requests_metrics_api.rb +137 -0
  176. data/lib/fastly/api/dictionary_item_api.rb +14 -14
  177. data/lib/fastly/api/metrics_platform_api.rb +130 -23
  178. data/lib/fastly/api/network_protect_api.rb +1420 -0
  179. data/lib/fastly/api/product_ai_runtime_control_api.rb +186 -0
  180. data/lib/fastly/api/purge_api.rb +21 -0
  181. data/lib/fastly/configuration.rb +331 -1
  182. data/lib/fastly/models/ai_runtime_control_response_body_enable.rb +243 -0
  183. data/lib/fastly/models/ai_runtime_control_response_customer.rb +216 -0
  184. data/lib/fastly/models/ai_runtime_control_response_links.rb +216 -0
  185. data/lib/fastly/models/ai_runtime_control_response_links_links.rb +217 -0
  186. data/lib/fastly/models/ai_runtime_control_response_product.rb +216 -0
  187. data/lib/fastly/models/ai_runtime_control_response_product_product.rb +227 -0
  188. data/lib/fastly/models/arc_bedrock_setup_response.rb +237 -0
  189. data/lib/fastly/models/arc_create_virtual_key_response.rb +346 -0
  190. data/lib/fastly/models/arc_error.rb +238 -0
  191. data/lib/fastly/models/arc_failover_target.rb +223 -0
  192. data/lib/fastly/models/arc_get_provider_connection_response.rb +393 -0
  193. data/lib/fastly/models/arc_get_provider_connection_response_extra.rb +224 -0
  194. data/lib/fastly/models/arc_model.rb +253 -0
  195. data/lib/fastly/models/arc_models_meta.rb +217 -0
  196. data/lib/fastly/models/arc_models_response.rb +238 -0
  197. data/lib/fastly/models/arc_provider.rb +270 -0
  198. data/lib/fastly/models/arc_provider_connection_api_key.rb +335 -0
  199. data/lib/fastly/models/arc_provider_connection_aws_iam.rb +350 -0
  200. data/lib/fastly/models/arc_provider_connection_list_item_response.rb +386 -0
  201. data/lib/fastly/models/arc_provider_connection_list_item_response_extra.rb +217 -0
  202. data/lib/fastly/models/arc_provider_connection_request.rb +103 -0
  203. data/lib/fastly/models/arc_provider_connection_response.rb +369 -0
  204. data/lib/fastly/models/arc_provider_connections_meta.rb +228 -0
  205. data/lib/fastly/models/arc_provider_connections_response.rb +238 -0
  206. data/lib/fastly/models/arc_providers_meta.rb +217 -0
  207. data/lib/fastly/models/arc_providers_response.rb +238 -0
  208. data/lib/fastly/models/arc_rotate_virtual_key_request.rb +218 -0
  209. data/lib/fastly/models/arc_rotate_virtual_key_response.rb +324 -0
  210. data/lib/fastly/models/arc_session.rb +465 -0
  211. data/lib/fastly/models/arc_session_log_entry.rb +240 -0
  212. data/lib/fastly/models/arc_sessions_meta.rb +260 -0
  213. data/lib/fastly/models/arc_sessions_response.rb +238 -0
  214. data/lib/fastly/models/arc_update_provider_connection_request.rb +275 -0
  215. data/lib/fastly/models/arc_update_virtual_key_request.rb +345 -0
  216. data/lib/fastly/models/arc_update_virtual_key_response.rb +352 -0
  217. data/lib/fastly/models/arc_usage_metric.rb +347 -0
  218. data/lib/fastly/models/arc_usage_metrics_meta.rb +228 -0
  219. data/lib/fastly/models/arc_usage_metrics_response.rb +238 -0
  220. data/lib/fastly/models/arc_virtual_key.rb +342 -0
  221. data/lib/fastly/models/arc_virtual_key_failover_request.rb +255 -0
  222. data/lib/fastly/models/arc_virtual_key_failover_response.rb +270 -0
  223. data/lib/fastly/models/arc_virtual_key_list_item_response.rb +492 -0
  224. data/lib/fastly/models/arc_virtual_key_list_item_response_extra.rb +350 -0
  225. data/lib/fastly/models/arc_virtual_key_response.rb +477 -0
  226. data/lib/fastly/models/arc_virtual_key_response_extra.rb +335 -0
  227. data/lib/fastly/models/arc_virtual_keys_meta.rb +260 -0
  228. data/lib/fastly/models/arc_virtual_keys_response.rb +238 -0
  229. data/lib/fastly/models/automation_token.rb +49 -5
  230. data/lib/fastly/models/automation_token_create_request.rb +161 -7
  231. data/lib/fastly/models/automation_token_create_response.rb +49 -5
  232. data/lib/fastly/models/automation_token_error_response.rb +1 -0
  233. data/lib/fastly/models/automation_token_response.rb +46 -2
  234. data/lib/fastly/models/automation_token_role.rb +227 -0
  235. data/lib/fastly/models/automation_token_unversioned_error.rb +225 -0
  236. data/lib/fastly/models/automation_token_unversioned_error_response.rb +219 -0
  237. data/lib/fastly/models/automation_token_workspace.rb +237 -0
  238. data/lib/fastly/models/automation_token_workspaces_meta.rb +242 -0
  239. data/lib/fastly/models/automation_token_workspaces_response.rb +253 -0
  240. data/lib/fastly/models/bot_management_action.rb +257 -0
  241. data/lib/fastly/models/bot_management_bot.rb +222 -0
  242. data/lib/fastly/models/bot_management_bot_action.rb +257 -0
  243. data/lib/fastly/models/bot_management_bot_response.rb +259 -0
  244. data/lib/fastly/models/bot_management_bot_response_extra.rb +237 -0
  245. data/lib/fastly/models/bot_management_bots_response.rb +238 -0
  246. data/lib/fastly/models/bot_management_categories_response.rb +238 -0
  247. data/lib/fastly/models/bot_management_category.rb +222 -0
  248. data/lib/fastly/models/bot_management_category_response.rb +269 -0
  249. data/lib/fastly/models/bot_management_category_response_extra.rb +247 -0
  250. data/lib/fastly/models/bot_management_error.rb +248 -0
  251. data/lib/fastly/models/bot_management_invalid_request_error.rb +291 -0
  252. data/lib/fastly/models/bot_management_invalid_request_error_extra.rb +283 -0
  253. data/lib/fastly/models/bot_management_meta.rb +239 -0
  254. data/lib/fastly/models/bot_management_not_allowed_error.rb +287 -0
  255. data/lib/fastly/models/bot_management_not_allowed_error_extra.rb +259 -0
  256. data/lib/fastly/models/bot_management_not_authenticated_error.rb +287 -0
  257. data/lib/fastly/models/bot_management_not_authenticated_error_extra.rb +259 -0
  258. data/lib/fastly/models/bot_management_not_found_error.rb +287 -0
  259. data/lib/fastly/models/bot_management_not_found_error_extra.rb +259 -0
  260. data/lib/fastly/models/bot_management_protection_mode.rb +36 -0
  261. data/lib/fastly/models/bot_management_rate_limit_error.rb +287 -0
  262. data/lib/fastly/models/bot_management_rate_limit_error_extra.rb +259 -0
  263. data/lib/fastly/models/bot_management_workspace.rb +276 -0
  264. data/lib/fastly/models/bot_management_workspace_bot_response.rb +275 -0
  265. data/lib/fastly/models/bot_management_workspace_bot_response_extra.rb +222 -0
  266. data/lib/fastly/models/bot_management_workspace_bots_response.rb +238 -0
  267. data/lib/fastly/models/bot_management_workspace_response.rb +354 -0
  268. data/lib/fastly/models/bot_management_workspace_response_extra.rb +264 -0
  269. data/lib/fastly/models/bot_management_workspaces_response.rb +238 -0
  270. data/lib/fastly/models/bot_request_metrics_data_item.rb +278 -0
  271. data/lib/fastly/models/bot_request_metrics_metadata.rb +258 -0
  272. data/lib/fastly/models/bot_request_metrics_response.rb +228 -0
  273. data/lib/fastly/models/bulk_update_dictionary_item.rb +1 -1
  274. data/lib/fastly/models/ddos_protection_request_enable_mode.rb +2 -2
  275. data/lib/fastly/models/ddos_protection_request_update_configuration.rb +2 -2
  276. data/lib/fastly/models/ddos_protection_rule.rb +1 -1
  277. data/lib/fastly/models/ddos_protection_rule_all_of.rb +1 -1
  278. data/lib/fastly/models/ddos_protection_rule_patch.rb +1 -1
  279. data/lib/fastly/models/ddos_protection_rule_with_stats.rb +1 -1
  280. data/lib/fastly/models/dictionary_item.rb +1 -1
  281. data/lib/fastly/models/dictionary_item_response.rb +1 -1
  282. data/lib/fastly/models/event_attributes.rb +2 -2
  283. data/lib/fastly/models/network_protect_conflict.rb +299 -0
  284. data/lib/fastly/models/network_protect_conflict_error.rb +228 -0
  285. data/lib/fastly/models/network_protect_endpoint.rb +266 -0
  286. data/lib/fastly/models/network_protect_endpoint_create.rb +266 -0
  287. data/lib/fastly/models/network_protect_endpoint_policy.rb +255 -0
  288. data/lib/fastly/models/network_protect_endpoint_response.rb +340 -0
  289. data/lib/fastly/models/network_protect_endpoint_response_fields.rb +274 -0
  290. data/lib/fastly/models/network_protect_endpoint_update.rb +251 -0
  291. data/lib/fastly/models/network_protect_endpoints_response.rb +239 -0
  292. data/lib/fastly/models/network_protect_error_detail.rb +238 -0
  293. data/lib/fastly/models/{automation_token_create_request_attributes.rb → network_protect_invalid_request.rb} +63 -75
  294. data/lib/fastly/models/network_protect_list_meta.rb +263 -0
  295. data/lib/fastly/models/network_protect_loa_status.rb +36 -0
  296. data/lib/fastly/models/network_protect_network.rb +363 -0
  297. data/lib/fastly/models/network_protect_network_create.rb +340 -0
  298. data/lib/fastly/models/network_protect_network_response.rb +477 -0
  299. data/lib/fastly/models/network_protect_network_response_fields.rb +314 -0
  300. data/lib/fastly/models/network_protect_network_update.rb +329 -0
  301. data/lib/fastly/models/network_protect_networks_response.rb +239 -0
  302. data/lib/fastly/models/network_protect_policy_endpoint.rb +307 -0
  303. data/lib/fastly/models/network_protect_prefix_list.rb +282 -0
  304. data/lib/fastly/models/network_protect_prefix_list_create.rb +301 -0
  305. data/lib/fastly/models/network_protect_prefix_list_family.rb +35 -0
  306. data/lib/fastly/models/network_protect_prefix_list_response.rb +356 -0
  307. data/lib/fastly/models/network_protect_prefix_list_response_fields.rb +274 -0
  308. data/lib/fastly/models/network_protect_prefix_list_update.rb +269 -0
  309. data/lib/fastly/models/network_protect_prefix_lists_response.rb +239 -0
  310. data/lib/fastly/models/network_protect_region.rb +34 -0
  311. data/lib/fastly/models/network_protect_roa_status.rb +37 -0
  312. data/lib/fastly/models/network_protect_rule.rb +372 -0
  313. data/lib/fastly/models/network_protect_rule_action.rb +35 -0
  314. data/lib/fastly/models/network_protect_rule_destination_ports.rb +208 -0
  315. data/lib/fastly/models/network_protect_rule_ip_protocol.rb +37 -0
  316. data/lib/fastly/models/network_protect_rule_match_destination_ip.rb +223 -0
  317. data/lib/fastly/models/network_protect_rule_match_destination_ports.rb +222 -0
  318. data/lib/fastly/models/network_protect_rule_match_ip_protocol.rb +222 -0
  319. data/lib/fastly/models/network_protect_rule_match_source_ports.rb +222 -0
  320. data/lib/fastly/models/network_protect_rule_match_source_prefix_list.rb +244 -0
  321. data/lib/fastly/models/network_protect_rule_response.rb +329 -0
  322. data/lib/fastly/models/network_protect_rule_set.rb +258 -0
  323. data/lib/fastly/models/network_protect_rule_set_create.rb +249 -0
  324. data/lib/fastly/models/network_protect_rule_set_default_action.rb +35 -0
  325. data/lib/fastly/models/network_protect_rule_set_response.rb +332 -0
  326. data/lib/fastly/models/network_protect_rule_set_response_fields.rb +274 -0
  327. data/lib/fastly/models/network_protect_rule_set_update.rb +244 -0
  328. data/lib/fastly/models/network_protect_rule_sets_response.rb +239 -0
  329. data/lib/fastly/models/network_protect_rule_source_ports.rb +208 -0
  330. data/lib/fastly/models/network_protect_rule_timestamps.rb +228 -0
  331. data/lib/fastly/models/platform_values.rb +3568 -137
  332. data/lib/fastly/models/realtime_entry_aggregated.rb +164 -4
  333. data/lib/fastly/models/realtime_entry_datacenter.rb +164 -4
  334. data/lib/fastly/models/realtime_measurements.rb +164 -4
  335. data/lib/fastly/models/results.rb +161 -1
  336. data/lib/fastly/version.rb +1 -1
  337. data/lib/fastly.rb +143 -1
  338. data/sig.json +1 -1
  339. metadata +288 -4
  340. data/docs/AutomationTokenCreateRequestAttributes.md +0 -15
@@ -0,0 +1,789 @@
1
+ # Fastly::NetworkProtectApi
2
+
3
+
4
+ ```ruby
5
+ require 'fastly'
6
+ api_instance = Fastly::NetworkProtectApi.new
7
+ ```
8
+
9
+ ## Methods
10
+
11
+ > [!NOTE]
12
+ > All URIs are relative to `https://api.fastly.com`
13
+
14
+ Method | HTTP request | Description
15
+ ------ | ------------ | -----------
16
+ [**create_network_protect_endpoint**](NetworkProtectApi.md#create_network_protect_endpoint) | **POST** /network-protect/v1/endpoints | Create a Network Protect endpoint
17
+ [**create_network_protect_network**](NetworkProtectApi.md#create_network_protect_network) | **POST** /network-protect/v1/networks | Create a Network Protect network
18
+ [**create_network_protect_prefix_list**](NetworkProtectApi.md#create_network_protect_prefix_list) | **POST** /network-protect/v1/prefix-lists | Create a Network Protect prefix list
19
+ [**create_network_protect_rule_set**](NetworkProtectApi.md#create_network_protect_rule_set) | **POST** /network-protect/v1/rule-sets | Create a Network Protect rule set
20
+ [**delete_network_protect_endpoint**](NetworkProtectApi.md#delete_network_protect_endpoint) | **DELETE** /network-protect/v1/endpoints/{endpoint_id} | Delete a Network Protect endpoint
21
+ [**delete_network_protect_network**](NetworkProtectApi.md#delete_network_protect_network) | **DELETE** /network-protect/v1/networks/{network_id} | Delete a Network Protect network
22
+ [**delete_network_protect_prefix_list**](NetworkProtectApi.md#delete_network_protect_prefix_list) | **DELETE** /network-protect/v1/prefix-lists/{prefix_list_id} | Delete a Network Protect prefix list
23
+ [**delete_network_protect_rule_set**](NetworkProtectApi.md#delete_network_protect_rule_set) | **DELETE** /network-protect/v1/rule-sets/{rule_set_id} | Delete a Network Protect rule set
24
+ [**get_network_protect_endpoint**](NetworkProtectApi.md#get_network_protect_endpoint) | **GET** /network-protect/v1/endpoints/{endpoint_id} | Get a Network Protect endpoint
25
+ [**get_network_protect_network**](NetworkProtectApi.md#get_network_protect_network) | **GET** /network-protect/v1/networks/{network_id} | Get a Network Protect network
26
+ [**get_network_protect_prefix_list**](NetworkProtectApi.md#get_network_protect_prefix_list) | **GET** /network-protect/v1/prefix-lists/{prefix_list_id} | Get a Network Protect prefix list
27
+ [**get_network_protect_rule_set**](NetworkProtectApi.md#get_network_protect_rule_set) | **GET** /network-protect/v1/rule-sets/{rule_set_id} | Get a Network Protect rule set
28
+ [**list_network_protect_endpoints**](NetworkProtectApi.md#list_network_protect_endpoints) | **GET** /network-protect/v1/endpoints | List Network Protect endpoints
29
+ [**list_network_protect_networks**](NetworkProtectApi.md#list_network_protect_networks) | **GET** /network-protect/v1/networks | List Network Protect networks
30
+ [**list_network_protect_prefix_lists**](NetworkProtectApi.md#list_network_protect_prefix_lists) | **GET** /network-protect/v1/prefix-lists | List Network Protect prefix lists
31
+ [**list_network_protect_rule_sets**](NetworkProtectApi.md#list_network_protect_rule_sets) | **GET** /network-protect/v1/rule-sets | List Network Protect rule sets
32
+ [**update_network_protect_endpoint**](NetworkProtectApi.md#update_network_protect_endpoint) | **PATCH** /network-protect/v1/endpoints/{endpoint_id} | Update a Network Protect endpoint
33
+ [**update_network_protect_network**](NetworkProtectApi.md#update_network_protect_network) | **PATCH** /network-protect/v1/networks/{network_id} | Update a Network Protect network
34
+ [**update_network_protect_prefix_list**](NetworkProtectApi.md#update_network_protect_prefix_list) | **PATCH** /network-protect/v1/prefix-lists/{prefix_list_id} | Update a Network Protect prefix list
35
+ [**update_network_protect_rule_set**](NetworkProtectApi.md#update_network_protect_rule_set) | **PATCH** /network-protect/v1/rule-sets/{rule_set_id} | Update a Network Protect rule set
36
+
37
+
38
+ ## `create_network_protect_endpoint()`
39
+
40
+ ```ruby
41
+ create_network_protect_endpoint(opts): <NetworkProtectEndpointResponse> # Create a Network Protect endpoint
42
+ ```
43
+
44
+ Creates a GRE delivery destination. A new endpoint is not attached to a network until it is added to an endpoint policy.
45
+
46
+ ### Examples
47
+
48
+ ```ruby
49
+ api_instance = Fastly::NetworkProtectApi.new
50
+ opts = {
51
+ network_protect_endpoint_create: Fastly::NetworkProtectEndpointCreate.new({name: 'Transit network', ip_address: '192.0.2.10'}), # NetworkProtectEndpointCreate |
52
+ }
53
+
54
+ begin
55
+ # Create a Network Protect endpoint
56
+ result = api_instance.create_network_protect_endpoint(opts)
57
+ p result
58
+ rescue Fastly::ApiError => e
59
+ puts "Error when calling NetworkProtectApi->create_network_protect_endpoint: #{e}"
60
+ end
61
+ ```
62
+
63
+ ### Options
64
+
65
+ | Name | Type | Description | Notes |
66
+ | ---- | ---- | ----------- | ----- |
67
+ | **network_protect_endpoint_create** | [**NetworkProtectEndpointCreate**](NetworkProtectEndpointCreate.md) | | |
68
+
69
+ ### Return type
70
+
71
+ [**NetworkProtectEndpointResponse**](NetworkProtectEndpointResponse.md)
72
+
73
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
74
+ [[Back to README]](../../README.md)
75
+ ## `create_network_protect_network()`
76
+
77
+ ```ruby
78
+ create_network_protect_network(opts): <NetworkProtectNetworkResponse> # Create a Network Protect network
79
+ ```
80
+
81
+ Registers customer-owned IP space for protection. The network starts with advertisement disabled and Fastly does not announce its prefix. Turn advertisement on after LOA and ROA authorization are ready. The create request cannot include advertise; sending it returns a `400 Bad Request` error.
82
+
83
+ ### Examples
84
+
85
+ ```ruby
86
+ api_instance = Fastly::NetworkProtectApi.new
87
+ opts = {
88
+ network_protect_network_create: Fastly::NetworkProtectNetworkCreate.new({name: 'Transit network', prefix: '198.51.100.0/24'}), # NetworkProtectNetworkCreate |
89
+ }
90
+
91
+ begin
92
+ # Create a Network Protect network
93
+ result = api_instance.create_network_protect_network(opts)
94
+ p result
95
+ rescue Fastly::ApiError => e
96
+ puts "Error when calling NetworkProtectApi->create_network_protect_network: #{e}"
97
+ end
98
+ ```
99
+
100
+ ### Options
101
+
102
+ | Name | Type | Description | Notes |
103
+ | ---- | ---- | ----------- | ----- |
104
+ | **network_protect_network_create** | [**NetworkProtectNetworkCreate**](NetworkProtectNetworkCreate.md) | | |
105
+
106
+ ### Return type
107
+
108
+ [**NetworkProtectNetworkResponse**](NetworkProtectNetworkResponse.md)
109
+
110
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
111
+ [[Back to README]](../../README.md)
112
+ ## `create_network_protect_prefix_list()`
113
+
114
+ ```ruby
115
+ create_network_protect_prefix_list(opts): <NetworkProtectPrefixListResponse> # Create a Network Protect prefix list
116
+ ```
117
+
118
+ Creates a typed list of addresses that rules can reference. The family is required and cannot be changed. The addresses list may remain empty.
119
+
120
+ ### Examples
121
+
122
+ ```ruby
123
+ api_instance = Fastly::NetworkProtectApi.new
124
+ opts = {
125
+ network_protect_prefix_list_create: Fastly::NetworkProtectPrefixListCreate.new({name: 'Transit network', family: Fastly::NetworkProtectPrefixListFamily::V4, addresses: ["192.0.2.20", "203.0.113.0/24"]}), # NetworkProtectPrefixListCreate |
126
+ }
127
+
128
+ begin
129
+ # Create a Network Protect prefix list
130
+ result = api_instance.create_network_protect_prefix_list(opts)
131
+ p result
132
+ rescue Fastly::ApiError => e
133
+ puts "Error when calling NetworkProtectApi->create_network_protect_prefix_list: #{e}"
134
+ end
135
+ ```
136
+
137
+ ### Options
138
+
139
+ | Name | Type | Description | Notes |
140
+ | ---- | ---- | ----------- | ----- |
141
+ | **network_protect_prefix_list_create** | [**NetworkProtectPrefixListCreate**](NetworkProtectPrefixListCreate.md) | | |
142
+
143
+ ### Return type
144
+
145
+ [**NetworkProtectPrefixListResponse**](NetworkProtectPrefixListResponse.md)
146
+
147
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
148
+ [[Back to README]](../../README.md)
149
+ ## `create_network_protect_rule_set()`
150
+
151
+ ```ruby
152
+ create_network_protect_rule_set(opts): <NetworkProtectRuleSetResponse> # Create a Network Protect rule set
153
+ ```
154
+
155
+ Creates an ordered rule set and stores its filtering intent. A rule set has at most 64 rules and uses the default action when no rule matches. Custom attachment and detachment are restricted in this release.
156
+
157
+ ### Examples
158
+
159
+ ```ruby
160
+ api_instance = Fastly::NetworkProtectApi.new
161
+ opts = {
162
+ network_protect_rule_set_create: Fastly::NetworkProtectRuleSetCreate.new({default_action: Fastly::NetworkProtectRuleSetDefaultAction::ALLOW}), # NetworkProtectRuleSetCreate |
163
+ }
164
+
165
+ begin
166
+ # Create a Network Protect rule set
167
+ result = api_instance.create_network_protect_rule_set(opts)
168
+ p result
169
+ rescue Fastly::ApiError => e
170
+ puts "Error when calling NetworkProtectApi->create_network_protect_rule_set: #{e}"
171
+ end
172
+ ```
173
+
174
+ ### Options
175
+
176
+ | Name | Type | Description | Notes |
177
+ | ---- | ---- | ----------- | ----- |
178
+ | **network_protect_rule_set_create** | [**NetworkProtectRuleSetCreate**](NetworkProtectRuleSetCreate.md) | | |
179
+
180
+ ### Return type
181
+
182
+ [**NetworkProtectRuleSetResponse**](NetworkProtectRuleSetResponse.md)
183
+
184
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
185
+ [[Back to README]](../../README.md)
186
+ ## `delete_network_protect_endpoint()`
187
+
188
+ ```ruby
189
+ delete_network_protect_endpoint(opts) # Delete a Network Protect endpoint
190
+ ```
191
+
192
+ Deletes an endpoint. The endpoint must first be removed from every network policy; active references return a `409 Conflict` error.
193
+
194
+ ### Examples
195
+
196
+ ```ruby
197
+ api_instance = Fastly::NetworkProtectApi.new
198
+ opts = {
199
+ endpoint_id: 'DBOEWyMXebAir5qwjWEwK1', # String | Unique identifier of the Network Protect endpoint.
200
+ }
201
+
202
+ begin
203
+ # Delete a Network Protect endpoint
204
+ api_instance.delete_network_protect_endpoint(opts)
205
+ rescue Fastly::ApiError => e
206
+ puts "Error when calling NetworkProtectApi->delete_network_protect_endpoint: #{e}"
207
+ end
208
+ ```
209
+
210
+ ### Options
211
+
212
+ | Name | Type | Description | Notes |
213
+ | ---- | ---- | ----------- | ----- |
214
+ | **endpoint_id** | **String** | Unique identifier of the Network Protect endpoint. | |
215
+
216
+ ### Return type
217
+
218
+ nil (empty response body)
219
+
220
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
221
+ [[Back to README]](../../README.md)
222
+ ## `delete_network_protect_network()`
223
+
224
+ ```ruby
225
+ delete_network_protect_network(opts) # Delete a Network Protect network
226
+ ```
227
+
228
+ Deletes a network and stops its advertisement and filtering. Endpoints and rule sets used by the network are not deleted.
229
+
230
+ ### Examples
231
+
232
+ ```ruby
233
+ api_instance = Fastly::NetworkProtectApi.new
234
+ opts = {
235
+ network_id: 'an7NWnhOjjOkwSNvrwphTd', # String | Unique identifier of the Network Protect network.
236
+ }
237
+
238
+ begin
239
+ # Delete a Network Protect network
240
+ api_instance.delete_network_protect_network(opts)
241
+ rescue Fastly::ApiError => e
242
+ puts "Error when calling NetworkProtectApi->delete_network_protect_network: #{e}"
243
+ end
244
+ ```
245
+
246
+ ### Options
247
+
248
+ | Name | Type | Description | Notes |
249
+ | ---- | ---- | ----------- | ----- |
250
+ | **network_id** | **String** | Unique identifier of the Network Protect network. | |
251
+
252
+ ### Return type
253
+
254
+ nil (empty response body)
255
+
256
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
257
+ [[Back to README]](../../README.md)
258
+ ## `delete_network_protect_prefix_list()`
259
+
260
+ ```ruby
261
+ delete_network_protect_prefix_list(opts) # Delete a Network Protect prefix list
262
+ ```
263
+
264
+ Deletes a prefix list. Active rule references must be removed first; referenced lists return a `409 Conflict` error. Unknown and foreign IDs are indistinguishable and return a `404 Not Found` error.
265
+
266
+ ### Examples
267
+
268
+ ```ruby
269
+ api_instance = Fastly::NetworkProtectApi.new
270
+ opts = {
271
+ prefix_list_id: 'QoavyX1BHOMGQm2zmVyEbS', # String | Unique identifier of the Network Protect prefix list.
272
+ }
273
+
274
+ begin
275
+ # Delete a Network Protect prefix list
276
+ api_instance.delete_network_protect_prefix_list(opts)
277
+ rescue Fastly::ApiError => e
278
+ puts "Error when calling NetworkProtectApi->delete_network_protect_prefix_list: #{e}"
279
+ end
280
+ ```
281
+
282
+ ### Options
283
+
284
+ | Name | Type | Description | Notes |
285
+ | ---- | ---- | ----------- | ----- |
286
+ | **prefix_list_id** | **String** | Unique identifier of the Network Protect prefix list. | |
287
+
288
+ ### Return type
289
+
290
+ nil (empty response body)
291
+
292
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
293
+ [[Back to README]](../../README.md)
294
+ ## `delete_network_protect_rule_set()`
295
+
296
+ ```ruby
297
+ delete_network_protect_rule_set(opts) # Delete a Network Protect rule set
298
+ ```
299
+
300
+ Deletes a rule set. Attached rule sets cannot be deleted and return a `409 Conflict` error until their references are removed.
301
+
302
+ ### Examples
303
+
304
+ ```ruby
305
+ api_instance = Fastly::NetworkProtectApi.new
306
+ opts = {
307
+ rule_set_id: 'Z4xQoBznwNb5GJfdJbp58Y', # String | Unique identifier of the Network Protect rule set.
308
+ }
309
+
310
+ begin
311
+ # Delete a Network Protect rule set
312
+ api_instance.delete_network_protect_rule_set(opts)
313
+ rescue Fastly::ApiError => e
314
+ puts "Error when calling NetworkProtectApi->delete_network_protect_rule_set: #{e}"
315
+ end
316
+ ```
317
+
318
+ ### Options
319
+
320
+ | Name | Type | Description | Notes |
321
+ | ---- | ---- | ----------- | ----- |
322
+ | **rule_set_id** | **String** | Unique identifier of the Network Protect rule set. | |
323
+
324
+ ### Return type
325
+
326
+ nil (empty response body)
327
+
328
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
329
+ [[Back to README]](../../README.md)
330
+ ## `get_network_protect_endpoint()`
331
+
332
+ ```ruby
333
+ get_network_protect_endpoint(opts): <NetworkProtectEndpointResponse> # Get a Network Protect endpoint
334
+ ```
335
+
336
+ Retrieves a single endpoint by its identifier.
337
+
338
+ ### Examples
339
+
340
+ ```ruby
341
+ api_instance = Fastly::NetworkProtectApi.new
342
+ opts = {
343
+ endpoint_id: 'DBOEWyMXebAir5qwjWEwK1', # String | Unique identifier of the Network Protect endpoint.
344
+ }
345
+
346
+ begin
347
+ # Get a Network Protect endpoint
348
+ result = api_instance.get_network_protect_endpoint(opts)
349
+ p result
350
+ rescue Fastly::ApiError => e
351
+ puts "Error when calling NetworkProtectApi->get_network_protect_endpoint: #{e}"
352
+ end
353
+ ```
354
+
355
+ ### Options
356
+
357
+ | Name | Type | Description | Notes |
358
+ | ---- | ---- | ----------- | ----- |
359
+ | **endpoint_id** | **String** | Unique identifier of the Network Protect endpoint. | |
360
+
361
+ ### Return type
362
+
363
+ [**NetworkProtectEndpointResponse**](NetworkProtectEndpointResponse.md)
364
+
365
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
366
+ [[Back to README]](../../README.md)
367
+ ## `get_network_protect_network()`
368
+
369
+ ```ruby
370
+ get_network_protect_network(opts): <NetworkProtectNetworkResponse> # Get a Network Protect network
371
+ ```
372
+
373
+ Retrieves a single network by its identifier.
374
+
375
+ ### Examples
376
+
377
+ ```ruby
378
+ api_instance = Fastly::NetworkProtectApi.new
379
+ opts = {
380
+ network_id: 'an7NWnhOjjOkwSNvrwphTd', # String | Unique identifier of the Network Protect network.
381
+ }
382
+
383
+ begin
384
+ # Get a Network Protect network
385
+ result = api_instance.get_network_protect_network(opts)
386
+ p result
387
+ rescue Fastly::ApiError => e
388
+ puts "Error when calling NetworkProtectApi->get_network_protect_network: #{e}"
389
+ end
390
+ ```
391
+
392
+ ### Options
393
+
394
+ | Name | Type | Description | Notes |
395
+ | ---- | ---- | ----------- | ----- |
396
+ | **network_id** | **String** | Unique identifier of the Network Protect network. | |
397
+
398
+ ### Return type
399
+
400
+ [**NetworkProtectNetworkResponse**](NetworkProtectNetworkResponse.md)
401
+
402
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
403
+ [[Back to README]](../../README.md)
404
+ ## `get_network_protect_prefix_list()`
405
+
406
+ ```ruby
407
+ get_network_protect_prefix_list(opts): <NetworkProtectPrefixListResponse> # Get a Network Protect prefix list
408
+ ```
409
+
410
+ Retrieves a single prefix list by its identifier. Unknown and foreign IDs are indistinguishable and return a `404 Not Found` error.
411
+
412
+ ### Examples
413
+
414
+ ```ruby
415
+ api_instance = Fastly::NetworkProtectApi.new
416
+ opts = {
417
+ prefix_list_id: 'QoavyX1BHOMGQm2zmVyEbS', # String | Unique identifier of the Network Protect prefix list.
418
+ }
419
+
420
+ begin
421
+ # Get a Network Protect prefix list
422
+ result = api_instance.get_network_protect_prefix_list(opts)
423
+ p result
424
+ rescue Fastly::ApiError => e
425
+ puts "Error when calling NetworkProtectApi->get_network_protect_prefix_list: #{e}"
426
+ end
427
+ ```
428
+
429
+ ### Options
430
+
431
+ | Name | Type | Description | Notes |
432
+ | ---- | ---- | ----------- | ----- |
433
+ | **prefix_list_id** | **String** | Unique identifier of the Network Protect prefix list. | |
434
+
435
+ ### Return type
436
+
437
+ [**NetworkProtectPrefixListResponse**](NetworkProtectPrefixListResponse.md)
438
+
439
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
440
+ [[Back to README]](../../README.md)
441
+ ## `get_network_protect_rule_set()`
442
+
443
+ ```ruby
444
+ get_network_protect_rule_set(opts): <NetworkProtectRuleSetResponse> # Get a Network Protect rule set
445
+ ```
446
+
447
+ Retrieves a single rule set with rules in evaluation order.
448
+
449
+ ### Examples
450
+
451
+ ```ruby
452
+ api_instance = Fastly::NetworkProtectApi.new
453
+ opts = {
454
+ rule_set_id: 'Z4xQoBznwNb5GJfdJbp58Y', # String | Unique identifier of the Network Protect rule set.
455
+ }
456
+
457
+ begin
458
+ # Get a Network Protect rule set
459
+ result = api_instance.get_network_protect_rule_set(opts)
460
+ p result
461
+ rescue Fastly::ApiError => e
462
+ puts "Error when calling NetworkProtectApi->get_network_protect_rule_set: #{e}"
463
+ end
464
+ ```
465
+
466
+ ### Options
467
+
468
+ | Name | Type | Description | Notes |
469
+ | ---- | ---- | ----------- | ----- |
470
+ | **rule_set_id** | **String** | Unique identifier of the Network Protect rule set. | |
471
+
472
+ ### Return type
473
+
474
+ [**NetworkProtectRuleSetResponse**](NetworkProtectRuleSetResponse.md)
475
+
476
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
477
+ [[Back to README]](../../README.md)
478
+ ## `list_network_protect_endpoints()`
479
+
480
+ ```ruby
481
+ list_network_protect_endpoints(opts): <NetworkProtectEndpointsResponse> # List Network Protect endpoints
482
+ ```
483
+
484
+ Lists the customer's GRE delivery endpoints in ascending ID order. The response is cursor-paginated and includes the effective page limit.
485
+
486
+ ### Examples
487
+
488
+ ```ruby
489
+ api_instance = Fastly::NetworkProtectApi.new
490
+ opts = {
491
+ limit: 100, # Integer | Maximum resources to return. Defaults to 100. Positive values above 1000 are accepted and clamped to 1000; the effective value is reported in meta.limit. Zero, negative, and non-integer values return a `400 Bad Request` error.
492
+ cursor: 'network-cursor-next', # String | Continuation value from a previous response's meta.next_cursor. Omit this parameter to request the first page.
493
+ }
494
+
495
+ begin
496
+ # List Network Protect endpoints
497
+ result = api_instance.list_network_protect_endpoints(opts)
498
+ p result
499
+ rescue Fastly::ApiError => e
500
+ puts "Error when calling NetworkProtectApi->list_network_protect_endpoints: #{e}"
501
+ end
502
+ ```
503
+
504
+ ### Options
505
+
506
+ | Name | Type | Description | Notes |
507
+ | ---- | ---- | ----------- | ----- |
508
+ | **limit** | **Integer** | Maximum resources to return. Defaults to 100. Positive values above 1000 are accepted and clamped to 1000; the effective value is reported in meta.limit. Zero, negative, and non-integer values return a `400 Bad Request` error. | [optional][default to 100] |
509
+ | **cursor** | **String** | Continuation value from a previous response&#39;s meta.next_cursor. Omit this parameter to request the first page. | [optional] |
510
+
511
+ ### Return type
512
+
513
+ [**NetworkProtectEndpointsResponse**](NetworkProtectEndpointsResponse.md)
514
+
515
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
516
+ [[Back to README]](../../README.md)
517
+ ## `list_network_protect_networks()`
518
+
519
+ ```ruby
520
+ list_network_protect_networks(opts): <NetworkProtectNetworksResponse> # List Network Protect networks
521
+ ```
522
+
523
+ Lists the customer's networks in ascending ID order. The response is cursor-paginated and includes the effective page limit.
524
+
525
+ ### Examples
526
+
527
+ ```ruby
528
+ api_instance = Fastly::NetworkProtectApi.new
529
+ opts = {
530
+ limit: 100, # Integer | Maximum resources to return. Defaults to 100. Positive values above 1000 are accepted and clamped to 1000; the effective value is reported in meta.limit. Zero, negative, and non-integer values return a `400 Bad Request` error.
531
+ cursor: 'network-cursor-next', # String | Continuation value from a previous response's meta.next_cursor. Omit this parameter to request the first page.
532
+ }
533
+
534
+ begin
535
+ # List Network Protect networks
536
+ result = api_instance.list_network_protect_networks(opts)
537
+ p result
538
+ rescue Fastly::ApiError => e
539
+ puts "Error when calling NetworkProtectApi->list_network_protect_networks: #{e}"
540
+ end
541
+ ```
542
+
543
+ ### Options
544
+
545
+ | Name | Type | Description | Notes |
546
+ | ---- | ---- | ----------- | ----- |
547
+ | **limit** | **Integer** | Maximum resources to return. Defaults to 100. Positive values above 1000 are accepted and clamped to 1000; the effective value is reported in meta.limit. Zero, negative, and non-integer values return a `400 Bad Request` error. | [optional][default to 100] |
548
+ | **cursor** | **String** | Continuation value from a previous response&#39;s meta.next_cursor. Omit this parameter to request the first page. | [optional] |
549
+
550
+ ### Return type
551
+
552
+ [**NetworkProtectNetworksResponse**](NetworkProtectNetworksResponse.md)
553
+
554
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
555
+ [[Back to README]](../../README.md)
556
+ ## `list_network_protect_prefix_lists()`
557
+
558
+ ```ruby
559
+ list_network_protect_prefix_lists(opts): <NetworkProtectPrefixListsResponse> # List Network Protect prefix lists
560
+ ```
561
+
562
+ Lists prefix lists in ascending ID order. Positive limits above 1000 are accepted and clamped to 1000. Invalid limits return a `400 Bad Request` error.
563
+
564
+ ### Examples
565
+
566
+ ```ruby
567
+ api_instance = Fastly::NetworkProtectApi.new
568
+ opts = {
569
+ limit: 100, # Integer | Maximum resources to return. Defaults to 100. Positive values above 1000 are accepted and clamped to 1000; the effective value is reported in meta.limit. Zero, negative, and non-integer values return a `400 Bad Request` error.
570
+ cursor: 'network-cursor-next', # String | Continuation value from a previous response's meta.next_cursor. Omit this parameter to request the first page.
571
+ }
572
+
573
+ begin
574
+ # List Network Protect prefix lists
575
+ result = api_instance.list_network_protect_prefix_lists(opts)
576
+ p result
577
+ rescue Fastly::ApiError => e
578
+ puts "Error when calling NetworkProtectApi->list_network_protect_prefix_lists: #{e}"
579
+ end
580
+ ```
581
+
582
+ ### Options
583
+
584
+ | Name | Type | Description | Notes |
585
+ | ---- | ---- | ----------- | ----- |
586
+ | **limit** | **Integer** | Maximum resources to return. Defaults to 100. Positive values above 1000 are accepted and clamped to 1000; the effective value is reported in meta.limit. Zero, negative, and non-integer values return a `400 Bad Request` error. | [optional][default to 100] |
587
+ | **cursor** | **String** | Continuation value from a previous response&#39;s meta.next_cursor. Omit this parameter to request the first page. | [optional] |
588
+
589
+ ### Return type
590
+
591
+ [**NetworkProtectPrefixListsResponse**](NetworkProtectPrefixListsResponse.md)
592
+
593
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
594
+ [[Back to README]](../../README.md)
595
+ ## `list_network_protect_rule_sets()`
596
+
597
+ ```ruby
598
+ list_network_protect_rule_sets(opts): <NetworkProtectRuleSetsResponse> # List Network Protect rule sets
599
+ ```
600
+
601
+ Lists rule sets in ascending ID order. Positive limits above 1000 are accepted and clamped to 1000; invalid limits return a `400 Bad Request` error.
602
+
603
+ ### Examples
604
+
605
+ ```ruby
606
+ api_instance = Fastly::NetworkProtectApi.new
607
+ opts = {
608
+ limit: 100, # Integer | Maximum resources to return. Defaults to 100. Positive values above 1000 are accepted and clamped to 1000; the effective value is reported in meta.limit. Zero, negative, and non-integer values return a `400 Bad Request` error.
609
+ cursor: 'network-cursor-next', # String | Continuation value from a previous response's meta.next_cursor. Omit this parameter to request the first page.
610
+ }
611
+
612
+ begin
613
+ # List Network Protect rule sets
614
+ result = api_instance.list_network_protect_rule_sets(opts)
615
+ p result
616
+ rescue Fastly::ApiError => e
617
+ puts "Error when calling NetworkProtectApi->list_network_protect_rule_sets: #{e}"
618
+ end
619
+ ```
620
+
621
+ ### Options
622
+
623
+ | Name | Type | Description | Notes |
624
+ | ---- | ---- | ----------- | ----- |
625
+ | **limit** | **Integer** | Maximum resources to return. Defaults to 100. Positive values above 1000 are accepted and clamped to 1000; the effective value is reported in meta.limit. Zero, negative, and non-integer values return a `400 Bad Request` error. | [optional][default to 100] |
626
+ | **cursor** | **String** | Continuation value from a previous response&#39;s meta.next_cursor. Omit this parameter to request the first page. | [optional] |
627
+
628
+ ### Return type
629
+
630
+ [**NetworkProtectRuleSetsResponse**](NetworkProtectRuleSetsResponse.md)
631
+
632
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
633
+ [[Back to README]](../../README.md)
634
+ ## `update_network_protect_endpoint()`
635
+
636
+ ```ruby
637
+ update_network_protect_endpoint(opts): <NetworkProtectEndpointResponse> # Update a Network Protect endpoint
638
+ ```
639
+
640
+ Updates an endpoint. Omitted fields remain unchanged. The IP address cannot be changed; create a new endpoint if the destination changes.
641
+
642
+ ### Examples
643
+
644
+ ```ruby
645
+ api_instance = Fastly::NetworkProtectApi.new
646
+ opts = {
647
+ endpoint_id: 'DBOEWyMXebAir5qwjWEwK1', # String | Unique identifier of the Network Protect endpoint.
648
+ network_protect_endpoint_update: Fastly::NetworkProtectEndpointUpdate.new({name: 'Transit network'}), # NetworkProtectEndpointUpdate |
649
+ }
650
+
651
+ begin
652
+ # Update a Network Protect endpoint
653
+ result = api_instance.update_network_protect_endpoint(opts)
654
+ p result
655
+ rescue Fastly::ApiError => e
656
+ puts "Error when calling NetworkProtectApi->update_network_protect_endpoint: #{e}"
657
+ end
658
+ ```
659
+
660
+ ### Options
661
+
662
+ | Name | Type | Description | Notes |
663
+ | ---- | ---- | ----------- | ----- |
664
+ | **endpoint_id** | **String** | Unique identifier of the Network Protect endpoint. | |
665
+ | **network_protect_endpoint_update** | [**NetworkProtectEndpointUpdate**](NetworkProtectEndpointUpdate.md) | | |
666
+
667
+ ### Return type
668
+
669
+ [**NetworkProtectEndpointResponse**](NetworkProtectEndpointResponse.md)
670
+
671
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
672
+ [[Back to README]](../../README.md)
673
+ ## `update_network_protect_network()`
674
+
675
+ ```ruby
676
+ update_network_protect_network(opts): <NetworkProtectNetworkResponse> # Update a Network Protect network
677
+ ```
678
+
679
+ Updates a network. Omitted fields remain unchanged. The prefix cannot be changed. Sending `endpoint_policies` replaces the complete policy list; an empty array removes every policy. Advertisement is desired state. Enabling it requires an approved LOA, a valid ROA, and a ready default-region delivery policy. A readiness failure returns a `409 Conflict` error.
680
+
681
+ ### Examples
682
+
683
+ ```ruby
684
+ api_instance = Fastly::NetworkProtectApi.new
685
+ opts = {
686
+ network_id: 'an7NWnhOjjOkwSNvrwphTd', # String | Unique identifier of the Network Protect network.
687
+ network_protect_network_update: Fastly::NetworkProtectNetworkUpdate.new, # NetworkProtectNetworkUpdate |
688
+ }
689
+
690
+ begin
691
+ # Update a Network Protect network
692
+ result = api_instance.update_network_protect_network(opts)
693
+ p result
694
+ rescue Fastly::ApiError => e
695
+ puts "Error when calling NetworkProtectApi->update_network_protect_network: #{e}"
696
+ end
697
+ ```
698
+
699
+ ### Options
700
+
701
+ | Name | Type | Description | Notes |
702
+ | ---- | ---- | ----------- | ----- |
703
+ | **network_id** | **String** | Unique identifier of the Network Protect network. | |
704
+ | **network_protect_network_update** | [**NetworkProtectNetworkUpdate**](NetworkProtectNetworkUpdate.md) | | |
705
+
706
+ ### Return type
707
+
708
+ [**NetworkProtectNetworkResponse**](NetworkProtectNetworkResponse.md)
709
+
710
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
711
+ [[Back to README]](../../README.md)
712
+ ## `update_network_protect_prefix_list()`
713
+
714
+ ```ruby
715
+ update_network_protect_prefix_list(opts): <NetworkProtectPrefixListResponse> # Update a Network Protect prefix list
716
+ ```
717
+
718
+ Updates a prefix list. The family cannot be changed. Sending addresses replaces the complete list; an empty array clears it when no active source-list restriction applies. Addresses are canonicalized, deduplicated, and sorted by the backend.
719
+
720
+ ### Examples
721
+
722
+ ```ruby
723
+ api_instance = Fastly::NetworkProtectApi.new
724
+ opts = {
725
+ prefix_list_id: 'QoavyX1BHOMGQm2zmVyEbS', # String | Unique identifier of the Network Protect prefix list.
726
+ network_protect_prefix_list_update: Fastly::NetworkProtectPrefixListUpdate.new, # NetworkProtectPrefixListUpdate |
727
+ }
728
+
729
+ begin
730
+ # Update a Network Protect prefix list
731
+ result = api_instance.update_network_protect_prefix_list(opts)
732
+ p result
733
+ rescue Fastly::ApiError => e
734
+ puts "Error when calling NetworkProtectApi->update_network_protect_prefix_list: #{e}"
735
+ end
736
+ ```
737
+
738
+ ### Options
739
+
740
+ | Name | Type | Description | Notes |
741
+ | ---- | ---- | ----------- | ----- |
742
+ | **prefix_list_id** | **String** | Unique identifier of the Network Protect prefix list. | |
743
+ | **network_protect_prefix_list_update** | [**NetworkProtectPrefixListUpdate**](NetworkProtectPrefixListUpdate.md) | | |
744
+
745
+ ### Return type
746
+
747
+ [**NetworkProtectPrefixListResponse**](NetworkProtectPrefixListResponse.md)
748
+
749
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
750
+ [[Back to README]](../../README.md)
751
+ ## `update_network_protect_rule_set()`
752
+
753
+ ```ruby
754
+ update_network_protect_rule_set(opts): <NetworkProtectRuleSetResponse> # Update a Network Protect rule set
755
+ ```
756
+
757
+ Updates a rule set. Omitted fields remain unchanged. Sending rules replaces the complete ordered list; an empty array removes every rule. Custom attachment and detachment remain restricted in this release.
758
+
759
+ ### Examples
760
+
761
+ ```ruby
762
+ api_instance = Fastly::NetworkProtectApi.new
763
+ opts = {
764
+ rule_set_id: 'Z4xQoBznwNb5GJfdJbp58Y', # String | Unique identifier of the Network Protect rule set.
765
+ network_protect_rule_set_update: Fastly::NetworkProtectRuleSetUpdate.new, # NetworkProtectRuleSetUpdate |
766
+ }
767
+
768
+ begin
769
+ # Update a Network Protect rule set
770
+ result = api_instance.update_network_protect_rule_set(opts)
771
+ p result
772
+ rescue Fastly::ApiError => e
773
+ puts "Error when calling NetworkProtectApi->update_network_protect_rule_set: #{e}"
774
+ end
775
+ ```
776
+
777
+ ### Options
778
+
779
+ | Name | Type | Description | Notes |
780
+ | ---- | ---- | ----------- | ----- |
781
+ | **rule_set_id** | **String** | Unique identifier of the Network Protect rule set. | |
782
+ | **network_protect_rule_set_update** | [**NetworkProtectRuleSetUpdate**](NetworkProtectRuleSetUpdate.md) | | |
783
+
784
+ ### Return type
785
+
786
+ [**NetworkProtectRuleSetResponse**](NetworkProtectRuleSetResponse.md)
787
+
788
+ [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
789
+ [[Back to README]](../../README.md)