fastly 13.1.0 → 14.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 (80) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +25 -0
  3. data/Gemfile.lock +4 -4
  4. data/README.md +16 -4
  5. data/docs/AttackReport.md +19 -0
  6. data/docs/AttackSignal.md +12 -0
  7. data/docs/AttackSource.md +13 -0
  8. data/docs/Backend.md +4 -4
  9. data/docs/BackendApi.md +10 -10
  10. data/docs/BackendResponse.md +4 -4
  11. data/docs/DdosProtectionApi.md +40 -0
  12. data/docs/DdosProtectionAttributeStats.md +1 -1
  13. data/docs/DdosProtectionInvalidRequest.md +13 -0
  14. data/docs/{LogTimeseriesResultDimensions.md → DdosProtectionNotAuthorized.md} +3 -2
  15. data/docs/DdosProtectionRule.md +1 -1
  16. data/docs/DdosProtectionRuleAllOf.md +1 -1
  17. data/docs/DdosProtectionRulePatch.md +10 -0
  18. data/docs/HistoricalApi.md +2 -0
  19. data/docs/KvStoreApi.md +2 -0
  20. data/docs/ListAttackReport.md +11 -0
  21. data/docs/{DdosProtectionTrafficAttribute.md → ListAttackReportMeta.md} +2 -1
  22. data/docs/{DdosProtectionAction.md → ListSignalReport.md} +2 -1
  23. data/docs/LogExplorerApi.md +1 -1
  24. data/docs/NgwafReportsApi.md +99 -0
  25. data/docs/ObservabilityTimeseriesApi.md +67 -0
  26. data/docs/PoolApi.md +4 -4
  27. data/docs/PoolResponse.md +1 -1
  28. data/docs/PoolResponseCommon.md +1 -1
  29. data/docs/PoolResponsePost.md +1 -1
  30. data/docs/SignalReport.md +13 -0
  31. data/docs/TimeseriesGetResponse.md +11 -0
  32. data/docs/TimeseriesMeta.md +13 -0
  33. data/docs/TimeseriesResult.md +11 -0
  34. data/docs/TlsSubscriptionsApi.md +0 -2
  35. data/docs/TopWorkspace.md +12 -0
  36. data/lib/fastly/api/backend_api.rb +16 -16
  37. data/lib/fastly/api/ddos_protection_api.rb +70 -0
  38. data/lib/fastly/api/historical_api.rb +3 -0
  39. data/lib/fastly/api/kv_store_api.rb +3 -0
  40. data/lib/fastly/api/ngwaf_reports_api.rb +161 -0
  41. data/lib/fastly/api/{observability_timeseries_for_logs_api.rb → observability_timeseries_api.rb} +38 -43
  42. data/lib/fastly/api/pool_api.rb +4 -4
  43. data/lib/fastly/api/tls_subscriptions_api.rb +0 -3
  44. data/lib/fastly/configuration.rb +19 -1
  45. data/lib/fastly/models/attack_report.rb +359 -0
  46. data/lib/fastly/models/attack_signal.rb +252 -0
  47. data/lib/fastly/models/attack_source.rb +267 -0
  48. data/lib/fastly/models/backend.rb +7 -1
  49. data/lib/fastly/models/backend_response.rb +7 -1
  50. data/lib/fastly/models/ddos_protection_attribute_stats.rb +2 -1
  51. data/lib/fastly/models/ddos_protection_invalid_request.rb +309 -0
  52. data/lib/fastly/models/{log_timeseries_filter_field_item.rb → ddos_protection_not_authorized.rb} +24 -36
  53. data/lib/fastly/models/ddos_protection_rule.rb +2 -1
  54. data/lib/fastly/models/ddos_protection_rule_all_of.rb +2 -1
  55. data/lib/fastly/models/ddos_protection_rule_patch.rb +219 -0
  56. data/lib/fastly/models/{log_timeseries_get_response.rb → list_attack_report.rb} +5 -5
  57. data/lib/fastly/models/list_attack_report_meta.rb +218 -0
  58. data/lib/fastly/models/{log_timeseries_result_dimensions.rb → list_signal_report.rb} +12 -10
  59. data/lib/fastly/models/pool_response.rb +1 -1
  60. data/lib/fastly/models/pool_response_common.rb +1 -1
  61. data/lib/fastly/models/pool_response_post.rb +1 -1
  62. data/lib/fastly/models/signal_report.rb +249 -0
  63. data/lib/fastly/models/{log_timeseries_get_response_meta_filters.rb → timeseries_get_response.rb} +20 -13
  64. data/lib/fastly/models/{log_timeseries_get_response_meta.rb → timeseries_meta.rb} +23 -32
  65. data/lib/fastly/models/{log_timeseries_result.rb → timeseries_result.rb} +9 -5
  66. data/lib/fastly/models/top_workspace.rb +238 -0
  67. data/lib/fastly/version.rb +1 -1
  68. data/lib/fastly.rb +16 -10
  69. data/sig.json +1 -1
  70. metadata +34 -22
  71. data/docs/LogTimeseriesFilterFieldItem.md +0 -12
  72. data/docs/LogTimeseriesGetResponse.md +0 -11
  73. data/docs/LogTimeseriesGetResponseMeta.md +0 -14
  74. data/docs/LogTimeseriesGetResponseMetaFilters.md +0 -10
  75. data/docs/LogTimeseriesResult.md +0 -11
  76. data/docs/LogTimeseriesValueField.md +0 -59
  77. data/docs/ObservabilityTimeseriesForLogsApi.md +0 -67
  78. data/lib/fastly/models/ddos_protection_action.rb +0 -37
  79. data/lib/fastly/models/ddos_protection_traffic_attribute.rb +0 -40
  80. data/lib/fastly/models/log_timeseries_value_field.rb +0 -108
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastly
3
3
  version: !ruby/object:Gem::Version
