aws-sdk-personalizeevents 1.27.0 → 1.29.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ddd8321179a4159db7043f8e594b44ed5da37218bcafe04bb11c651504f7d801
4
- data.tar.gz: 3a5d88649019a77557f6075ad6f9de80531280f4db6479fce9a9080de60d08ac
3
+ metadata.gz: 8735f0d987228ae5e853e3729d7266a48d19360ac596c036ddb56920ad3955a5
4
+ data.tar.gz: 2cd912a21f0971aef32ef62b8f3d989fdb57d447b9553b41fb6f1933284fff80
5
5
  SHA512:
6
- metadata.gz: f03b79092a84bd253d7492b2cb72f9e1b3df4581e71dafe3f04c9df98ae36e57d58197ffea28c6ead21d2162f7bb1becce6315bf11e1df0faf7a560985ecaf88
7
- data.tar.gz: 8f982bbcd73d0f073c37bb0b511413601c4a42f3626d28f4ec1ae0246ff610f72a7b89447fff5aafa9dcf4e688506833e9ce794ea2b99527b310d048142211d9
6
+ metadata.gz: 5811a90d12f8ec89032627cf3620add3eb82fc6020aae1714f897028af0352c2e18a1c2227acdc74a4b60999e1b1be1d2f6c0c4cbc55e58328b78ae2cece70f4
7
+ data.tar.gz: 20a2bf8275b3e148c02bb9b310ac8068f858f26eec83e4f1064e83dc1c819db5995631d711a45533314fb6221e10935e319bb7c086a27284372df596a84011b2
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.29.0 (2022-11-16)
5
+ ------------------
6
+
7
+ * Feature - This release provides support for creation and use of metric attributions in AWS Personalize
8
+
9
+ 1.28.0 (2022-10-25)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.27.0 (2022-02-24)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.27.0
1
+ 1.29.0
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
30
30
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
- require 'aws-sdk-core/plugins/signature_v4.rb'
33
+ require 'aws-sdk-core/plugins/sign.rb'
34
34
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
35
35
 
36
36
  Aws::Plugins::GlobalConfiguration.add_identifier(:personalizeevents)
@@ -79,8 +79,9 @@ module Aws::PersonalizeEvents
79
79
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
81
  add_plugin(Aws::Plugins::RecursionDetection)
82
- add_plugin(Aws::Plugins::SignatureV4)
82
+ add_plugin(Aws::Plugins::Sign)
83
83
  add_plugin(Aws::Plugins::Protocols::RestJson)
