google-apis-apigee_v1 0.46.0 → 0.49.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -257,6 +257,11 @@ module Google
257
257
  # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1AdvancedApiOpsConfig]
258
258
  attr_accessor :advanced_api_ops_config
259
259
 
260
+ # Configurations of the API Security add-on.
261
+ # Corresponds to the JSON property `apiSecurityConfig`
262
+ # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiSecurityConfig]
263
+ attr_accessor :api_security_config
264
+
260
265
  # Configuration for the Connectors Platform add-on.
261
266
  # Corresponds to the JSON property `connectorsPlatformConfig`
262
267
  # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ConnectorsPlatformConfig]
@@ -279,6 +284,7 @@ module Google
279
284
  # Update properties of this object
280
285
  def update!(**args)
281
286
  @advanced_api_ops_config = args[:advanced_api_ops_config] if args.key?(:advanced_api_ops_config)
287
+ @api_security_config = args[:api_security_config] if args.key?(:api_security_config)
282
288
  @connectors_platform_config = args[:connectors_platform_config] if args.key?(:connectors_platform_config)
283
289
  @integration_config = args[:integration_config] if args.key?(:integration_config)
284
290
  @monetization_config = args[:monetization_config] if args.key?(:monetization_config)
@@ -925,6 +931,33 @@ module Google
925
931
  end
926
932
  end
927
933
 
934
+ # Configurations of the API Security add-on.
935
+ class GoogleCloudApigeeV1ApiSecurityConfig
936
+ include Google::Apis::Core::Hashable
937
+
938
+ # Flag that specifies whether the API security add-on is enabled.
939
+ # Corresponds to the JSON property `enabled`
940
+ # @return [Boolean]
941
+ attr_accessor :enabled
942
+ alias_method :enabled?, :enabled
943
+
944
+ # Output only. Time at which the API Security add-on expires in in milliseconds
945
+ # since epoch. If unspecified, the add-on will never expire.
946
+ # Corresponds to the JSON property `expiresAt`
947
+ # @return [Fixnum]
948
+ attr_accessor :expires_at
949
+
950
+ def initialize(**args)
951
+ update!(**args)
952
+ end
953
+
954
+ # Update properties of this object
955
+ def update!(**args)
956
+ @enabled = args[:enabled] if args.key?(:enabled)
957
+ @expires_at = args[:expires_at] if args.key?(:expires_at)
958
+ end
959
+ end
960
+
928
961
  #
929
962
  class GoogleCloudApigeeV1App
930
963
  include Google::Apis::Core::Hashable
@@ -1517,6 +1550,102 @@ module Google
1517
1550
  end
1518
1551
  end
1519
1552
 
1553
+ # Request for ComputeEnvironmentScores.
1554
+ class GoogleCloudApigeeV1ComputeEnvironmentScoresRequest
1555
+ include Google::Apis::Core::Hashable
1556
+
1557
+ # Optional. Filters are used to filter scored components. Return all the
1558
+ # components if no filter is mentioned. Example: [` "scorePath": "/org@myorg/
1559
+ # envgroup@myenvgroup/env@myenv/proxies/proxy@myproxy/source" `, ` "scorePath": "
1560
+ # /org@myorg/envgroup@myenvgroup/env@myenv/proxies/proxy@myproxy/target", `]
1561
+ # This will return components with path: "/org@myorg/envgroup@myenvgroup/env@
1562
+ # myenv/proxies/proxy@myproxy/source" OR "/org@myorg/envgroup@myenvgroup/env@
1563
+ # myenv/proxies/proxy@myproxy/target"
1564
+ # Corresponds to the JSON property `filters`
1565
+ # @return [Array<Google::Apis::ApigeeV1::GoogleCloudApigeeV1ComputeEnvironmentScoresRequestFilter>]
1566
+ attr_accessor :filters
1567
+
1568
+ # Optional. The maximum number of subcomponents to be returned in a single page.
1569
+ # The service may return fewer than this value. If unspecified, at most 100
1570
+ # subcomponents will be returned in a single page.
1571
+ # Corresponds to the JSON property `pageSize`
1572
+ # @return [Fixnum]
1573
+ attr_accessor :page_size
1574
+
1575
+ # Optional. A token that can be sent as `page_token` to retrieve the next page.
1576
+ # If this field is omitted, there are no subsequent pages.
1577
+ # Corresponds to the JSON property `pageToken`
1578
+ # @return [String]
1579
+ attr_accessor :page_token
1580
+
1581
+ # Represents a time interval, encoded as a Timestamp start (inclusive) and a
1582
+ # Timestamp end (exclusive). The start must be less than or equal to the end.
1583
+ # When the start equals the end, the interval is empty (matches no time). When
1584
+ # both start and end are unspecified, the interval matches any time.
1585
+ # Corresponds to the JSON property `timeRange`
1586
+ # @return [Google::Apis::ApigeeV1::GoogleTypeInterval]
1587
+ attr_accessor :time_range
1588
+
1589
+ def initialize(**args)
1590
+ update!(**args)
1591
+ end
1592
+
1593
+ # Update properties of this object
1594
+ def update!(**args)
1595
+ @filters = args[:filters] if args.key?(:filters)
1596
+ @page_size = args[:page_size] if args.key?(:page_size)
1597
+ @page_token = args[:page_token] if args.key?(:page_token)
1598
+ @time_range = args[:time_range] if args.key?(:time_range)
1599
+ end
1600
+ end
1601
+
1602
+ # Filter scores by component path. Used custom filter instead of AIP-160 as the
1603
+ # use cases are highly constrained and predictable.
1604
+ class GoogleCloudApigeeV1ComputeEnvironmentScoresRequestFilter
1605
+ include Google::Apis::Core::Hashable
1606
+
1607
+ # Optional. Return scores for this component. Example: "/org@myorg/envgroup@
1608
+ # myenvgroup/env@myenv/proxies/proxy@myproxy/source"
1609
+ # Corresponds to the JSON property `scorePath`
1610
+ # @return [String]
1611
+ attr_accessor :score_path
1612
+
1613
+ def initialize(**args)
1614
+ update!(**args)
1615
+ end
1616
+
1617
+ # Update properties of this object
1618
+ def update!(**args)
1619
+ @score_path = args[:score_path] if args.key?(:score_path)
1620
+ end
1621
+ end
1622
+
1623
+ # Response for ComputeEnvironmentScores.
1624
+ class GoogleCloudApigeeV1ComputeEnvironmentScoresResponse
1625
+ include Google::Apis::Core::Hashable
1626
+
1627
+ # A page token, received from a previous `ComputeScore` call. Provide this to
1628
+ # retrieve the subsequent page.
1629
+ # Corresponds to the JSON property `nextPageToken`
1630
+ # @return [String]
1631
+ attr_accessor :next_page_token
1632
+
1633
+ # List of scores. One score per day.
1634
+ # Corresponds to the JSON property `scores`
1635
+ # @return [Array<Google::Apis::ApigeeV1::GoogleCloudApigeeV1Score>]
1636
+ attr_accessor :scores
1637
+
1638
+ def initialize(**args)
1639
+ update!(**args)
1640
+ end
1641
+
1642
+ # Update properties of this object
1643
+ def update!(**args)
1644
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1645
+ @scores = args[:scores] if args.key?(:scores)
1646
+ end
1647
+ end
1648
+
1520
1649
  # Version of the API proxy configuration schema. Currently, only 4.0 is