4
- version: 13.1.0
4
+ version: 14.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fastly
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-07-08 00:00:00.000000000 Z
11
+ date: 2025-08-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: typhoeus
@@ -74,6 +74,9 @@ files:
74
74
  - docs/ApexRedirectAllOf.md
75
75
  - docs/ApexRedirectApi.md
76
76
  - docs/AsyncResponse.md
77
+ - docs/AttackReport.md
78
+ - docs/AttackSignal.md
79
+ - docs/AttackSource.md
77
80
  - docs/AutomationToken.md
78
81
  - docs/AutomationTokenCreateRequest.md
79
82
  - docs/AutomationTokenCreateRequestAttributes.md
@@ -178,7 +181,6 @@ files:
178
181
  - docs/DashboardItemPropertyVisualizationPropertyConfig.md
179
182
  - docs/DashboardPropertyCreatedBy.md
180
183
  - docs/DashboardPropertyUpdatedBy.md
181
- - docs/DdosProtectionAction.md
182
184
  - docs/DdosProtectionApi.md
183
185
  - docs/DdosProtectionAttributeStats.md
184
186
  - docs/DdosProtectionAttributeValue.md
@@ -186,7 +188,9 @@ files:
186
188
  - docs/DdosProtectionErrorErrors.md
187
189
  - docs/DdosProtectionEvent.md
188
190
  - docs/DdosProtectionEventAllOf.md
191
+ - docs/DdosProtectionInvalidRequest.md
189
192
  - docs/DdosProtectionNotAuthenticated.md
193
+ - docs/DdosProtectionNotAuthorized.md
190
194
  - docs/DdosProtectionNotFound.md
191
195
  - docs/DdosProtectionRequestUpdateConfiguration.md
192
196
  - docs/DdosProtectionResponseBodyGetAllServices.md
@@ -205,7 +209,7 @@ files:
205
209
  - docs/DdosProtectionResponseService.md
206
210
  - docs/DdosProtectionRule.md
207
211
  - docs/DdosProtectionRuleAllOf.md
208
- - docs/DdosProtectionTrafficAttribute.md
212
+ - docs/DdosProtectionRulePatch.md
209
213
  - docs/DdosProtectionTrafficStats.md
210
214
  - docs/DdosProtectionTrafficStatsAllOf.md
211
215
  - docs/DefaultSettings.md
@@ -394,9 +398,12 @@ files:
394
398
  - docs/KvStoreItemApi.md