84
+ add_plugin(Aws::PersonalizeEvents::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -287,6 +288,19 @@ module Aws::PersonalizeEvents
287
288
  # ** Please note ** When response stubbing is enabled, no HTTP
288
289
  # requests are made, and retries are disabled.
289
290
  #
291
+ # @option options [Aws::TokenProvider] :token_provider
292
+ # A Bearer Token Provider. This can be an instance of any one of the
293
+ # following classes:
294
+ #
295
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
296
+ # tokens.
297
+ #
298
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
299
+ # access token generated from `aws login`.
300
+ #
301
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
302
+ # will be used to search for tokens configured for your profile in shared configuration files.
303
+ #
290
304
  # @option options [Boolean] :use_dualstack_endpoint
291
305
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
292
306
  # will be used if available.
@@ -300,6 +314,9 @@ module Aws::PersonalizeEvents
300
314
  # When `true`, request parameters are validated before
301
315
  # sending the request.
302
316
  #
317
+ # @option options [Aws::PersonalizeEvents::EndpointProvider] :endpoint_provider
318
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::PersonalizeEvents::EndpointParameters`
319
+ #
303
320
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
304
321
  # requests through. Formatted like 'http://proxy.com:123'.
305
322
  #
@@ -401,6 +418,9 @@ module Aws::PersonalizeEvents
401
418
  # sent_at: Time.now, # required
402
419
  # recommendation_id: "RecommendationId",
403
420
  # impression: ["ItemId"],
421
+ # metric_attribution: {
422
+ # event_attribution_source: "EventAttributionSource", # required
423
+ # },
404
424
  # },
405
425
  # ],
406
426
  # })
@@ -501,7 +521,7 @@ module Aws::PersonalizeEvents
501
521
  params: params,
502
522
  config: config)
503
523
  context[:gem_name] = 'aws-sdk-personalizeevents'
504
- context[:gem_version] = '1.27.0'
524
+ context[:gem_version] = '1.29.0'
505
525
  Seahorse::Client::Request.new(handlers, context)
506
526
  end
507
527
 
@@ -17,6 +17,7 @@ module Aws::PersonalizeEvents
17
17
  Date = Shapes::TimestampShape.new(name: 'Date')
18
18
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
19
19
  Event = Shapes::StructureShape.new(name: 'Event')
20
+ EventAttributionSource = Shapes::StringShape.new(name: 'EventAttributionSource')
20
21
  EventList = Shapes::ListShape.new(name: 'EventList')
21
22
  EventPropertiesJSON = Shapes::StringShape.new(name: 'EventPropertiesJSON')
22
23
  FloatType = Shapes::FloatShape.new(name: 'FloatType')
@@ -26,6 +27,7 @@ module Aws::PersonalizeEvents
26
27
  ItemId = Shapes::StringShape.new(name: 'ItemId')
27
28
  ItemList = Shapes::ListShape.new(name: 'ItemList')
28
29
  ItemProperties = Shapes::StringShape.new(name: 'ItemProperties')
30
+ MetricAttribution = Shapes::StructureShape.new(name: 'MetricAttribution')
29
31
  PutEventsRequest = Shapes::StructureShape.new(name: 'PutEventsRequest')
30
32
  PutItemsRequest = Shapes::StructureShape.new(name: 'PutItemsRequest')
31
33
  PutUsersRequest = Shapes::StructureShape.new(name: 'PutUsersRequest')
@@ -46,6 +48,7 @@ module Aws::PersonalizeEvents
46
48
  Event.add_member(:sent_at, Shapes::ShapeRef.new(shape: Date, required: true, location_name: "sentAt"))
47
49
  Event.add_member(:recommendation_id, Shapes::ShapeRef.new(shape: RecommendationId, location_name: "recommendationId"))
48
50
  Event.add_member(:impression, Shapes::ShapeRef.new(shape: Impression, location_name: "impression"))
51
+ Event.add_member(:metric_attribution, Shapes::ShapeRef.new(shape: MetricAttribution, location_name: "metricAttribution"))
49
52
  Event.struct_class = Types::Event
50
53
 
51
54
  EventList.member = Shapes::ShapeRef.new(shape: Event)
@@ -61,6 +64,9 @@ module Aws::PersonalizeEvents
61
64
 
62
65
  ItemList.member = Shapes::ShapeRef.new(shape: Item)
63
66
 
67
+ MetricAttribution.add_member(:event_attribution_source, Shapes::ShapeRef.new(shape: EventAttributionSource, required: true, location_name: "eventAttributionSource"))
68
+ MetricAttribution.struct_class = Types::MetricAttribution
69
+
64
70
  PutEventsRequest.add_member(:tracking_id, Shapes::ShapeRef.new(shape: StringType, required: true, location_name: "trackingId"))
65
71
  PutEventsRequest.add_member(:user_id, Shapes::ShapeRef.new(shape: UserId, location_name: "userId"))
66
72
  PutEventsRequest.add_member(:session_id, Shapes::ShapeRef.new(shape: StringType, required: true, location_name: "sessionId"))
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::PersonalizeEvents
11
+ # Endpoint parameters used to influence endpoints per request.
12
+ #
13
+ # @!attribute region
14
+ # The AWS region used to dispatch the request.
15
+ #
16
+ # @return [String]
17
+ #
18
+ # @!attribute use_dual_stack
19
+ # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
+ #
21
+ # @return [Boolean]
22
+ #
23
+ # @!attribute use_fips
24
+ # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
+ #
26
+ # @return [Boolean]
27
+ #
28
+ # @!attribute endpoint
29
+ # Override the endpoint used to send this request
30
+ #
31
+ # @return [String]
32
+ #
33
+ EndpointParameters = Struct.new(
34
+ :region,
35
+ :use_dual_stack,
36
+ :use_fips,
37
+ :endpoint,
38
+ ) do
39
+ include Aws::Structure
40
+
41
+ # @api private
42
+ class << self
43
+ PARAM_MAP = {
44
+ 'Region' => :region,
45
+ 'UseDualStack' => :use_dual_stack,
46
+ 'UseFIPS' => :use_fips,
47
+ 'Endpoint' => :endpoint,
48
+ }.freeze
49
+ end
50
+
51
+ def initialize(options = {})
52
+ self[:region] = options[:region]
53
+ self[:use_dual_stack] = options[:use_dual_stack]
54
+ self[:use_dual_stack] = false if self[:use_dual_stack].nil?
55
+ if self[:use_dual_stack].nil?
56
+ raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
57
+ end
58
+ self[:use_fips] = options[:use_fips]
59
+ self[:use_fips] = false if self[:use_fips].nil?
60
+ if self[:use_fips].nil?
61
+ raise ArgumentError, "Missing required EndpointParameter: :use_fips"
62
+ end
63
+ self[:endpoint] = options[:endpoint]
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,111 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::PersonalizeEvents
11
+ class EndpointProvider
12
+ def initialize(rule_set = nil)
13
+ @@rule_set ||= begin
14
+ endpoint_rules = Aws::Json.load(Base64.decode64(RULES))
15
+ Aws::Endpoints::RuleSet.new(
16
+ version: endpoint_rules['version'],
17
+ service_id: endpoint_rules['serviceId'],
18
+ parameters: endpoint_rules['parameters'],
19
+ rules: endpoint_rules['rules']
20
+ )
21
+ end
22
+ @provider = Aws::Endpoints::RulesProvider.new(rule_set || @@rule_set)
23
+ end
24
+
25
+ def resolve_endpoint(parameters)
26
+ @provider.resolve_endpoint(parameters)
27
+ end
28
+
29
+ # @api private
30
+ RULES = <<-JSON
31
+ eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
32
+ bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1bWVu
33
+ dGF0aW9uIjoiVGhlIEFXUyByZWdpb24gdXNlZCB0byBkaXNwYXRjaCB0aGUg
34
+ cmVxdWVzdC4iLCJ0eXBlIjoiU3RyaW5nIn0sIlVzZUR1YWxTdGFjayI6eyJi
35
+ dWlsdEluIjoiQVdTOjpVc2VEdWFsU3RhY2siLCJyZXF1aXJlZCI6dHJ1ZSwi
36
+ ZGVmYXVsdCI6ZmFsc2UsImRvY3VtZW50YXRpb24iOiJXaGVuIHRydWUsIHVz
37
+ ZSB0aGUgZHVhbC1zdGFjayBlbmRwb2ludC4gSWYgdGhlIGNvbmZpZ3VyZWQg
38
+ ZW5kcG9pbnQgZG9lcyBub3Qgc3VwcG9ydCBkdWFsLXN0YWNrLCBkaXNwYXRj
39
+ aGluZyB0aGUgcmVxdWVzdCBNQVkgcmV0dXJuIGFuIGVycm9yLiIsInR5cGUi
40
+ OiJCb29sZWFuIn0sIlVzZUZJUFMiOnsiYnVpbHRJbiI6IkFXUzo6VXNlRklQ
41
+ UyIsInJlcXVpcmVkIjp0cnVlLCJkZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRh
42
+ dGlvbiI6IldoZW4gdHJ1ZSwgc2VuZCB0aGlzIHJlcXVlc3QgdG8gdGhlIEZJ
43
+ UFMtY29tcGxpYW50IHJlZ2lvbmFsIGVuZHBvaW50LiBJZiB0aGUgY29uZmln
44
+ dXJlZCBlbmRwb2ludCBkb2VzIG5vdCBoYXZlIGEgRklQUyBjb21wbGlhbnQg
45
+ ZW5kcG9pbnQsIGRpc3BhdGNoaW5nIHRoZSByZXF1ZXN0IHdpbGwgcmV0dXJu
46
+ IGFuIGVycm9yLiIsInR5cGUiOiJCb29sZWFuIn0sIkVuZHBvaW50Ijp7ImJ1
47
+ aWx0SW4iOiJTREs6OkVuZHBvaW50IiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1
48
+ bWVudGF0aW9uIjoiT3ZlcnJpZGUgdGhlIGVuZHBvaW50IHVzZWQgdG8gc2Vu
49
+ ZCB0aGlzIHJlcXVlc3QiLCJ0eXBlIjoiU3RyaW5nIn19LCJydWxlcyI6W3si
50
+ Y29uZGl0aW9ucyI6W3siZm4iOiJhd3MucGFydGl0aW9uIiwiYXJndiI6W3si
51
+ cmVmIjoiUmVnaW9uIn1dLCJhc3NpZ24iOiJQYXJ0aXRpb25SZXN1bHQifV0s
52
+ InR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoi
53
+ aXNTZXQiLCJhcmd2IjpbeyJyZWYiOiJFbmRwb2ludCJ9XX0seyJmbiI6InBh
54
+ cnNlVVJMIiwiYXJndiI6W3sicmVmIjoiRW5kcG9pbnQifV0sImFzc2lnbiI6
55
+ InVybCJ9XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
56
+ W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQ
57
+ UyJ9LHRydWVdfV0sImVycm9yIjoiSW52YWxpZCBDb25maWd1cmF0aW9uOiBG
58
+ SVBTIGFuZCBjdXN0b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0
59
+ eXBlIjoiZXJyb3IifSx7ImNvbmRpdGlvbnMiOltdLCJ0eXBlIjoidHJlZSIs
60
+ InJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMi
61
+ LCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJlcnJv
62
+ ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRHVhbHN0YWNrIGFuZCBjdXN0
63
+ b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0eXBlIjoiZXJyb3Ii
64
+ fSx7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOnsicmVmIjoi
65
+ RW5kcG9pbnQifSwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlw
66
+ ZSI6ImVuZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJib29s
67
+ ZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQUyJ9LHRydWVdfSx7
68
+ ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxT
69
+ dGFjayJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
70
+ dGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsi
71
+ Zm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0
72
+ In0sInN1cHBvcnRzRklQUyJdfV19LHsiZm4iOiJib29sZWFuRXF1YWxzIiwi
73
+ YXJndiI6W3RydWUseyJmbiI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQ
74
+ YXJ0aXRpb25SZXN1bHQifSwic3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5
75
+ cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2lu
76
+ dCI6eyJ1cmwiOiJodHRwczovL3BlcnNvbmFsaXplLWV2ZW50cy1maXBzLntS
77
+ ZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZHVhbFN0YWNrRG5zU3VmZml4fSIs
78
+ InByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2lu
79
+ dCJ9XX0seyJjb25kaXRpb25zIjpbXSwiZXJyb3IiOiJGSVBTIGFuZCBEdWFs
80
+ U3RhY2sgYXJlIGVuYWJsZWQsIGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5v
81
+ dCBzdXBwb3J0IG9uZSBvciBib3RoIiwidHlwZSI6ImVycm9yIn1dfSx7ImNv
82
+ bmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJl
83
+ ZiI6IlVzZUZJUFMifSx0cnVlXX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpb
84
+ eyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2Ijpb
85
+ dHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFyZ3YiOlt7InJlZiI6IlBhcnRpdGlv
86
+ blJlc3VsdCJ9LCJzdXBwb3J0c0ZJUFMiXX1dfV0sInR5cGUiOiJ0cmVlIiwi
87
+ cnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOiJo
88
+ dHRwczovL3BlcnNvbmFsaXplLWV2ZW50cy1maXBzLntSZWdpb259LntQYXJ0
89
+ aXRpb25SZXN1bHQjZG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFk
90
+ ZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX0seyJjb25kaXRpb25zIjpb
91
+ XSwiZXJyb3IiOiJGSVBTIGlzIGVuYWJsZWQgYnV0IHRoaXMgcGFydGl0aW9u
92
+ IGRvZXMgbm90IHN1cHBvcnQgRklQUyIsInR5cGUiOiJlcnJvciJ9XX0seyJj
93
+ b25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbeyJy
94
+ ZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJ0eXBlIjoidHJlZSIsInJ1
95
+ bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJh
96
+ cmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFyZ3YiOlt7InJlZiI6IlBh
97
+ cnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0R1YWxTdGFjayJdfV19XSwidHlw
98
+ ZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6W10sImVuZHBvaW50
99
+ Ijp7InVybCI6Imh0dHBzOi8vcGVyc29uYWxpemUtZXZlbnRzLntSZWdpb259
100
+ LntQYXJ0aXRpb25SZXN1bHQjZHVhbFN0YWNrRG5zU3VmZml4fSIsInByb3Bl
101
+ cnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX0s
102
+ eyJjb25kaXRpb25zIjpbXSwiZXJyb3IiOiJEdWFsU3RhY2sgaXMgZW5hYmxl
103
+ ZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBEdWFsU3Rh
104
+ Y2siLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6W10sImVuZHBv
105
+ aW50Ijp7InVybCI6Imh0dHBzOi8vcGVyc29uYWxpemUtZXZlbnRzLntSZWdp
106
+ b259LntQYXJ0aXRpb25SZXN1bHQjZG5zU3VmZml4fSIsInByb3BlcnRpZXMi
107
+ Ont9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX1dfQ==
108
+
109
+ JSON
110
+ end
111
+ end
@@ -0,0 +1,57 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+
11
+ module Aws::PersonalizeEvents
12
+ module Endpoints
13
+
14
+ class PutEvents
15
+ def self.build(context)
16
+ unless context.config.regional_endpoint
17
+ endpoint = context.config.endpoint.to_s
18
+ end
19
+ Aws::PersonalizeEvents::EndpointParameters.new(
20
+ region: context.config.region,
21
+ use_dual_stack: context.config.use_dualstack_endpoint,
22
+ use_fips: context.config.use_fips_endpoint,
23
+ endpoint: endpoint,
24
+ )
25
+ end
26
+ end
27
+
28
+ class PutItems
29
+ def self.build(context)
30
+ unless context.config.regional_endpoint
31
+ endpoint = context.config.endpoint.to_s
32
+ end
33
+ Aws::PersonalizeEvents::EndpointParameters.new(
34
+ region: context.config.region,
35
+ use_dual_stack: context.config.use_dualstack_endpoint,
36
+ use_fips: context.config.use_fips_endpoint,
37
+ endpoint: endpoint,
38
+ )
39
+ end
40
+ end
41
+
42
+ class PutUsers
43
+ def self.build(context)
44
+ unless context.config.regional_endpoint
45
+ endpoint = context.config.endpoint.to_s
46
+ end
47
+ Aws::PersonalizeEvents::EndpointParameters.new(
48
+ region: context.config.region,
49
+ use_dual_stack: context.config.use_dualstack_endpoint,
50
+ use_fips: context.config.use_fips_endpoint,
51
+ endpoint: endpoint,
52
+ )
53
+ end
54
+ end
55
+
56
+ end
57
+ end
@@ -0,0 +1,74 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+
11
+ module Aws::PersonalizeEvents
12
+ module Plugins
13
+ class Endpoints < Seahorse::Client::Plugin
14
+ option(
15
+ :endpoint_provider,
16
+ doc_type: 'Aws::PersonalizeEvents::EndpointProvider',
17
+ docstring: 'The endpoint provider used to resolve endpoints. Any '\
18
+ 'object that responds to `#resolve_endpoint(parameters)` '\
19
+ 'where `parameters` is a Struct similar to '\
20
+ '`Aws::PersonalizeEvents::EndpointParameters`'
21
+ ) do |cfg|
22
+ Aws::PersonalizeEvents::EndpointProvider.new
23
+ end
24
+
25
+ # @api private
26
+ class Handler < Seahorse::Client::Handler
27
+ def call(context)
28
+ # If endpoint was discovered, do not resolve or apply the endpoint.
29
+ unless context[:discovered_endpoint]
30
+ params = parameters_for_operation(context)
31
+ endpoint = context.config.endpoint_provider.resolve_endpoint(params)
32
+
33
+ context.http_request.endpoint = endpoint.url
34
+ apply_endpoint_headers(context, endpoint.headers)
35
+ end
36
+
37
+ context[:endpoint_params] = params
38
+ context[:auth_scheme] =
39
+ Aws::Endpoints.resolve_auth_scheme(context, endpoint)
40
+
41
+ @handler.call(context)
42
+ end
43
+
44
+ private
45
+
46
+ def apply_endpoint_headers(context, headers)
47
+ headers.each do |key, values|
48
+ value = values
49
+ .compact
50
+ .map { |s| Seahorse::Util.escape_header_list_string(s.to_s) }
51
+ .join(',')
52
+
53
+ context.http_request.headers[key] = value
54
+ end
55
+ end
56
+
57
+ def parameters_for_operation(context)
58
+ case context.operation_name
59
+ when :put_events
60
+ Aws::PersonalizeEvents::Endpoints::PutEvents.build(context)
61
+ when :put_items
62
+ Aws::PersonalizeEvents::Endpoints::PutItems.build(context)
63
+ when :put_users
64
+ Aws::PersonalizeEvents::Endpoints::PutUsers.build(context)
65
+ end
66
+ end
67
+ end
68
+
69
+ def add_handlers(handlers, _config)
70
+ handlers.add(Handler, step: :build, priority: 75)
71
+ end
72
+ end
73
+ end
74
+ end
@@ -25,6 +25,9 @@ module Aws::PersonalizeEvents
25
25
  # sent_at: Time.now, # required