1521
1650
  # supported.
1522
1651
  class GoogleCloudApigeeV1ConfigVersion
@@ -3049,6 +3178,13 @@ module Google
3049
3178
  # @return [String]
3050
3179
  attr_accessor :display_name
3051
3180
 
3181
+ # Optional. Url of the forward proxy to be applied to the runtime instances in
3182
+ # this environment. Must be in the format of `scheme`://`hostname`:`port`. Note
3183
+ # that scheme must be one of "http" or "https", and port must be supplied.
3184
+ # Corresponds to the JSON property `forwardProxyUri`
3185
+ # @return [String]
3186
+ attr_accessor :forward_proxy_uri
3187
+
3052
3188
  # Output only. Last modification time of this environment as milliseconds since
3053
3189
  # epoch.
3054
3190
  # Corresponds to the JSON property `lastModifiedAt`
@@ -3084,6 +3220,7 @@ module Google
3084
3220
  @deployment_type = args[:deployment_type] if args.key?(:deployment_type)
3085
3221
  @description = args[:description] if args.key?(:description)
3086
3222
  @display_name = args[:display_name] if args.key?(:display_name)
3223
+ @forward_proxy_uri = args[:forward_proxy_uri] if args.key?(:forward_proxy_uri)
3087
3224
  @last_modified_at = args[:last_modified_at] if args.key?(:last_modified_at)
3088
3225
  @name = args[:name] if args.key?(:name)
3089
3226
  @properties = args[:properties] if args.key?(:properties)
@@ -3132,6 +3269,13 @@ module Google
3132
3269
  # @return [Array<Google::Apis::ApigeeV1::GoogleCloudApigeeV1FlowHookConfig>]
3133
3270
  attr_accessor :flowhooks
3134
3271
 
3272
+ # The forward proxy's url to be used by the runtime. When set, runtime will send
3273
+ # requests to the target via the given forward proxy. This is only used by
3274
+ # programmable gateways.
3275
+ # Corresponds to the JSON property `forwardProxyUri`
3276
+ # @return [String]
3277
+ attr_accessor :forward_proxy_uri
3278
+
3135
3279
  # The location for the gateway config blob as a URI, e.g. a Cloud Storage URI.
3136
3280
  # This is only used by Envoy-based gateways.
3137
3281
  # Corresponds to the JSON property `gatewayConfigLocation`
@@ -3212,6 +3356,7 @@ module Google
3212
3356
  @deployments = args[:deployments] if args.key?(:deployments)
3213
3357
  @feature_flags = args[:feature_flags] if args.key?(:feature_flags)
3214
3358
  @flowhooks = args[:flowhooks] if args.key?(:flowhooks)
3359
+ @forward_proxy_uri = args[:forward_proxy_uri] if args.key?(:forward_proxy_uri)
3215
3360
  @gateway_config_location = args[:gateway_config_location] if args.key?(:gateway_config_location)
3216
3361
  @keystores = args[:keystores] if args.key?(:keystores)
3217
3362
  @name = args[:name] if args.key?(:name)
@@ -4169,12 +4314,41 @@ module Google
4169
4314
  end
4170
4315
  end
4171
4316
 
4317
+ # Key value map pair where the value represents the data associated with the
4318
+ # corresponding key.
4319
+ class GoogleCloudApigeeV1KeyValueEntry
4320
+ include Google::Apis::Core::Hashable
4321
+
4322
+ # Resource URI that can be used to identify the scope of the key value map
4323
+ # entries.
4324
+ # Corresponds to the JSON property `name`
4325
+ # @return [String]
4326
+ attr_accessor :name
4327
+
4328
+ # Required. Data or payload that is being retrieved and associated with the
4329
+ # unique key.
4330
+ # Corresponds to the JSON property `value`
4331
+ # @return [String]
4332
+ attr_accessor :value
4333
+
4334
+ def initialize(**args)
4335
+ update!(**args)
4336
+ end
4337
+
4338
+ # Update properties of this object
4339
+ def update!(**args)
4340
+ @name = args[:name] if args.key?(:name)
4341
+ @value = args[:value] if args.key?(:value)
4342
+ end
4343
+ end
4344
+
4172
4345
  # Collection of key/value string pairs.
4173
4346
  class GoogleCloudApigeeV1KeyValueMap
4174
4347
  include Google::Apis::Core::Hashable
4175
4348
 
4176
- # Optional. Flag that specifies whether entry values will be encrypted. Enable
4177
- # to encrypt entry values.
4349
+ # Optional. Flag that specifies whether entry values will be encrypted. You must
4350
+ # set this value to `true`. Apigee X and hybrid do not support unencrytped key
4351
+ # value maps.
4178
4352
  # Corresponds to the JSON property `encrypted`
4179
4353
  # @return [Boolean]
4180
4354
  attr_accessor :encrypted
@@ -4736,6 +4910,33 @@ module Google
4736
4910
  end
4737
4911
  end
4738
4912
 
4913
+ # The request structure for listing Key value map keys and its corrresponding
4914
+ # values.
4915
+ class GoogleCloudApigeeV1ListKeyValueEntriesResponse
4916
+ include Google::Apis::Core::Hashable
4917
+
4918
+ # One or more key value map keys and values.
4919
+ # Corresponds to the JSON property `keyValueEntries`
4920
+ # @return [Array<Google::Apis::ApigeeV1::GoogleCloudApigeeV1KeyValueEntry>]
4921
+ attr_accessor :key_value_entries
4922
+
4923
+ # Token that can be sent as `next_page_token` to retrieve the next page. If this
4924
+ # field is omitted, there are no subsequent pages.
4925
+ # Corresponds to the JSON property `nextPageToken`
4926
+ # @return [String]
4927
+ attr_accessor :next_page_token
4928
+
4929
+ def initialize(**args)
4930
+ update!(**args)
4931
+ end
4932
+
4933
+ # Update properties of this object
4934
+ def update!(**args)
4935
+ @key_value_entries = args[:key_value_entries] if args.key?(:key_value_entries)
4936
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
4937
+ end
4938
+ end
4939
+
4739
4940
  # Response for ListNatAddresses.
4740
4941
  class GoogleCloudApigeeV1ListNatAddressesResponse
4741
4942
  include Google::Apis::Core::Hashable
@@ -4826,6 +5027,88 @@ module Google
4826
5027
  end
4827
5028
  end
4828
5029
 