395
399
  - docs/KvStoreRequestCreate.md
396
400
  - docs/KvStoreUpsertBatch.md
401
+ - docs/ListAttackReport.md
402
+ - docs/ListAttackReportMeta.md
397
403
  - docs/ListCustomerAddressesResponse.md
398
404
  - docs/ListDashboardsResponse.md
399
405
  - docs/ListEomInvoicesResponse.md
406
+ - docs/ListSignalReport.md
400
407
  - docs/Listinvoices.md
401
408
  - docs/LogAggregationsFilterFieldItem.md
402
409
  - docs/LogAggregationsGetResponse.md
@@ -424,13 +431,6 @@ files:
424
431
  - docs/LogInsightsValues.md
425
432
  - docs/LogPropertyServiceId.md
426
433
  - docs/LogRecord.md
427
- - docs/LogTimeseriesFilterFieldItem.md
428
- - docs/LogTimeseriesGetResponse.md
429
- - docs/LogTimeseriesGetResponseMeta.md
430
- - docs/LogTimeseriesGetResponseMetaFilters.md
431
- - docs/LogTimeseriesResult.md
432
- - docs/LogTimeseriesResultDimensions.md
433
- - docs/LogTimeseriesValueField.md
434
434
  - docs/LoggingAddressAndPort.md
435
435
  - docs/LoggingAzureblobAdditional.md
436
436
  - docs/LoggingAzureblobApi.md
@@ -549,6 +549,7 @@ files:
549
549
  - docs/MutualAuthenticationResponseDataAllOf.md
550
550
  - docs/MutualAuthenticationsResponse.md
551
551
  - docs/MutualAuthenticationsResponseAllOf.md
552
+ - docs/NgwafReportsApi.md
552
553
  - docs/NgwafRequestEnable.md
553
554
  - docs/NgwafRequestUpdateConfiguration.md
554
555
  - docs/NgwafResponseBodyGetAllServices.md
@@ -574,7 +575,7 @@ files:
574
575
  - docs/ObjectStorageResponseProductProduct.md
575
576
  - docs/ObservabilityAggregationsForLogsApi.md
576
577
  - docs/ObservabilityCustomDashboardsApi.md
577
- - docs/ObservabilityTimeseriesForLogsApi.md
578
+ - docs/ObservabilityTimeseriesApi.md
578
579
  - docs/OriginInspector.md
579
580
  - docs/OriginInspectorDimensions.md
580
581
  - docs/OriginInspectorEntry.md
@@ -801,6 +802,7 @@ files:
801
802
  - docs/Settings.md
802
803
  - docs/SettingsApi.md
803
804
  - docs/SettingsResponse.md
805
+ - docs/SignalReport.md
804
806
  - docs/SigningKey.md
805
807
  - docs/Snippet.md
806
808
  - docs/SnippetApi.md
@@ -817,6 +819,9 @@ files:
817
819
  - docs/SudoGenericTokenError.md
818
820
  - docs/SudoRequest.md
819
821
  - docs/SudoResponse.md
822
+ - docs/TimeseriesGetResponse.md
823
+ - docs/TimeseriesMeta.md
824
+ - docs/TimeseriesResult.md
820
825
  - docs/Timestamps.md
821
826
  - docs/TimestampsNoDelete.md
822
827
  - docs/TlsActivation.md
@@ -904,6 +909,7 @@ files:
904
909
  - docs/TokenResponseAllOf.md
905
910
  - docs/TokensAdditionalProps.md
906
911
  - docs/TokensApi.md
912
+ - docs/TopWorkspace.md
907
913
  - docs/TypeBillingAddress.md
908
914
  - docs/TypeContact.md
909
915
  - docs/TypeCustomer.md
@@ -1052,10 +1058,11 @@ files:
1052
1058
  - lib/fastly/api/logging_sumologic_api.rb
1053
1059
  - lib/fastly/api/logging_syslog_api.rb
1054
1060
  - lib/fastly/api/mutual_authentication_api.rb
1061
+ - lib/fastly/api/ngwaf_reports_api.rb
1055
1062
  - lib/fastly/api/object_storage_access_keys_api.rb
1056
1063
  - lib/fastly/api/observability_aggregations_for_logs_api.rb