26
26
  # recommendation_id: "RecommendationId",
27
27
  # impression: ["ItemId"],
28
+ # metric_attribution: {
29
+ # event_attribution_source: "EventAttributionSource", # required
30
+ # },
28
31
  # }
29
32
  #
30
33
  # @!attribute [rw] event_id
@@ -73,14 +76,44 @@ module Aws::PersonalizeEvents
73
76
  # @return [Time]
74
77
  #
75
78
  # @!attribute [rw] recommendation_id
76
- # The ID of the recommendation.
79
+ # The ID of the list of recommendations that contains the item the
80
+ # user interacted with. Provide a `recommendationId` to have Amazon
81
+ # Personalize implicitly record the recommendations you show your user
82
+ # as impressions data. Or provide a `recommendationId` if you use a
83
+ # metric attribution to measure the impact of recommendations.
84
+ #
85
+ # For more information on recording impressions data, see [Recording
86
+ # impressions data][1]. For more information on creating a metric
87
+ # attribution see [Measuring impact of recommendations][2].
88
+ #
89
+ #
90
+ #
91
+ # [1]: https://docs.aws.amazon.com/personalize/latest/dg/recording-events.html#putevents-including-impressions-data
92
+ # [2]: https://docs.aws.amazon.com/personalize/latest/dg/measuring-recommendation-impact.html
77
93
  # @return [String]