5030
+ # Response for ListSecurityProfileRevisions.
5031
+ class GoogleCloudApigeeV1ListSecurityProfileRevisionsResponse
5032
+ include Google::Apis::Core::Hashable
5033
+
5034
+ # A token that can be sent as `page_token` to retrieve the next page. If this
5035
+ # field is omitted, there are no subsequent pages.
5036
+ # Corresponds to the JSON property `nextPageToken`
5037
+ # @return [String]
5038
+ attr_accessor :next_page_token
5039
+
5040
+ # List of security profile revisions. The revisions may be attached or
5041
+ # unattached to any environment.
5042
+ # Corresponds to the JSON property `securityProfiles`
5043
+ # @return [Array<Google::Apis::ApigeeV1::GoogleCloudApigeeV1SecurityProfile>]
5044
+ attr_accessor :security_profiles
5045
+
5046
+ def initialize(**args)
5047
+ update!(**args)
5048
+ end
5049
+
5050
+ # Update properties of this object
5051
+ def update!(**args)
5052
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5053
+ @security_profiles = args[:security_profiles] if args.key?(:security_profiles)
5054
+ end
5055
+ end
5056
+
5057
+ # Response for ListSecurityProfiles.
5058
+ class GoogleCloudApigeeV1ListSecurityProfilesResponse
5059
+ include Google::Apis::Core::Hashable
5060
+
5061
+ # A token that can be sent as `page_token` to retrieve the next page. If this
5062
+ # field is omitted, there are no subsequent pages.
5063
+ # Corresponds to the JSON property `nextPageToken`
5064
+ # @return [String]
5065
+ attr_accessor :next_page_token
5066
+
5067
+ # List of security profiles in the organization. The profiles may be attached or
5068
+ # unattached to any environment. This will return latest revision of each
5069
+ # profile.
5070
+ # Corresponds to the JSON property `securityProfiles`
5071
+ # @return [Array<Google::Apis::ApigeeV1::GoogleCloudApigeeV1SecurityProfile>]
5072
+ attr_accessor :security_profiles
5073
+
5074
+ def initialize(**args)
5075
+ update!(**args)
5076
+ end
5077
+
5078
+ # Update properties of this object
5079
+ def update!(**args)
5080
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5081
+ @security_profiles = args[:security_profiles] if args.key?(:security_profiles)
5082
+ end
5083
+ end
5084
+
5085
+ # The response for SecurityReports.
5086
+ class GoogleCloudApigeeV1ListSecurityReportsResponse
5087
+ include Google::Apis::Core::Hashable
5088
+
5089
+ # If the number of security reports exceeded the page size requested, the token
5090
+ # can be used to fetch the next page in a subsequent call. If the response is
5091
+ # the last page and there are no more reports to return this field is left empty.
5092
+ # Corresponds to the JSON property `nextPageToken`
5093
+ # @return [String]
5094
+ attr_accessor :next_page_token
5095
+
5096
+ # The security reports belong to requested resource name.
5097
+ # Corresponds to the JSON property `securityReports`
5098
+ # @return [Array<Google::Apis::ApigeeV1::GoogleCloudApigeeV1SecurityReport>]
5099
+ attr_accessor :security_reports
5100
+
5101
+ def initialize(**args)
5102
+ update!(**args)
5103
+ end
5104
+
5105
+ # Update properties of this object
5106
+ def update!(**args)
5107
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5108
+ @security_reports = args[:security_reports] if args.key?(:security_reports)
5109
+ end
5110
+ end
5111
+
4829
5112
  # To change this message, in the same CL add a change log in go/changing-api-
4830
5113
  # proto-breaks-ui
4831
5114
  class GoogleCloudApigeeV1ListSharedFlowsResponse
@@ -6823,19 +7106,27 @@ module Google
6823
7106
  end
6824
7107
  end
6825
7108
 
6826
- #
6827
- class GoogleCloudApigeeV1ServiceIssuersMapping
7109
+ # Represents Security Score.
7110
+ class GoogleCloudApigeeV1Score
6828
7111
  include Google::Apis::Core::Hashable
6829
7112
 
6830
- # List of trusted issuer email ids.
6831
- # Corresponds to the JSON property `emailIds`
6832
- # @return [Array<String>]
6833
- attr_accessor :email_ids
7113
+ # Component is an individual security element that is scored.
7114
+ # Corresponds to the JSON property `component`
7115
+ # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ScoreComponent]
7116
+ attr_accessor :component
6834
7117
 
6835
- # String indicating the Apigee service name.
6836
- # Corresponds to the JSON property `service`
6837
- # @return [String]
6838
- attr_accessor :service
7118
+ # List of all the drilldown score components.
7119
+ # Corresponds to the JSON property `subcomponents`
7120
+ # @return [Array<Google::Apis::ApigeeV1::GoogleCloudApigeeV1ScoreComponent>]
7121
+ attr_accessor :subcomponents
7122
+
7123
+ # Represents a time interval, encoded as a Timestamp start (inclusive) and a
7124
+ # Timestamp end (exclusive). The start must be less than or equal to the end.
7125
+ # When the start equals the end, the interval is empty (matches no time). When
7126
+ # both start and end are unspecified, the interval matches any time.
7127
+ # Corresponds to the JSON property `timeRange`
7128
+ # @return [Google::Apis::ApigeeV1::GoogleTypeInterval]
7129
+ attr_accessor :time_range
6839
7130
 
6840
7131
  def initialize(**args)
6841
7132
  update!(**args)
@@ -6843,24 +7134,47 @@ module Google
6843
7134
 
6844
7135
  # Update properties of this object
6845
7136
  def update!(**args)
6846
- @email_ids = args[:email_ids] if args.key?(:email_ids)
6847
- @service = args[:service] if args.key?(:service)
7137
+ @component = args[:component] if args.key?(:component)
7138
+ @subcomponents = args[:subcomponents] if args.key?(:subcomponents)
7139
+ @time_range = args[:time_range] if args.key?(:time_range)
6848
7140
  end
6849
7141
  end
6850
7142
 
6851
- # Session carries the debug session id and its creation time.
6852
- class GoogleCloudApigeeV1Session
7143
+ # Component is an individual security element that is scored.
7144
+ class GoogleCloudApigeeV1ScoreComponent
6853
7145
  include Google::Apis::Core::Hashable
6854
7146
 
6855
- # The debug session ID.
6856
- # Corresponds to the JSON property `id`
7147
+ # Time when score was calculated.
7148
+ # Corresponds to the JSON property `calculateTime`
6857
7149
  # @return [String]
6858
- attr_accessor :id
7150
+ attr_accessor :calculate_time
6859
7151
 
6860
- # The first transaction creation timestamp in millisecond, recorded by UAP.
6861
- # Corresponds to the JSON property `timestampMs`
7152
+ # Time in the requested time period when data was last captured to compute the
7153
+ # score.
7154
+ # Corresponds to the JSON property `dataCaptureTime`
7155
+ # @return [String]
7156
+ attr_accessor :data_capture_time
7157
+
7158
+ # List of paths for next components.
7159
+ # Corresponds to the JSON property `drilldownPaths`
7160
+ # @return [Array<String>]
7161
+ attr_accessor :drilldown_paths
7162
+
7163
+ # List of recommendations to improve API security.
7164
+ # Corresponds to the JSON property `recommendations`
7165
+ # @return [Array<Google::Apis::ApigeeV1::GoogleCloudApigeeV1ScoreComponentRecommendation>]
7166
+ attr_accessor :recommendations
7167
+
7168
+ # Score for the component.
7169
+ # Corresponds to the JSON property `score`
6862
7170
  # @return [Fixnum]
6863
- attr_accessor :timestamp_ms
7171
+ attr_accessor :score
7172
+
7173
+ # Path of the component. Example: /org@myorg/envgroup@myenvgroup/proxies/proxy@
7174
+ # myproxy
7175
+ # Corresponds to the JSON property `scorePath`
7176
+ # @return [String]
7177
+ attr_accessor :score_path
6864
7178
 
6865
7179
  def initialize(**args)
6866
7180
  update!(**args)