1057
1064
  - lib/fastly/api/observability_custom_dashboards_api.rb
1058
- - lib/fastly/api/observability_timeseries_for_logs_api.rb
1065
+ - lib/fastly/api/observability_timeseries_api.rb
1059
1066
  - lib/fastly/api/origin_inspector_historical_api.rb
1060
1067
  - lib/fastly/api/origin_inspector_realtime_api.rb
1061
1068
  - lib/fastly/api/package_api.rb
@@ -1126,6 +1133,9 @@ files:
1126
1133
  - lib/fastly/models/apex_redirect.rb
1127
1134
  - lib/fastly/models/apex_redirect_all_of.rb
1128
1135
  - lib/fastly/models/async_response.rb
1136
+ - lib/fastly/models/attack_report.rb
1137
+ - lib/fastly/models/attack_signal.rb
1138
+ - lib/fastly/models/attack_source.rb
1129
1139
  - lib/fastly/models/automation_token.rb
1130
1140
  - lib/fastly/models/automation_token_create_request.rb
1131
1141
  - lib/fastly/models/automation_token_create_request_attributes.rb
@@ -1217,14 +1227,15 @@ files:
1217
1227
  - lib/fastly/models/dashboard_item_property_visualization_property_config.rb
1218
1228
  - lib/fastly/models/dashboard_property_created_by.rb
1219
1229
  - lib/fastly/models/dashboard_property_updated_by.rb
1220
- - lib/fastly/models/ddos_protection_action.rb
1221
1230
  - lib/fastly/models/ddos_protection_attribute_stats.rb
1222
1231
  - lib/fastly/models/ddos_protection_attribute_value.rb
1223
1232
  - lib/fastly/models/ddos_protection_error.rb
1224
1233
  - lib/fastly/models/ddos_protection_error_errors.rb
1225
1234
  - lib/fastly/models/ddos_protection_event.rb
1226
1235
  - lib/fastly/models/ddos_protection_event_all_of.rb
1236
+ - lib/fastly/models/ddos_protection_invalid_request.rb
1227
1237
  - lib/fastly/models/ddos_protection_not_authenticated.rb
1238
+ - lib/fastly/models/ddos_protection_not_authorized.rb
1228
1239
  - lib/fastly/models/ddos_protection_not_found.rb
1229
1240
  - lib/fastly/models/ddos_protection_request_update_configuration.rb
1230
1241
  - lib/fastly/models/ddos_protection_response_body_get_all_services.rb
@@ -1243,7 +1254,7 @@ files:
1243
1254
  - lib/fastly/models/ddos_protection_response_service.rb
1244
1255
  - lib/fastly/models/ddos_protection_rule.rb
1245
1256
  - lib/fastly/models/ddos_protection_rule_all_of.rb
1246
- - lib/fastly/models/ddos_protection_traffic_attribute.rb
1257
+ - lib/fastly/models/ddos_protection_rule_patch.rb
1247
1258
  - lib/fastly/models/ddos_protection_traffic_stats.rb
1248
1259
  - lib/fastly/models/ddos_protection_traffic_stats_all_of.rb
1249
1260
  - lib/fastly/models/default_settings.rb
@@ -1407,9 +1418,12 @@ files:
1407
1418
  - lib/fastly/models/kv_store_details.rb
1408
1419
  - lib/fastly/models/kv_store_request_create.rb
1409
1420
  - lib/fastly/models/kv_store_upsert_batch.rb
1421
+ - lib/fastly/models/list_attack_report.rb
1422
+ - lib/fastly/models/list_attack_report_meta.rb
1410
1423
  - lib/fastly/models/list_customer_addresses_response.rb
1411
1424
  - lib/fastly/models/list_dashboards_response.rb
1412
1425
  - lib/fastly/models/list_eom_invoices_response.rb
1426
+ - lib/fastly/models/list_signal_report.rb
1413
1427
  - lib/fastly/models/listinvoices.rb
1414
1428
  - lib/fastly/models/log_aggregations_filter_field_item.rb
1415
1429
  - lib/fastly/models/log_aggregations_get_response.rb