78
94
  #
79
95
  # @!attribute [rw] impression
80
96
  # A list of item IDs that represents the sequence of items you have
81
97
  # shown the user. For example, `["itemId1", "itemId2", "itemId3"]`.
98
+ # Provide a list of items to manually record impressions data for an
99
+ # event. For more information on recording impressions data, see
100
+ # [Recording impressions data][1].
101
+ #
102
+ #
103
+ #
104
+ # [1]: https://docs.aws.amazon.com/personalize/latest/dg/recording-events.html#putevents-including-impressions-data
82
105
  # @return [Array<String>]
83
106
  #
107
+ # @!attribute [rw] metric_attribution
108
+ # Contains information about the metric attribution associated with an
109
+ # event. For more information about metric attributions, see
110
+ # [Measuring impact of recommendations][1].
111
+ #
112
+ #
113
+ #
114
+ # [1]: https://docs.aws.amazon.com/personalize/latest/dg/measuring-recommendation-impact.html
115
+ # @return [Types::MetricAttribution]
116
+ #
84
117
  # @see http://docs.aws.amazon.com/goto/WebAPI/personalize-events-2018-03-22/Event AWS API Documentation
85
118
  #
86
119
  class Event < Struct.new(
@@ -91,8 +124,9 @@ module Aws::PersonalizeEvents
91
124
  :properties,
92
125
  :sent_at,
93
126
  :recommendation_id,
94
- :impression)
95
- SENSITIVE = []
127
+ :impression,
128
+ :metric_attribution)
129
+ SENSITIVE = [:item_id, :properties]
96
130
  include Aws::Structure