@@ -6868,19 +7182,39 @@ module Google
6868
7182
 
6869
7183
  # Update properties of this object
6870
7184
  def update!(**args)
6871
- @id = args[:id] if args.key?(:id)
6872
- @timestamp_ms = args[:timestamp_ms] if args.key?(:timestamp_ms)
7185
+ @calculate_time = args[:calculate_time] if args.key?(:calculate_time)
7186
+ @data_capture_time = args[:data_capture_time] if args.key?(:data_capture_time)
7187
+ @drilldown_paths = args[:drilldown_paths] if args.key?(:drilldown_paths)
7188
+ @recommendations = args[:recommendations] if args.key?(:recommendations)
7189
+ @score = args[:score] if args.key?(:score)
7190
+ @score_path = args[:score_path] if args.key?(:score_path)
6873
7191
  end
6874
7192
  end
6875
7193
 
6876
- # Request for SetAddons.
6877
- class GoogleCloudApigeeV1SetAddonsRequest
7194
+ # Recommendation based on security concerns and score.
7195
+ class GoogleCloudApigeeV1ScoreComponentRecommendation
6878
7196
  include Google::Apis::Core::Hashable
6879
7197
 
6880
- # Add-on configurations for the Apigee organization.
6881
- # Corresponds to the JSON property `addonsConfig`
6882
- # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1AddonsConfig]
6883
- attr_accessor :addons_config
7198
+ # Actions for the recommendation to improve the security score.
7199
+ # Corresponds to the JSON property `actions`
7200
+ # @return [Array<Google::Apis::ApigeeV1::GoogleCloudApigeeV1ScoreComponentRecommendationAction>]
7201
+ attr_accessor :actions
7202
+
7203
+ # Description of the recommendation.
7204
+ # Corresponds to the JSON property `description`
7205
+ # @return [String]
7206
+ attr_accessor :description
7207
+
7208
+ # Potential impact of this recommendation on the overall score. This denotes how
7209
+ # important this recommendation is to improve the score.
7210
+ # Corresponds to the JSON property `impact`
7211
+ # @return [Fixnum]
7212
+ attr_accessor :impact
7213
+
7214
+ # Title represents recommendation title.
7215
+ # Corresponds to the JSON property `title`
7216
+ # @return [String]
7217
+ attr_accessor :title
6884
7218
 
6885
7219
  def initialize(**args)
6886
7220
  update!(**args)
@@ -6888,33 +7222,26 @@ module Google
6888
7222
 
6889
7223
  # Update properties of this object
6890
7224
  def update!(**args)
6891
- @addons_config = args[:addons_config] if args.key?(:addons_config)
7225
+ @actions = args[:actions] if args.key?(:actions)
7226
+ @description = args[:description] if args.key?(:description)
7227
+ @impact = args[:impact] if args.key?(:impact)
7228
+ @title = args[:title] if args.key?(:title)
6892
7229
  end
6893
7230
  end
6894
7231
 
6895
- # The metadata describing a shared flow
6896
- class GoogleCloudApigeeV1SharedFlow
7232
+ # Action to improve security score.
7233
+ class GoogleCloudApigeeV1ScoreComponentRecommendationAction
6897
7234
  include Google::Apis::Core::Hashable
6898
7235
 
6899
- # The id of the most recently created revision for this shared flow.
6900
- # Corresponds to the JSON property `latestRevisionId`
6901
- # @return [String]
6902
- attr_accessor :latest_revision_id
6903
-
6904
- # Metadata common to many entities in this API.
6905
- # Corresponds to the JSON property `metaData`
6906
- # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1EntityMetadata]
6907
- attr_accessor :meta_data
7236
+ # Action context are all the relevant details for the action.
7237
+ # Corresponds to the JSON property `actionContext`
7238
+ # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ScoreComponentRecommendationActionActionContext]
7239
+ attr_accessor :action_context
6908
7240
 
6909
- # The ID of the shared flow.
6910
- # Corresponds to the JSON property `name`
7241
+ # Description of the action.
7242
+ # Corresponds to the JSON property `description`
6911
7243
  # @return [String]
6912
- attr_accessor :name
6913
-
6914
- # A list of revisions of this shared flow.
6915
- # Corresponds to the JSON property `revision`
6916
- # @return [Array<String>]
6917
- attr_accessor :revision
7244
+ attr_accessor :description
6918
7245
 
6919
7246
  def initialize(**args)
6920
7247
  update!(**args)
@@ -6922,29 +7249,678 @@ module Google
6922
7249
 
6923
7250
  # Update properties of this object
6924
7251
  def update!(**args)
6925
- @latest_revision_id = args[:latest_revision_id] if args.key?(:latest_revision_id)
6926
- @meta_data = args[:meta_data] if args.key?(:meta_data)
6927
- @name = args[:name] if args.key?(:name)
6928
- @revision = args[:revision] if args.key?(:revision)
7252
+ @action_context = args[:action_context] if args.key?(:action_context)
7253
+ @description = args[:description] if args.key?(:description)
6929
7254
  end
6930
7255
  end
6931
7256
 
6932
- # The metadata describing a shared flow revision.
6933
- class GoogleCloudApigeeV1SharedFlowRevision
7257
+ # Action context are all the relevant details for the action.
7258
+ class GoogleCloudApigeeV1ScoreComponentRecommendationActionActionContext
6934
7259
  include Google::Apis::Core::Hashable
6935
7260
 
6936
- # Version of the API proxy configuration schema. Currently, only 4.0 is
6937
- # supported.
6938
- # Corresponds to the JSON property `configurationVersion`
6939
- # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ConfigVersion]
6940
- attr_accessor :configuration_version
6941
-
6942
- # A textual description of the shared flow revision.
6943
- # Corresponds to the JSON property `contextInfo`
7261
+ # Documentation link for the action.
7262
+ # Corresponds to the JSON property `documentationLink`
6944
7263
  # @return [String]
6945
- attr_accessor :context_info
7264
+ attr_accessor :documentation_link
6946
7265
 