@@ -1436,13 +1450,6 @@ files:
1436
1450
  - lib/fastly/models/log_insights_values.rb
1437
1451
  - lib/fastly/models/log_property_service_id.rb
1438
1452
  - lib/fastly/models/log_record.rb
1439
- - lib/fastly/models/log_timeseries_filter_field_item.rb
1440
- - lib/fastly/models/log_timeseries_get_response.rb
1441
- - lib/fastly/models/log_timeseries_get_response_meta.rb
1442
- - lib/fastly/models/log_timeseries_get_response_meta_filters.rb
1443
- - lib/fastly/models/log_timeseries_result.rb
1444
- - lib/fastly/models/log_timeseries_result_dimensions.rb
1445
- - lib/fastly/models/log_timeseries_value_field.rb
1446
1453
  - lib/fastly/models/logging_address_and_port.rb
1447
1454
  - lib/fastly/models/logging_azureblob_additional.rb
1448
1455
  - lib/fastly/models/logging_azureblob_response.rb
@@ -1749,6 +1756,7 @@ files:
1749
1756
  - lib/fastly/models/serviceusagetypes.rb
1750
1757
  - lib/fastly/models/settings.rb
1751
1758
  - lib/fastly/models/settings_response.rb
1759
+ - lib/fastly/models/signal_report.rb
1752
1760
  - lib/fastly/models/signing_key.rb
1753
1761
  - lib/fastly/models/snippet.rb
1754
1762
  - lib/fastly/models/snippet_response.rb
@@ -1761,6 +1769,9 @@ files:
1761
1769
  - lib/fastly/models/sudo_generic_token_error.rb
1762
1770
  - lib/fastly/models/sudo_request.rb
1763
1771
  - lib/fastly/models/sudo_response.rb
1772
+ - lib/fastly/models/timeseries_get_response.rb
1773
+ - lib/fastly/models/timeseries_meta.rb
1774
+ - lib/fastly/models/timeseries_result.rb
1764
1775
  - lib/fastly/models/timestamps.rb
1765
1776
  - lib/fastly/models/timestamps_no_delete.rb
1766
1777
  - lib/fastly/models/tls_activation.rb
@@ -1839,6 +1850,7 @@ files:
1839
1850
  - lib/fastly/models/token_response.rb
1840
1851
  - lib/fastly/models/token_response_all_of.rb
1841
1852
  - lib/fastly/models/tokens_additional_props.rb
1853
+ - lib/fastly/models/top_workspace.rb
1842
1854
  - lib/fastly/models/type_billing_address.rb
1843
1855
  - lib/fastly/models/type_contact.rb
1844
1856
  - lib/fastly/models/type_customer.rb