97
131
  end
98
132
 
@@ -147,6 +181,33 @@ module Aws::PersonalizeEvents
147
181
  class Item < Struct.new(
148
182
  :item_id,
149
183
  :properties)
184
+ SENSITIVE = [:properties]
185
+ include Aws::Structure
186
+ end
187
+
188
+ # Contains information about a metric attribution associated with an
189
+ # event. For more information about metric attributions, see [Measuring
190
+ # impact of recommendations][1].
191
+ #
192
+ #
193
+ #
194
+ # [1]: https://docs.aws.amazon.com/personalize/latest/dg/measuring-recommendation-impact.html
195
+ #
196
+ # @note When making an API call, you may pass MetricAttribution
197
+ # data as a hash:
198
+ #
199
+ # {
200
+ # event_attribution_source: "EventAttributionSource", # required
201
+ # }
202
+ #
203
+ # @!attribute [rw] event_attribution_source
204
+ # The source of the event, such as a third party.
205
+ # @return [String]
206
+ #
207
+ # @see http://docs.aws.amazon.com/goto/WebAPI/personalize-events-2018-03-22/MetricAttribution AWS API Documentation
208
+ #
209
+ class MetricAttribution < Struct.new(
210
+ :event_attribution_source)
150
211
  SENSITIVE = []