6947
- # Time at which this shared flow revision was created, in milliseconds since
7266
+ def initialize(**args)
7267
+ update!(**args)
7268
+ end
7269
+
7270
+ # Update properties of this object
7271
+ def update!(**args)
7272
+ @documentation_link = args[:documentation_link] if args.key?(:documentation_link)
7273
+ end
7274
+ end
7275
+
7276
+ # Represents a SecurityProfile resource.
7277
+ class GoogleCloudApigeeV1SecurityProfile
7278
+ include Google::Apis::Core::Hashable
7279
+
7280
+ # Display name of the security profile.
7281
+ # Corresponds to the JSON property `displayName`
7282
+ # @return [String]
7283
+ attr_accessor :display_name
7284
+
7285
+ # List of environments attached to security profile.
7286
+ # Corresponds to the JSON property `environments`
7287
+ # @return [Array<Google::Apis::ApigeeV1::GoogleCloudApigeeV1SecurityProfileEnvironment>]
7288
+ attr_accessor :environments
7289
+
7290
+ # Output only. Maximum security score that can be generated by this profile.
7291
+ # Corresponds to the JSON property `maxScore`
7292
+ # @return [Fixnum]
7293
+ attr_accessor :max_score
7294
+
7295
+ # Output only. Minimum security score that can be generated by this profile.
7296
+ # Corresponds to the JSON property `minScore`
7297
+ # @return [Fixnum]
7298
+ attr_accessor :min_score
7299
+
7300
+ # Immutable. Name of the security profile resource. Format: organizations/`org`/
7301
+ # securityProfiles/`profile`
7302
+ # Corresponds to the JSON property `name`
7303
+ # @return [String]
7304
+ attr_accessor :name
7305
+
7306
+ # Output only. The time when revision was created.
7307
+ # Corresponds to the JSON property `revisionCreateTime`
7308
+ # @return [String]
7309
+ attr_accessor :revision_create_time
7310
+
7311
+ # Output only. Revision ID of the security profile.
7312
+ # Corresponds to the JSON property `revisionId`
7313
+ # @return [Fixnum]
7314
+ attr_accessor :revision_id
7315
+
7316
+ # Output only. The time when revision was published. Once published, the
7317
+ # security profile revision cannot be updated further and can be attached to
7318
+ # environments.
7319
+ # Corresponds to the JSON property `revisionPublishTime`
7320
+ # @return [String]
7321
+ attr_accessor :revision_publish_time
7322
+
7323
+ # Output only. The time when revision was updated.
7324
+ # Corresponds to the JSON property `revisionUpdateTime`
7325
+ # @return [String]
7326
+ attr_accessor :revision_update_time
7327
+
7328
+ # List of profile scoring configs in this revision.
7329
+ # Corresponds to the JSON property `scoringConfigs`
7330
+ # @return [Array<Google::Apis::ApigeeV1::GoogleCloudApigeeV1SecurityProfileScoringConfig>]
7331
+ attr_accessor :scoring_configs
7332
+
7333
+ def initialize(**args)
7334
+ update!(**args)
7335
+ end
7336
+
7337
+ # Update properties of this object
7338
+ def update!(**args)
7339
+ @display_name = args[:display_name] if args.key?(:display_name)
7340
+ @environments = args[:environments] if args.key?(:environments)
7341
+ @max_score = args[:max_score] if args.key?(:max_score)
7342
+ @min_score = args[:min_score] if args.key?(:min_score)
7343
+ @name = args[:name] if args.key?(:name)
7344
+ @revision_create_time = args[:revision_create_time] if args.key?(:revision_create_time)
7345
+ @revision_id = args[:revision_id] if args.key?(:revision_id)
7346
+ @revision_publish_time = args[:revision_publish_time] if args.key?(:revision_publish_time)
7347
+ @revision_update_time = args[:revision_update_time] if args.key?(:revision_update_time)
7348
+ @scoring_configs = args[:scoring_configs] if args.key?(:scoring_configs)
7349
+ end
7350
+ end
7351
+
7352
+ # Environment information of attached environments. Scoring an environment is
7353
+ # enabled only if it is attached to a security profile.
7354
+ class GoogleCloudApigeeV1SecurityProfileEnvironment
7355
+ include Google::Apis::Core::Hashable
7356
+
7357
+ # Output only. Time at which environment was attached to the security profile.
7358
+ # Corresponds to the JSON property `attachTime`
7359
+ # @return [String]
7360
+ attr_accessor :attach_time
7361
+
7362
+ # Output only. Name of the environment.
7363
+ # Corresponds to the JSON property `environment`
7364
+ # @return [String]
7365
+ attr_accessor :environment
7366
+
7367
+ def initialize(**args)
7368
+ update!(**args)
7369
+ end
7370
+
7371
+ # Update properties of this object
7372
+ def update!(**args)
7373
+ @attach_time = args[:attach_time] if args.key?(:attach_time)
7374
+ @environment = args[:environment] if args.key?(:environment)
7375
+ end
7376
+ end
7377
+
7378
+ # Represents a SecurityProfileEnvironmentAssociation resource.
7379
+ class GoogleCloudApigeeV1SecurityProfileEnvironmentAssociation
7380
+ include Google::Apis::Core::Hashable
7381
+
7382
+ # Output only. The time when environment was attached to the security profile.
7383
+ # Corresponds to the JSON property `attachTime`
7384
+ # @return [String]
7385
+ attr_accessor :attach_time
7386
+
7387
+ # Immutable. Name of the profile-environment association resource. Format:
7388
+ # organizations/`org`/securityProfiles/`profile`/environments/`env`
7389
+ # Corresponds to the JSON property `name`
7390
+ # @return [String]
7391
+ attr_accessor :name
7392
+
7393
+ # Revision ID of the security profile.
7394
+ # Corresponds to the JSON property `securityProfileRevisionId`
7395
+ # @return [Fixnum]
7396
+ attr_accessor :security_profile_revision_id
7397
+
7398
+ def initialize(**args)
7399
+ update!(**args)
7400
+ end
7401
+
7402
+ # Update properties of this object
7403
+ def update!(**args)
7404
+ @attach_time = args[:attach_time] if args.key?(:attach_time)
7405
+ @name = args[:name] if args.key?(:name)
7406
+ @security_profile_revision_id = args[:security_profile_revision_id] if args.key?(:security_profile_revision_id)
7407
+ end
7408
+ end
7409
+
7410
+ # Security configurations to manage scoring.
7411
+ class GoogleCloudApigeeV1SecurityProfileScoringConfig
7412
+ include Google::Apis::Core::Hashable
7413
+
7414
+ # Description of the config.
7415
+ # Corresponds to the JSON property `description`
7416
+ # @return [String]
7417
+ attr_accessor :description
7418
+
7419
+ # Path of the component config used for scoring.
7420
+ # Corresponds to the JSON property `scorePath`
7421
+ # @return [String]
7422
+ attr_accessor :score_path
7423
+
7424
+ # Title of the config.
7425
+ # Corresponds to the JSON property `title`
7426
+ # @return [String]
7427
+ attr_accessor :title
7428
+
7429
+ def initialize(**args)
7430
+ update!(**args)
7431
+ end
7432
+
7433
+ # Update properties of this object
7434
+ def update!(**args)
7435
+ @description = args[:description] if args.key?(:description)
7436
+ @score_path = args[:score_path] if args.key?(:score_path)
7437
+ @title = args[:title] if args.key?(:title)
7438
+ end
7439
+ end
7440
+
7441
+ # SecurityReport saves all the information about the created security report.
7442
+ class GoogleCloudApigeeV1SecurityReport
7443
+ include Google::Apis::Core::Hashable
7444
+
7445
+ # Creation time of the query.
7446
+ # Corresponds to the JSON property `created`
7447
+ # @return [String]
7448
+ attr_accessor :created
7449
+
7450
+ # Display Name specified by the user.
7451
+ # Corresponds to the JSON property `displayName`
7452
+ # @return [String]
7453
+ attr_accessor :display_name
7454
+
7455
+ # Hostname is available only when query is executed at host level.
7456
+ # Corresponds to the JSON property `envgroupHostname`
7457
+ # @return [String]
7458
+ attr_accessor :envgroup_hostname
7459
+
7460
+ # Error is set when query fails.
7461
+ # Corresponds to the JSON property `error`
7462
+ # @return [String]
7463
+ attr_accessor :error
7464
+
7465
+ # ExecutionTime is available only after the query is completed.
7466
+ # Corresponds to the JSON property `executionTime`
7467
+ # @return [String]
7468
+ attr_accessor :execution_time
7469
+
7470
+ # Metadata for the security report.
7471
+ # Corresponds to the JSON property `queryParams`
7472
+ # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1SecurityReportMetadata]
7473
+ attr_accessor :query_params
7474
+
7475
+ # Report Definition ID.
7476
+ # Corresponds to the JSON property `reportDefinitionId`
7477
+ # @return [String]
7478
+ attr_accessor :report_definition_id
7479
+
7480
+ # Contains informations about the security report results.
7481
+ # Corresponds to the JSON property `result`
7482
+ # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1SecurityReportResultMetadata]
7483
+ attr_accessor :result
7484
+
7485
+ # ResultFileSize is available only after the query is completed.
7486
+ # Corresponds to the JSON property `resultFileSize`
7487
+ # @return [String]
7488
+ attr_accessor :result_file_size
7489
+
7490
+ # ResultRows is available only after the query is completed.
7491
+ # Corresponds to the JSON property `resultRows`
7492
+ # @return [Fixnum]
7493
+ attr_accessor :result_rows
7494
+
7495
+ # Self link of the query. Example: `/organizations/myorg/environments/myenv/
7496
+ # securityReports/9cfc0d85-0f30-46d6-ae6f-318d0cb961bd` or following format if
7497
+ # query is running at host level: `/organizations/myorg/hostSecurityReports/
7498
+ # 9cfc0d85-0f30-46d6-ae6f-318d0cb961bd`
7499
+ # Corresponds to the JSON property `self`
7500
+ # @return [String]
7501
+ attr_accessor :self
7502
+
7503
+ # Query state could be "enqueued", "running", "completed", "failed".
7504
+ # Corresponds to the JSON property `state`
7505
+ # @return [String]
7506
+ attr_accessor :state
7507
+
7508
+ # Output only. Last updated timestamp for the query.
7509
+ # Corresponds to the JSON property `updated`
7510
+ # @return [String]
7511
+ attr_accessor :updated
7512
+
7513
+ def initialize(**args)
7514
+ update!(**args)
7515
+ end
7516
+
7517
+ # Update properties of this object
7518
+ def update!(**args)
7519
+ @created = args[:created] if args.key?(:created)
7520
+ @display_name = args[:display_name] if args.key?(:display_name)
7521
+ @envgroup_hostname = args[:envgroup_hostname] if args.key?(:envgroup_hostname)
7522
+ @error = args[:error] if args.key?(:error)
7523
+ @execution_time = args[:execution_time] if args.key?(:execution_time)
7524
+ @query_params = args[:query_params] if args.key?(:query_params)
7525
+ @report_definition_id = args[:report_definition_id] if args.key?(:report_definition_id)
7526
+ @result = args[:result] if args.key?(:result)
7527
+ @result_file_size = args[:result_file_size] if args.key?(:result_file_size)
7528
+ @result_rows = args[:result_rows] if args.key?(:result_rows)
7529
+ @self = args[:self] if args.key?(:self)
7530
+ @state = args[:state] if args.key?(:state)
7531
+ @updated = args[:updated] if args.key?(:updated)
7532
+ end
7533
+ end
7534
+
7535
+ # Metadata for the security report.
7536
+ class GoogleCloudApigeeV1SecurityReportMetadata
7537
+ include Google::Apis::Core::Hashable
7538
+
7539
+ # Dimensions of the SecurityReport.
7540
+ # Corresponds to the JSON property `dimensions`
7541
+ # @return [Array<String>]
7542
+ attr_accessor :dimensions
7543
+
7544
+ # End timestamp of the query range.
7545
+ # Corresponds to the JSON property `endTimestamp`
7546
+ # @return [String]
7547
+ attr_accessor :end_timestamp
7548
+
7549
+ # Metrics of the SecurityReport. Example: ["name:bot_count,func:sum,alias:
7550
+ # sum_bot_count"]
7551
+ # Corresponds to the JSON property `metrics`
7552
+ # @return [Array<String>]
7553
+ attr_accessor :metrics
7554
+
7555
+ # MIME type / Output format.
7556
+ # Corresponds to the JSON property `mimeType`
7557
+ # @return [String]
7558
+ attr_accessor :mime_type
7559
+
7560
+ # Start timestamp of the query range.
7561
+ # Corresponds to the JSON property `startTimestamp`
7562
+ # @return [String]
7563
+ attr_accessor :start_timestamp
7564
+
7565
+ # Query GroupBy time unit. Example: "seconds", "minute", "hour"
7566
+ # Corresponds to the JSON property `timeUnit`
7567
+ # @return [String]
7568
+ attr_accessor :time_unit
7569
+
7570
+ def initialize(**args)
7571
+ update!(**args)
7572
+ end
7573
+
7574
+ # Update properties of this object
7575
+ def update!(**args)
7576
+ @dimensions = args[:dimensions] if args.key?(:dimensions)
7577
+ @end_timestamp = args[:end_timestamp] if args.key?(:end_timestamp)
7578
+ @metrics = args[:metrics] if args.key?(:metrics)
7579
+ @mime_type = args[:mime_type] if args.key?(:mime_type)
7580
+ @start_timestamp = args[:start_timestamp] if args.key?(:start_timestamp)
7581
+ @time_unit = args[:time_unit] if args.key?(:time_unit)
7582
+ end
7583
+ end
7584
+
7585
+ # Body structure when user makes a request to create a security report.
7586
+ class GoogleCloudApigeeV1SecurityReportQuery
7587
+ include Google::Apis::Core::Hashable
7588
+
7589
+ # Delimiter used in the CSV file, if `outputFormat` is set to `csv`. Defaults to
7590
+ # the `,` (comma) character. Supported delimiter characters include comma (`,`),
7591
+ # pipe (`|`), and tab (`\t`).
7592
+ # Corresponds to the JSON property `csvDelimiter`
7593
+ # @return [String]
7594
+ attr_accessor :csv_delimiter
7595
+
7596
+ # A list of dimensions. https://docs.apigee.com/api-platform/analytics/analytics-
7597
+ # reference#dimensions
7598
+ # Corresponds to the JSON property `dimensions`
7599
+ # @return [Array<String>]
7600
+ attr_accessor :dimensions
7601
+
7602
+ # Security Report display name which users can specify.
7603
+ # Corresponds to the JSON property `displayName`
7604
+ # @return [String]
7605
+ attr_accessor :display_name
7606
+
7607
+ # Hostname needs to be specified if query intends to run at host level. This
7608
+ # field is only allowed when query is submitted by CreateHostSecurityReport
7609
+ # where analytics data will be grouped by organization and hostname.
7610
+ # Corresponds to the JSON property `envgroupHostname`
7611
+ # @return [String]
7612
+ attr_accessor :envgroup_hostname
7613
+
7614
+ # Boolean expression that can be used to filter data. Filter expressions can be
7615
+ # combined using AND/OR terms and should be fully parenthesized to avoid
7616
+ # ambiguity. See Analytics metrics, dimensions, and filters reference https://
7617
+ # docs.apigee.com/api-platform/analytics/analytics-reference for more
7618
+ # information on the fields available to filter on. For more information on the
7619
+ # tokens that you use to build filter expressions, see Filter expression syntax.
7620
+ # https://docs.apigee.com/api-platform/analytics/asynch-reports-api#filter-
7621
+ # expression-syntax
7622
+ # Corresponds to the JSON property `filter`
7623
+ # @return [String]
7624
+ attr_accessor :filter
7625
+
7626
+ # Time unit used to group the result set. Valid values include: second, minute,
7627
+ # hour, day, week, or month. If a query includes groupByTimeUnit, then the
7628
+ # result is an aggregation based on the specified time unit and the resultant
7629
+ # timestamp does not include milliseconds precision. If a query omits
7630
+ # groupByTimeUnit, then the resultant timestamp includes milliseconds precision.
7631
+ # Corresponds to the JSON property `groupByTimeUnit`
7632
+ # @return [String]
7633
+ attr_accessor :group_by_time_unit
7634
+
7635
+ # Maximum number of rows that can be returned in the result.
7636
+ # Corresponds to the JSON property `limit`
7637
+ # @return [Fixnum]
7638
+ attr_accessor :limit
7639
+
7640
+ # A list of Metrics.
7641
+ # Corresponds to the JSON property `metrics`
7642
+ # @return [Array<Google::Apis::ApigeeV1::GoogleCloudApigeeV1SecurityReportQueryMetric>]
7643
+ attr_accessor :metrics
7644
+
7645
+ # Valid values include: `csv` or `json`. Defaults to `json`. Note: Configure the
7646
+ # delimiter for CSV output using the csvDelimiter property.
7647
+ # Corresponds to the JSON property `mimeType`
7648
+ # @return [String]
7649
+ attr_accessor :mime_type
7650
+
7651
+ # Report Definition ID.
7652
+ # Corresponds to the JSON property `reportDefinitionId`
7653
+ # @return [String]
7654
+ attr_accessor :report_definition_id
7655
+
7656
+ # Required. Time range for the query. Can use the following predefined strings
7657
+ # to specify the time range: `last60minutes` `last24hours` `last7days` Or,
7658
+ # specify the timeRange as a structure describing start and end timestamps in
7659
+ # the ISO format: yyyy-mm-ddThh:mm:ssZ. Example: "timeRange": ` "start": "2018-
7660
+ # 07-29T00:13:00Z", "end": "2018-08-01T00:18:00Z" `
7661
+ # Corresponds to the JSON property `timeRange`
7662
+ # @return [Object]
7663
+ attr_accessor :time_range
7664
+
7665
+ def initialize(**args)
7666
+ update!(**args)
7667
+ end
7668
+
7669
+ # Update properties of this object
7670
+ def update!(**args)
7671
+ @csv_delimiter = args[:csv_delimiter] if args.key?(:csv_delimiter)
7672
+ @dimensions = args[:dimensions] if args.key?(:dimensions)
7673
+ @display_name = args[:display_name] if args.key?(:display_name)
7674
+ @envgroup_hostname = args[:envgroup_hostname] if args.key?(:envgroup_hostname)
7675
+ @filter = args[:filter] if args.key?(:filter)
7676
+ @group_by_time_unit = args[:group_by_time_unit] if args.key?(:group_by_time_unit)
7677
+ @limit = args[:limit] if args.key?(:limit)
7678
+ @metrics = args[:metrics] if args.key?(:metrics)
7679
+ @mime_type = args[:mime_type] if args.key?(:mime_type)
7680
+ @report_definition_id = args[:report_definition_id] if args.key?(:report_definition_id)
7681
+ @time_range = args[:time_range] if args.key?(:time_range)
7682
+ end
7683
+ end
7684
+
7685
+ # Metric of the Query
7686
+ class GoogleCloudApigeeV1SecurityReportQueryMetric
7687
+ include Google::Apis::Core::Hashable
7688
+
7689
+ # Aggregation function: avg, min, max, or sum.
7690
+ # Corresponds to the JSON property `aggregationFunction`
7691
+ # @return [String]
7692
+ attr_accessor :aggregation_function
7693
+
7694
+ # Alias for the metric. Alias will be used to replace metric name in query
7695
+ # results.
7696
+ # Corresponds to the JSON property `alias`
7697
+ # @return [String]
7698
+ attr_accessor :alias
7699
+
7700
+ # Required. Metric name.
7701
+ # Corresponds to the JSON property `name`
7702
+ # @return [String]
7703
+ attr_accessor :name
7704
+
7705
+ # One of `+`, `-`, `/`, `%`, `*`.
7706
+ # Corresponds to the JSON property `operator`
7707
+ # @return [String]
7708
+ attr_accessor :operator
7709
+
7710
+ # Operand value should be provided when operator is set.
7711
+ # Corresponds to the JSON property `value`
7712
+ # @return [String]
7713
+ attr_accessor :value
7714
+
7715
+ def initialize(**args)
7716
+ update!(**args)
7717
+ end
7718
+
7719
+ # Update properties of this object
7720
+ def update!(**args)
7721
+ @aggregation_function = args[:aggregation_function] if args.key?(:aggregation_function)
7722
+ @alias = args[:alias] if args.key?(:alias)
7723
+ @name = args[:name] if args.key?(:name)
7724
+ @operator = args[:operator] if args.key?(:operator)
7725
+ @value = args[:value] if args.key?(:value)
7726
+ end
7727
+ end
7728
+
7729
+ # Contains informations about the security report results.
7730
+ class GoogleCloudApigeeV1SecurityReportResultMetadata
7731
+ include Google::Apis::Core::Hashable
7732
+
7733
+ # Output only. Expire_time is set to 7 days after report creation. Query result
7734
+ # will be unaccessable after this time. Example: "2021-05-04T13:38:52-07:00"
7735
+ # Corresponds to the JSON property `expires`
7736
+ # @return [String]
7737
+ attr_accessor :expires
7738
+
7739
+ # Self link of the query results. Example: `/organizations/myorg/environments/
7740
+ # myenv/securityReports/9cfc0d85-0f30-46d6-ae6f-318d0cb961bd/result` or
7741
+ # following format if query is running at host level: `/organizations/myorg/
7742
+ # hostSecurityReports/9cfc0d85-0f30-46d6-ae6f-318d0cb961bd/result`
7743
+ # Corresponds to the JSON property `self`
7744
+ # @return [String]
7745
+ attr_accessor :self
7746
+
7747
+ def initialize(**args)
7748
+ update!(**args)
7749
+ end
7750
+
7751
+ # Update properties of this object
7752
+ def update!(**args)
7753
+ @expires = args[:expires] if args.key?(:expires)
7754
+ @self = args[:self] if args.key?(:self)
7755
+ end
7756
+ end
7757
+
7758
+ # The response for security report result view APIs.
7759
+ class GoogleCloudApigeeV1SecurityReportResultView
7760
+ include Google::Apis::Core::Hashable
7761
+
7762
+ # Error code when there is a failure.
7763
+ # Corresponds to the JSON property `code`
7764
+ # @return [Fixnum]
7765
+ attr_accessor :code
7766
+
7767
+ # Error message when there is a failure.
7768
+ # Corresponds to the JSON property `error`
7769
+ # @return [String]
7770
+ attr_accessor :error
7771
+
7772
+ # Metadata for the security report.
7773
+ # Corresponds to the JSON property `metadata`
7774
+ # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1SecurityReportMetadata]
7775
+ attr_accessor :metadata
7776
+
7777
+ # Rows of security report result. Each row is a JSON object. Example: `sum(
7778
+ # message_count): 1, developer_app: "(not set)",…`
7779
+ # Corresponds to the JSON property `rows`
7780
+ # @return [Array<Object>]
7781
+ attr_accessor :rows
7782
+
7783
+ # State of retrieving ResultView.
7784
+ # Corresponds to the JSON property `state`
7785
+ # @return [String]
7786
+ attr_accessor :state
7787
+
7788
+ def initialize(**args)
7789
+ update!(**args)
7790
+ end
7791
+
7792
+ # Update properties of this object
7793
+ def update!(**args)
7794
+ @code = args[:code] if args.key?(:code)
7795
+ @error = args[:error] if args.key?(:error)
7796
+ @metadata = args[:metadata] if args.key?(:metadata)
7797
+ @rows = args[:rows] if args.key?(:rows)
7798
+ @state = args[:state] if args.key?(:state)
7799
+ end
7800
+ end
7801
+
7802
+ #
7803
+ class GoogleCloudApigeeV1ServiceIssuersMapping
7804
+ include Google::Apis::Core::Hashable
7805
+
7806
+ # List of trusted issuer email ids.
7807
+ # Corresponds to the JSON property `emailIds`
7808
+ # @return [Array<String>]
7809
+ attr_accessor :email_ids
7810
+
7811
+ # String indicating the Apigee service name.
7812
+ # Corresponds to the JSON property `service`
7813
+ # @return [String]
7814
+ attr_accessor :service
7815
+
7816
+ def initialize(**args)
7817
+ update!(**args)
7818
+ end
7819
+
7820
+ # Update properties of this object
7821
+ def update!(**args)
7822
+ @email_ids = args[:email_ids] if args.key?(:email_ids)
7823
+ @service = args[:service] if args.key?(:service)
7824
+ end
7825
+ end
7826
+
7827
+ # Session carries the debug session id and its creation time.
7828
+ class GoogleCloudApigeeV1Session
7829
+ include Google::Apis::Core::Hashable
7830
+
7831
+ # The debug session ID.
7832
+ # Corresponds to the JSON property `id`
7833
+ # @return [String]
7834
+ attr_accessor :id
7835
+
7836
+ # The first transaction creation timestamp in millisecond, recorded by UAP.
7837
+ # Corresponds to the JSON property `timestampMs`
7838
+ # @return [Fixnum]
7839
+ attr_accessor :timestamp_ms
7840
+
7841
+ def initialize(**args)
7842
+ update!(**args)
7843
+ end
7844
+
7845
+ # Update properties of this object
7846
+ def update!(**args)
7847
+ @id = args[:id] if args.key?(:id)
7848
+ @timestamp_ms = args[:timestamp_ms] if args.key?(:timestamp_ms)
7849
+ end
7850
+ end
7851
+
7852
+ # Request for SetAddons.
7853
+ class GoogleCloudApigeeV1SetAddonsRequest
7854
+ include Google::Apis::Core::Hashable
7855
+
7856
+ # Add-on configurations for the Apigee organization.
7857
+ # Corresponds to the JSON property `addonsConfig`
7858
+ # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1AddonsConfig]
7859
+ attr_accessor :addons_config
7860
+
7861
+ def initialize(**args)
7862
+ update!(**args)
7863
+ end
7864
+
7865
+ # Update properties of this object
7866
+ def update!(**args)
7867
+ @addons_config = args[:addons_config] if args.key?(:addons_config)
7868
+ end
7869
+ end
7870
+
7871
+ # The metadata describing a shared flow
7872
+ class GoogleCloudApigeeV1SharedFlow
7873
+ include Google::Apis::Core::Hashable
7874
+
7875
+ # The id of the most recently created revision for this shared flow.
7876
+ # Corresponds to the JSON property `latestRevisionId`
7877
+ # @return [String]
7878
+ attr_accessor :latest_revision_id
7879
+
7880
+ # Metadata common to many entities in this API.
7881
+ # Corresponds to the JSON property `metaData`
7882
+ # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1EntityMetadata]
7883
+ attr_accessor :meta_data
7884
+
7885
+ # The ID of the shared flow.
7886
+ # Corresponds to the JSON property `name`
7887
+ # @return [String]
7888
+ attr_accessor :name
7889
+
7890
+ # A list of revisions of this shared flow.
7891
+ # Corresponds to the JSON property `revision`
7892
+ # @return [Array<String>]
7893
+ attr_accessor :revision
7894
+
7895
+ def initialize(**args)
7896
+ update!(**args)
7897
+ end
7898
+
7899
+ # Update properties of this object
7900
+ def update!(**args)
7901
+ @latest_revision_id = args[:latest_revision_id] if args.key?(:latest_revision_id)
7902
+ @meta_data = args[:meta_data] if args.key?(:meta_data)
7903
+ @name = args[:name] if args.key?(:name)
7904
+ @revision = args[:revision] if args.key?(:revision)
7905
+ end
7906
+ end
7907
+
7908
+ # The metadata describing a shared flow revision.
7909
+ class GoogleCloudApigeeV1SharedFlowRevision
7910
+ include Google::Apis::Core::Hashable
7911
+
7912
+ # Version of the API proxy configuration schema. Currently, only 4.0 is
7913
+ # supported.
7914
+ # Corresponds to the JSON property `configurationVersion`
7915
+ # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ConfigVersion]
7916
+ attr_accessor :configuration_version
7917
+
7918
+ # A textual description of the shared flow revision.
7919
+ # Corresponds to the JSON property `contextInfo`
7920
+ # @return [String]
7921
+ attr_accessor :context_info
7922
+
7923
+ # Time at which this shared flow revision was created, in milliseconds since
6948
7924
  # epoch.