@@ -1,12 +0,0 @@
1
- # Fastly::LogTimeseriesFilterFieldItem
2
-
3
- ## Properties
4
-
5
- | Name | Type | Description | Notes |
6
- | ---- | ---- | ----------- | ----- |
7
- | **field** | **String** | The log field to which this filter should be applied. | [optional] |
8
- | **operator** | **String** | The comparison operator used for this filter. | [optional] |
9
- | **value** | [**LogTimeseriesValueField**](LogTimeseriesValueField.md) | | [optional] |
10
-
11
- [[Back to API list]](../../README.md#endpoints) [[Back to README]](../../README.md)
12
-
@@ -1,11 +0,0 @@
1
- # Fastly::LogTimeseriesGetResponse
2
-
3
- ## Properties
4
-
5
- | Name | Type | Description | Notes |
6
- | ---- | ---- | ----------- | ----- |
7
- | **data** | [**Array<LogTimeseriesResult>**](LogTimeseriesResult.md) | | [optional] |
8
- | **meta** | [**LogTimeseriesGetResponseMeta**](LogTimeseriesGetResponseMeta.md) | | [optional] |
9
-
10
- [[Back to API list]](../../README.md#endpoints) [[Back to README]](../../README.md)
11
-
@@ -1,14 +0,0 @@
1
- # Fastly::LogTimeseriesGetResponseMeta
2
-
3
- ## Properties
4
-
5
- | Name | Type | Description | Notes |
6
- | ---- | ---- | ----------- | ----- |
7
- | **service_id** | **String** | ID of the service for which data was returned. | [optional] |
8
- | **start** | **String** | Start time for the query as supplied in the request. | [optional] |
9
- | **_end** | **String** | End time for the query as supplied in the request. | [optional] |
10
- | **granularity** | **String** | The granularity of the time buckets in the response. | [optional] |
11
- | **filters** | [**LogTimeseriesGetResponseMetaFilters**](LogTimeseriesGetResponseMetaFilters.md) | | [optional] |
12
-
13
- [[Back to API list]](../../README.md#endpoints) [[Back to README]](../../README.md)
14
-
@@ -1,10 +0,0 @@
1
- # Fastly::LogTimeseriesGetResponseMetaFilters
2
-
3
- ## Properties
4
-
5
- | Name | Type | Description | Notes |
6
- | ---- | ---- | ----------- | ----- |
7
- | **filter_fields** | [**Array<LogTimeseriesFilterFieldItem>**](LogTimeseriesFilterFieldItem.md) | | [optional] |
8
-
9
- [[Back to API list]](../../README.md#endpoints) [[Back to README]](../../README.md)
10
-
@@ -1,11 +0,0 @@
1
- # Fastly::LogTimeseriesResult
2
-
3
- ## Properties
4
-
5
- | Name | Type | Description | Notes |
6
- | ---- | ---- | ----------- | ----- |
7
- | **dimensions** | [**LogTimeseriesResultDimensions**](LogTimeseriesResultDimensions.md) | | [optional] |
8
- | **values** | **Hash<String, Object>** | | [optional] |
9
-
10
- [[Back to API list]](../../README.md#endpoints) [[Back to README]](../../README.md)
11
-
@@ -1,59 +0,0 @@
1
- # Fastly::LogTimeseriesValueField
2
-
3
- ## Class instance methods
4
-
5
- ### `fastly_one_of`
6
-
7
- Returns the list of classes defined in oneOf.
8
-
9
- #### Example
10
-
11
- ```ruby
12
- require 'fastly'
13
-
14
- Fastly::LogTimeseriesValueField.fastly_one_of
15
- # =>
16
- # [
17
- # :'Array<Float>',
18
- # :'Array<Integer>',
19
- # :'Array<String>',
20
- # :'Boolean',
21
- # :'Float',
22
- # :'Integer',
23
- # :'String'
24
- # ]
25
- ```
26
-
27
- ### build
28
-
29
- Find the appropriate object from the `fastly_one_of` list and casts the data into it.
30
-
31
- #### Example
32
-
33
- ```ruby
34
- require 'fastly'
35
-
36
- Fastly::LogTimeseriesValueField.build(data)
37
- # => #<Array<Float>:0x00007fdd4aab02a0>
38
-
39
- Fastly::LogTimeseriesValueField.build(data_that_doesnt_match)
40
- # => nil
41
- ```
42
-
43
- #### Parameters
44
-
45
- | Name | Type | Description |
46
- | ---- | ---- | ----------- |
47
- | **data** | **Mixed** | data to be matched against the list of oneOf items |
48
-
49
- #### Return type
50
-
51
- - `Array<Float>`
52
- - `Array<Integer>`
53
- - `Array<String>`
54
- - `Boolean`
55
- - `Float`
56
- - `Integer`
57
- - `String`
58
- - `nil` (if no type matches)
59
-
@@ -1,67 +0,0 @@
1
- # Fastly::ObservabilityTimeseriesForLogsApi
2
-
3
-
4
- ```ruby
5
- require 'fastly'
6
- api_instance = Fastly::ObservabilityTimeseriesForLogsApi.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
- [**log_timeseries_get**](ObservabilityTimeseriesForLogsApi.md#log_timeseries_get) | **GET** /observability/timeseries | Retrieve log data as time series
17
-
18
-
19
- ## `log_timeseries_get()`
20
-
21
- ```ruby
22
- log_timeseries_get(opts): <LogTimeseriesGetResponse> # Retrieve log data as time series
23
- ```
24
-
25
- Retrieves log data as time series.
26
-
27
- ### Examples
28
-
29
- ```ruby
30
- api_instance = Fastly::ObservabilityTimeseriesForLogsApi.new
31
- opts = {
32
- source: 'source_example', # String |
33
- service_id: 'service_id_example', # String |
34
- start: 'start_example', # String |
35
- _end: '_end_example', # String |
36
- granularity: 'second', # String |
37
- series: 'series_example', # String |
38
- filter: 'filter_example', # String |
39
- }
40
-
41
- begin
42
- # Retrieve log data as time series
43
- result = api_instance.log_timeseries_get(opts)
44
- p result
45
- rescue Fastly::ApiError => e
46
- puts "Error when calling ObservabilityTimeseriesForLogsApi->log_timeseries_get: #{e}"
47
- end
48
- ```
49
-
50
- ### Options
51
-
52
- | Name | Type | Description | Notes |
53
- | ---- | ---- | ----------- | ----- |
54
- | **source** | **String** | | |
55
- | **service_id** | **String** | | |
56
- | **start** | **String** | | |
57
- | **_end** | **String** | | |
58
- | **granularity** | **String** | | |
59
- | **filter** | **String** | | [optional] |
60
- | **series** | **String** | | |
61
-
62
- ### Return type
63
-
64
- [**LogTimeseriesGetResponse**](LogTimeseriesGetResponse.md)
65
-
66
- [[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
67
- [[Back to README]](../../README.md)
@@ -1,37 +0,0 @@
1
- =begin
2
- #Fastly API
3
-
4
- #Via the Fastly API you can perform any of the operations that are possible within the management console, including creating services, domains, and backends, configuring rules or uploading your own application code, as well as account operations such as user administration and billing reports. The API is organized into collections of endpoints that allow manipulation of objects related to Fastly services and accounts. For the most accurate and up-to-date API reference content, visit our [Developer Hub](https://www.fastly.com/documentation/reference/api/)
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: oss@fastly.com
8
-
9
- =end
10
-
11
- require 'date'
12
- require 'time'
13
-
14
- module Fastly
15
- class DdosProtectionAction
16
- DEFAULT = "default".freeze
17
- BLOCK = "block".freeze
18
- LOG = "log".freeze
19
- DISABLED = "disabled".freeze
20
-
21
- # Builds the enum from string
22
- # @param [String] The enum value in the form of the string
23
- # @return [String] The enum value
24
- def self.build_from_hash(value)
25
- new.build_from_hash(value)
26
- end
27
-
28
- # Builds the enum from string
29
- # @param [String] The enum value in the form of the string
30
- # @return [String] The enum value
31
- def build_from_hash(value)
32
- constantValues = DdosProtectionAction.constants.select { |c| DdosProtectionAction::const_get(c) == value }
33
- raise "Invalid ENUM value #{value} for class #DdosProtectionAction" if constantValues.empty?
34
- value
35
- end
36
- end
37
- end
@@ -1,40 +0,0 @@
1
- =begin
2
- #Fastly API
3
-
4
- #Via the Fastly API you can perform any of the operations that are possible within the management console, including creating services, domains, and backends, configuring rules or uploading your own application code, as well as account operations such as user administration and billing reports. The API is organized into collections of endpoints that allow manipulation of objects related to Fastly services and accounts. For the most accurate and up-to-date API reference content, visit our [Developer Hub](https://www.fastly.com/documentation/reference/api/)
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: oss@fastly.com
8
-
9
- =end
10
-
11
- require 'date'
12
- require 'time'
13
-
14
- module Fastly
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
23
-
24
- # Builds the enum from string
25
- # @param [String] The enum value in the form of the string
26
- # @return [String] The enum value
27
- def self.build_from_hash(value)
28
- new.build_from_hash(value)
29
- end
30
-
31
- # Builds the enum from string
32
- # @param [String] The enum value in the form of the string
33
- # @return [String] The enum value
34
- def build_from_hash(value)
35
- constantValues = DdosProtectionTrafficAttribute.constants.select { |c| DdosProtectionTrafficAttribute::const_get(c) == value }
36
- raise "Invalid ENUM value #{value} for class #DdosProtectionTrafficAttribute" if constantValues.empty?
37
- value
38
- end
39
- end
40
- end
@@ -1,108 +0,0 @@
1
- =begin
2
- #Fastly API
3
-
4
- #Via the Fastly API you can perform any of the operations that are possible within the management console, including creating services, domains, and backends, configuring rules or uploading your own application code, as well as account operations such as user administration and billing reports. The API is organized into collections of endpoints that allow manipulation of objects related to Fastly services and accounts. For the most accurate and up-to-date API reference content, visit our [Developer Hub](https://www.fastly.com/documentation/reference/api/)
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: oss@fastly.com
8
-
9
- =end
10
-
11
- require 'date'
12
- require 'time'
13
-
14
- module Fastly
15
- module LogTimeseriesValueField
16
- class << self
17
- # List of class defined in oneOf (OpenAPI v3)
18
- def fastly_one_of
19
- [
20
- :'Array<Float>',
21
- :'Array<Integer>',
22
- :'Array<String>',
23
- :'Boolean',
24
- :'Float',
25
- :'Integer',
26
- :'String'
27
- ]
28
- end
29
-
30
- # Builds the object
31
- # @param [Mixed] Data to be matched against the list of oneOf items
32
- # @return [Object] Returns the model or the data itself
33
- def build(data)
34
- # Go through the list of oneOf items and attempt to identify the appropriate one.
35
- # Note:
36
- # - We do not attempt to check whether exactly one item matches.
37
- # - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 })
38
- # due to the way the deserialization is made in the base_object template (it just casts without verifying).
39
- # - TODO: scalar values are de facto behaving as if they were nullable.
40
- # - TODO: logging when debugging is set.
41
- fastly_one_of.each do |klass|
42
- begin
43
- next if klass == :AnyType # "nullable: true"
44
- typed_data = find_and_cast_into_type(klass, data)
45
- return typed_data if typed_data
46
- rescue # rescue all errors so we keep iterating even if the current item lookup raises
47
- end
48
- end
49
-
50
- fastly_one_of.include?(:AnyType) ? data : nil
51
- end
52
-
53
- private
54
-
55
- SchemaMismatchError = Class.new(StandardError)
56
-
57
- # Note: 'File' is missing here because in the regular case we get the data _after_ a call to JSON.parse.
58
- def find_and_cast_into_type(klass, data)
59
- return if data.nil?
60
-
61
- case klass.to_s
62
- when 'Boolean'
63
- return data if data.instance_of?(TrueClass) || data.instance_of?(FalseClass)
64
- when 'Float'
65
- return data if data.instance_of?(Float)
66
- when 'Integer'
67
- return data if data.instance_of?(Integer)
68
- when 'Time'
69
- return Time.parse(data)
70
- when 'Date'
71
- return Date.parse(data)
72
- when 'String'
73
- return data if data.instance_of?(String)
74
- when 'Object' # "type: object"
75
- return data if data.instance_of?(Hash)
76
- when /\AArray<(?<sub_type>.+)>\z/ # "type: array"
77
- if data.instance_of?(Array)
78
- sub_type = Regexp.last_match[:sub_type]
79
- return data.map { |item| find_and_cast_into_type(sub_type, item) }
80
- end
81
- when /\AHash<String, (?<sub_type>.+)>\z/ # "type: object" with "additionalProperties: { ... }"
82
- if data.instance_of?(Hash) && data.keys.all? { |k| k.instance_of?(Symbol) || k.instance_of?(String) }
83
- sub_type = Regexp.last_match[:sub_type]
84
- return data.each_with_object({}) { |(k, v), hsh| hsh[k] = find_and_cast_into_type(sub_type, v) }
85
- end
86
- else # model
87
- const = Fastly.const_get(klass)
88
- if const
89
- if const.respond_to?(:fastly_one_of) # nested oneOf model
90
- model = const.build(data)
91
- return model if model
92
- else
93
- # raise if data contains keys that are not known to the model
94
- raise unless (data.keys - const.acceptable_attributes).empty?
95
- model = const.build_from_hash(data)
96
- return model if model && model.valid?
97
- end
98
- end
99
- end
100
-
101
- raise # if no match by now, raise
102
- rescue
103
- raise SchemaMismatchError, "#{data} doesn't match the #{klass} type"
104
- end
105
- end
106
- end
107
-
108
- end