151
212
  include Aws::Structure
152
213
  end
@@ -168,6 +229,9 @@ module Aws::PersonalizeEvents
168
229
  # sent_at: Time.now, # required
169
230
  # recommendation_id: "RecommendationId",
170
231
  # impression: ["ItemId"],
232
+ # metric_attribution: {
233
+ # event_attribution_source: "EventAttributionSource", # required
234
+ # },
171
235
  # },
172
236
  # ],
173
237
  # }
@@ -208,7 +272,7 @@ module Aws::PersonalizeEvents
208
272
  :user_id,
209
273
  :session_id,
210
274
  :event_list)
211
- SENSITIVE = []
275
+ SENSITIVE = [:user_id]
212
276
  include Aws::Structure
213
277
  end
214
278
 
@@ -338,7 +402,7 @@ module Aws::PersonalizeEvents
338
402
  class User < Struct.new(
339
403
  :user_id,
340
404
  :properties)
341
- SENSITIVE = []
405
+ SENSITIVE = [:properties]
342
406
  include Aws::Structure
343
407
  end
344
408
 
@@ -13,9 +13,13 @@ require 'aws-sigv4'
13
13
 
14
14
  require_relative 'aws-sdk-personalizeevents/types'
15
15
  require_relative 'aws-sdk-personalizeevents/client_api'