6949
7925
  # Corresponds to the JSON property `createdAt`
6950
7926
  # @return [Fixnum]
@@ -8249,6 +9225,36 @@ module Google
8249
9225
  end
8250
9226
  end
8251
9227
 
9228
+ # Represents a time interval, encoded as a Timestamp start (inclusive) and a
9229
+ # Timestamp end (exclusive). The start must be less than or equal to the end.
9230
+ # When the start equals the end, the interval is empty (matches no time). When
9231
+ # both start and end are unspecified, the interval matches any time.
9232
+ class GoogleTypeInterval
9233
+ include Google::Apis::Core::Hashable
9234
+
9235
+ # Optional. Exclusive end of the interval. If specified, a Timestamp matching
9236
+ # this interval will have to be before the end.
9237
+ # Corresponds to the JSON property `endTime`
9238
+ # @return [String]
9239
+ attr_accessor :end_time
9240
+
9241
+ # Optional. Inclusive start of the interval. If specified, a Timestamp matching
9242
+ # this interval will have to be the same or after the start.
9243
+ # Corresponds to the JSON property `startTime`
9244
+ # @return [String]
9245
+ attr_accessor :start_time
9246
+
9247
+ def initialize(**args)
9248
+ update!(**args)
9249
+ end
9250
+
9251
+ # Update properties of this object
9252
+ def update!(**args)
9253
+ @end_time = args[:end_time] if args.key?(:end_time)
9254
+ @start_time = args[:start_time] if args.key?(:start_time)
9255
+ end
9256
+ end
9257
+
8252
9258
  # Represents an amount of money with its currency type.
8253
9259
  class GoogleTypeMoney
8254
9260
  include Google::Apis::Core::Hashable