16
+ require_relative 'aws-sdk-personalizeevents/plugins/endpoints.rb'
16
17
  require_relative 'aws-sdk-personalizeevents/client'
17
18
  require_relative 'aws-sdk-personalizeevents/errors'
18
19
  require_relative 'aws-sdk-personalizeevents/resource'
20
+ require_relative 'aws-sdk-personalizeevents/endpoint_parameters'
21
+ require_relative 'aws-sdk-personalizeevents/endpoint_provider'
22
+ require_relative 'aws-sdk-personalizeevents/endpoints'
19
23
  require_relative 'aws-sdk-personalizeevents/customizations'
20
24
 
21
25
  # This module provides support for Amazon Personalize Events. This module is available in the
@@ -48,6 +52,6 @@ require_relative 'aws-sdk-personalizeevents/customizations'
48
52
  # @!group service
49
53
  module Aws::PersonalizeEvents
50
54
 
51
- GEM_VERSION = '1.27.0'
55
+ GEM_VERSION = '1.29.0'
52
56
 
53
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-personalizeevents
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.27.0
4
+ version: 1.29.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-24 00:00:00.000000000 Z
11
+ date: 2022-11-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.127.0
22
+ version: 3.165.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.127.0
32
+ version: 3.165.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -59,7 +59,11 @@ files:
59
59
  - lib/aws-sdk-personalizeevents/client.rb
60
60
  - lib/aws-sdk-personalizeevents/client_api.rb
61
61
  - lib/aws-sdk-personalizeevents/customizations.rb
62
+ - lib/aws-sdk-personalizeevents/endpoint_parameters.rb
63
+ - lib/aws-sdk-personalizeevents/endpoint_provider.rb
64
+ - lib/aws-sdk-personalizeevents/endpoints.rb
62
65
  - lib/aws-sdk-personalizeevents/errors.rb
66
+ - lib/aws-sdk-personalizeevents/plugins/endpoints.rb
63
67
  - lib/aws-sdk-personalizeevents/resource.rb
64
68
  - lib/aws-sdk-personalizeevents/types.rb
65
69
  homepage: https://github.com/aws/aws-sdk-ruby