aws-sdk-marketplacecommerceanalytics 1.0.0.rc1

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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 143ce679f710111f542efdfae09c1efeb124ade0
4
+ data.tar.gz: 044ffb703d9a19df102f63befcf1b61065efc6b1
5
+ SHA512:
6
+ metadata.gz: cfe19bddcfc4cb7fdb52652517187f9e8239bc2b17bcfaff26a68d06499d7aad52987e1dfdb989c2ed554d3b2393b65955a398ddd0f3c650364c73c7bfeddae0
7
+ data.tar.gz: 98eff53773c2772e38c8af53437a88c152db74af0e8bfcebc59c2e9cb8b5ffc3172458211389c419f05ab154e705dd9c82a1f37db84ae04666a38887b8d06698
@@ -0,0 +1,47 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'aws-sdk-core'
9
+ require 'aws-sigv4'
10
+
11
+ require_relative 'aws-sdk-marketplacecommerceanalytics/types'
12
+ require_relative 'aws-sdk-marketplacecommerceanalytics/client_api'
13
+ require_relative 'aws-sdk-marketplacecommerceanalytics/client'
14
+ require_relative 'aws-sdk-marketplacecommerceanalytics/errors'
15
+ require_relative 'aws-sdk-marketplacecommerceanalytics/resource'
16
+ require_relative 'aws-sdk-marketplacecommerceanalytics/customizations'
17
+
18
+ # This module provides support for AWS Marketplace Commerce Analytics. This module is available in the
19
+ # `aws-sdk-marketplacecommerceanalytics` gem.
20
+ #
21
+ # # Client
22
+ #
23
+ # The {Client} class provides one method for each API operation. Operation
24
+ # methods each accept a hash of request parameters and return a response
25
+ # structure.
26
+ #
27
+ # See {Client} for more information.
28
+ #
29
+ # # Errors
30
+ #
31
+ # Errors returned from AWS Marketplace Commerce Analytics all
32
+ # extend {Errors::ServiceError}.
33
+ #
34
+ # begin
35
+ # # do stuff
36
+ # rescue Aws::MarketplaceCommerceAnalytics::Errors::ServiceError
37
+ # # rescues all service API errors
38
+ # end
39
+ #
40
+ # See {Errors} for more information.
41
+ #
42
+ # @service
43
+ module Aws::MarketplaceCommerceAnalytics
44
+
45
+ GEM_VERSION = '1.0.0.rc1'
46
+
47
+ end
@@ -0,0 +1,365 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'seahorse/client/plugins/content_length.rb'
9
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
10
+ require 'aws-sdk-core/plugins/logging.rb'
11
+ require 'aws-sdk-core/plugins/param_converter.rb'
12
+ require 'aws-sdk-core/plugins/param_validator.rb'
13
+ require 'aws-sdk-core/plugins/user_agent.rb'
14
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
+ require 'aws-sdk-core/plugins/retry_errors.rb'
16
+ require 'aws-sdk-core/plugins/global_configuration.rb'
17
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
+ require 'aws-sdk-core/plugins/response_paging.rb'
19
+ require 'aws-sdk-core/plugins/stub_responses.rb'
20
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
21
+ require 'aws-sdk-core/plugins/signature_v4.rb'
22
+ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
23
+
24
+ Aws::Plugins::GlobalConfiguration.add_identifier(:marketplacecommerceanalytics)
25
+
26
+ module Aws
27
+ module MarketplaceCommerceAnalytics
28
+ class Client < Seahorse::Client::Base
29
+
30
+ include Aws::ClientStubs
31
+
32
+ @identifier = :marketplacecommerceanalytics
33
+
34
+ set_api(ClientApi::API)
35
+
36
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
37
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
38
+ add_plugin(Aws::Plugins::Logging)
39
+ add_plugin(Aws::Plugins::ParamConverter)
40
+ add_plugin(Aws::Plugins::ParamValidator)
41
+ add_plugin(Aws::Plugins::UserAgent)
42
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
+ add_plugin(Aws::Plugins::RetryErrors)
44
+ add_plugin(Aws::Plugins::GlobalConfiguration)
45
+ add_plugin(Aws::Plugins::RegionalEndpoint)
46
+ add_plugin(Aws::Plugins::ResponsePaging)
47
+ add_plugin(Aws::Plugins::StubResponses)
48
+ add_plugin(Aws::Plugins::IdempotencyToken)
49
+ add_plugin(Aws::Plugins::SignatureV4)
50
+ add_plugin(Aws::Plugins::Protocols::JsonRpc)
51
+
52
+ # @option options [required, Aws::CredentialProvider] :credentials
53
+ # Your AWS credentials. This can be an instance of any one of the
54
+ # following classes:
55
+ #
56
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
57
+ # credentials.
58
+ #
59
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
60
+ # from an EC2 IMDS on an EC2 instance.
61
+ #
62
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
63
+ # shared file, such as `~/.aws/config`.
64
+ #
65
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
66
+ #
67
+ # When `:credentials` are not configured directly, the following
68
+ # locations will be searched for credentials:
69
+ #
70
+ # * `Aws.config[:credentials]`
71
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
72
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
73
+ # * `~/.aws/credentials`
74
+ # * `~/.aws/config`
75
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
76
+ # very aggressive. Construct and pass an instance of
77
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
78
+ # timeouts.
79
+ # @option options [required, String] :region
80
+ # The AWS region to connect to. The configured `:region` is
81
+ # used to determine the service `:endpoint`. When not passed,
82
+ # a default `:region` is search for in the following locations:
83
+ #
84
+ # * `Aws.config[:region]`
85
+ # * `ENV['AWS_REGION']`
86
+ # * `ENV['AMAZON_REGION']`
87
+ # * `ENV['AWS_DEFAULT_REGION']`
88
+ # * `~/.aws/credentials`
89
+ # * `~/.aws/config`
90
+ # @option options [String] :access_key_id
91
+ # @option options [Boolean] :convert_params (true)
92
+ # When `true`, an attempt is made to coerce request parameters into
93
+ # the required types.
94
+ # @option options [String] :endpoint
95
+ # The client endpoint is normally constructed from the `:region`
96
+ # option. You should only configure an `:endpoint` when connecting
97
+ # to test endpoints. This should be avalid HTTP(S) URI.
98
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
99
+ # The log formatter.
100
+ # @option options [Symbol] :log_level (:info)
101
+ # The log level to send messages to the `:logger` at.
102
+ # @option options [Logger] :logger
103
+ # The Logger instance to send log messages to. If this option
104
+ # is not set, logging will be disabled.
105
+ # @option options [String] :profile ("default")
106
+ # Used when loading credentials from the shared credentials file
107
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
108
+ # @option options [Integer] :retry_limit (3)
109
+ # The maximum number of times to retry failed requests. Only
110
+ # ~ 500 level server errors and certain ~ 400 level client errors
111
+ # are retried. Generally, these are throttling errors, data
112
+ # checksum errors, networking errors, timeout errors and auth
113
+ # errors from expired credentials.
114
+ # @option options [String] :secret_access_key
115
+ # @option options [String] :session_token
116
+ # @option options [Boolean] :simple_json (false)
117
+ # Disables request parameter conversion, validation, and formatting.
118
+ # Also disable response data type conversions. This option is useful
119
+ # when you want to ensure the highest level of performance by
120
+ # avoiding overhead of walking request parameters and response data
121
+ # structures.
122
+ #
123
+ # When `:simple_json` is enabled, the request parameters hash must
124
+ # be formatted exactly as the DynamoDB API expects.
125
+ # @option options [Boolean] :stub_responses (false)
126
+ # Causes the client to return stubbed responses. By default
127
+ # fake responses are generated and returned. You can specify
128
+ # the response data to return or errors to raise by calling
129
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
130
+ #
131
+ # ** Please note ** When response stubbing is enabled, no HTTP
132
+ # requests are made, and retries are disabled.
133
+ # @option options [Boolean] :validate_params (true)
134
+ # When `true`, request parameters are validated before
135
+ # sending the request.
136
+ def initialize(*args)
137
+ super
138
+ end
139
+
140
+ # @!group API Operations
141
+
142
+ # Given a data set type and data set publication date, asynchronously
143
+ # publishes the requested data set to the specified S3 bucket and
144
+ # notifies the specified SNS topic once the data is available. Returns a
145
+ # unique request identifier that can be used to correlate requests with
146
+ # notifications from the SNS topic. Data sets will be published in
147
+ # comma-separated values (CSV) format with the file name
148
+ # \\\{data\_set\_type\\}\_YYYY-MM-DD.csv. If a file with the same name
149
+ # already exists (e.g. if the same data set is requested twice), the
150
+ # original file will be overwritten by the new file. Requires a Role
151
+ # with an attached permissions policy providing Allow permissions for
152
+ # the following actions: s3:PutObject, s3:GetBucketLocation,
153
+ # sns:GetTopicAttributes, sns:Publish, iam:GetRolePolicy.
154
+ # @option params [required, String] :data_set_type
155
+ # The desired data set type.
156
+ #
157
+ # * *customer\_subscriber\_hourly\_monthly\_subscriptions* - Available
158
+ # daily by 5:00 PM Pacific Time since 2014-07-21.
159
+ # * *customer\_subscriber\_annual\_subscriptions* - Available daily by
160
+ # 5:00 PM Pacific Time since 2014-07-21.
161
+ # * *daily\_business\_usage\_by\_instance\_type* - Available daily by
162
+ # 5:00 PM Pacific Time since 2015-01-26.
163
+ # * *daily\_business\_fees* - Available daily by 5:00 PM Pacific Time
164
+ # since 2015-01-26.
165
+ # * *daily\_business\_free\_trial\_conversions* - Available daily by
166
+ # 5:00 PM Pacific Time since 2015-01-26.
167
+ # * *daily\_business\_new\_instances* - Available daily by 5:00 PM
168
+ # Pacific Time since 2015-01-26.
169
+ # * *daily\_business\_new\_product\_subscribers* - Available daily by
170
+ # 5:00 PM Pacific Time since 2015-01-26.
171
+ # * *daily\_business\_canceled\_product\_subscribers* - Available daily
172
+ # by 5:00 PM Pacific Time since 2015-01-26.
173
+ # * *monthly\_revenue\_billing\_and\_revenue\_data* - Available monthly
174
+ # on the 4th day of the month by 5:00 PM Pacific Time since 2015-02.
175
+ # * *monthly\_revenue\_annual\_subscriptions* - Available monthly on the
176
+ # 4th day of the month by 5:00 PM Pacific Time since 2015-02.
177
+ # * *disbursed\_amount\_by\_product* - Available every 30 days by 5:00
178
+ # PM Pacific Time since 2015-01-26.
179
+ # * *disbursed\_amount\_by\_product\_with\_uncollected\_funds* -This
180
+ # data set is only available from 2012-04-19 until 2015-01-25. After
181
+ # 2015-01-25, this data set was split into three data sets:
182
+ # disbursed\_amount\_by\_product,
183
+ # disbursed\_amount\_by\_age\_of\_uncollected\_funds, and
184
+ # disbursed\_amount\_by\_age\_of\_disbursed\_funds.
185
+ # * *disbursed\_amount\_by\_customer\_geo* - Available every 30 days by
186
+ # 5:00 PM Pacific Time since 2012-04-19.
187
+ # * *disbursed\_amount\_by\_age\_of\_uncollected\_funds* - Available
188
+ # every 30 days by 5:00 PM Pacific Time since 2015-01-26.
189
+ # * *disbursed\_amount\_by\_age\_of\_disbursed\_funds* - Available every
190
+ # 30 days by 5:00 PM Pacific Time since 2015-01-26.
191
+ # * *customer\_profile\_by\_industry* - Available daily by 5:00 PM
192
+ # Pacific Time since 2015-10-01.
193
+ # * *customer\_profile\_by\_revenue* - Available daily by 5:00 PM
194
+ # Pacific Time since 2015-10-01.
195
+ # * *customer\_profile\_by\_geography* - Available daily by 5:00 PM
196
+ # Pacific Time since 2015-10-01.
197
+ # @option params [required, Time,DateTime,Date,Integer,String] :data_set_publication_date
198
+ # The date a data set was published. For daily data sets, provide a date
199
+ # with day-level granularity for the desired day. For weekly data sets,
200
+ # provide a date with day-level granularity within the desired week (the
201
+ # day value will be ignored). For monthly data sets, provide a date with
202
+ # month-level granularity for the desired month (the day value will be
203
+ # ignored).
204
+ # @option params [required, String] :role_name_arn
205
+ # The Amazon Resource Name (ARN) of the Role with an attached
206
+ # permissions policy to interact with the provided AWS services.
207
+ # @option params [required, String] :destination_s3_bucket_name
208
+ # The name (friendly name, not ARN) of the destination S3 bucket.
209
+ # @option params [String] :destination_s3_prefix
210
+ # (Optional) The desired S3 prefix for the published data set, similar
211
+ # to a directory path in standard file systems. For example, if given
212
+ # the bucket name "mybucket" and the prefix "myprefix/mydatasets",
213
+ # the output file "outputfile" would be published to
214
+ # "s3://mybucket/myprefix/mydatasets/outputfile". If the prefix
215
+ # directory structure does not exist, it will be created. If no prefix
216
+ # is provided, the data set will be published to the S3 bucket root.
217
+ # @option params [required, String] :sns_topic_arn
218
+ # Amazon Resource Name (ARN) for the SNS Topic that will be notified
219
+ # when the data set has been published or if an error has occurred.
220
+ # @option params [Hash<String,String>] :customer_defined_values
221
+ # (Optional) Key-value pairs which will be returned, unmodified, in the
222
+ # Amazon SNS notification message and the data set metadata file. These
223
+ # key-value pairs can be used to correlated responses with tracking
224
+ # information from other systems.
225
+ # @return [Types::GenerateDataSetResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
226
+ #
227
+ # * {Types::GenerateDataSetResult#data_set_request_id #dataSetRequestId} => String
228
+ #
229
+ # @example Request syntax with placeholder values
230
+ # resp = client.generate_data_set({
231
+ # data_set_type: "customer_subscriber_hourly_monthly_subscriptions", # required, accepts customer_subscriber_hourly_monthly_subscriptions, customer_subscriber_annual_subscriptions, daily_business_usage_by_instance_type, daily_business_fees, daily_business_free_trial_conversions, daily_business_new_instances, daily_business_new_product_subscribers, daily_business_canceled_product_subscribers, monthly_revenue_billing_and_revenue_data, monthly_revenue_annual_subscriptions, disbursed_amount_by_product, disbursed_amount_by_product_with_uncollected_funds, disbursed_amount_by_customer_geo, disbursed_amount_by_age_of_uncollected_funds, disbursed_amount_by_age_of_disbursed_funds, customer_profile_by_industry, customer_profile_by_revenue, customer_profile_by_geography
232
+ # data_set_publication_date: Time.now, # required
233
+ # role_name_arn: "RoleNameArn", # required
234
+ # destination_s3_bucket_name: "DestinationS3BucketName", # required
235
+ # destination_s3_prefix: "DestinationS3Prefix",
236
+ # sns_topic_arn: "SnsTopicArn", # required
237
+ # customer_defined_values: {
238
+ # "OptionalKey" => "OptionalValue",
239
+ # },
240
+ # })
241
+ #
242
+ # @example Response structure
243
+ # resp.data_set_request_id #=> String
244
+ # @overload generate_data_set(params = {})
245
+ # @param [Hash] params ({})
246
+ def generate_data_set(params = {}, options = {})
247
+ req = build_request(:generate_data_set, params)
248
+ req.send_request(options)
249
+ end
250
+
251
+ # Given a data set type and a from date, asynchronously publishes the
252
+ # requested customer support data to the specified S3 bucket and
253
+ # notifies the specified SNS topic once the data is available. Returns a
254
+ # unique request identifier that can be used to correlate requests with
255
+ # notifications from the SNS topic. Data sets will be published in
256
+ # comma-separated values (CSV) format with the file name
257
+ # \\\{data\_set\_type\\}\_YYYY-MM-DD'T'HH-mm-ss'Z'.csv. If a file
258
+ # with the same name already exists (e.g. if the same data set is
259
+ # requested twice), the original file will be overwritten by the new
260
+ # file. Requires a Role with an attached permissions policy providing
261
+ # Allow permissions for the following actions: s3:PutObject,
262
+ # s3:GetBucketLocation, sns:GetTopicAttributes, sns:Publish,
263
+ # iam:GetRolePolicy.
264
+ # @option params [required, String] :data_set_type
265
+ # Specifies the data set type to be written to the output csv file. The
266
+ # data set types customer\_support\_contacts\_data and
267
+ # test\_customer\_support\_contacts\_data both result in a csv file
268
+ # containing the following fields: Product Id, Customer Guid,
269
+ # Subscription Guid, Subscription Start Date, Organization, AWS Account
270
+ # Id, Given Name, Surname, Telephone Number, Email, Title, Country Code,
271
+ # ZIP Code, Operation Type, and Operation Time. Currently, only the
272
+ # test\_customer\_support\_contacts\_data value is supported
273
+ #
274
+ # * *customer\_support\_contacts\_data* Customer support contact data.
275
+ # The data set will contain all changes (Creates, Updates, and
276
+ # Deletes) to customer support contact data from the date specified in
277
+ # the from\_date parameter.
278
+ # * *test\_customer\_support\_contacts\_data* An example data set
279
+ # containing static test data in the same format as
280
+ # customer\_support\_contacts\_data
281
+ # @option params [required, Time,DateTime,Date,Integer,String] :from_date
282
+ # The start date from which to retrieve the data set. This parameter
283
+ # only affects the customer\_support\_contacts\_data data set type.
284
+ # @option params [required, String] :role_name_arn
285
+ # The Amazon Resource Name (ARN) of the Role with an attached
286
+ # permissions policy to interact with the provided AWS services.
287
+ # @option params [required, String] :destination_s3_bucket_name
288
+ # The name (friendly name, not ARN) of the destination S3 bucket.
289
+ # @option params [String] :destination_s3_prefix
290
+ # (Optional) The desired S3 prefix for the published data set, similar
291
+ # to a directory path in standard file systems. For example, if given
292
+ # the bucket name "mybucket" and the prefix "myprefix/mydatasets",
293
+ # the output file "outputfile" would be published to
294
+ # "s3://mybucket/myprefix/mydatasets/outputfile". If the prefix
295
+ # directory structure does not exist, it will be created. If no prefix
296
+ # is provided, the data set will be published to the S3 bucket root.
297
+ # @option params [required, String] :sns_topic_arn
298
+ # Amazon Resource Name (ARN) for the SNS Topic that will be notified
299
+ # when the data set has been published or if an error has occurred.
300
+ # @option params [Hash<String,String>] :customer_defined_values
301
+ # (Optional) Key-value pairs which will be returned, unmodified, in the
302
+ # Amazon SNS notification message and the data set metadata file.
303
+ # @return [Types::StartSupportDataExportResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
304
+ #
305
+ # * {Types::StartSupportDataExportResult#data_set_request_id #dataSetRequestId} => String
306
+ #
307
+ # @example Request syntax with placeholder values
308
+ # resp = client.start_support_data_export({
309
+ # data_set_type: "customer_support_contacts_data", # required, accepts customer_support_contacts_data, test_customer_support_contacts_data
310
+ # from_date: Time.now, # required
311
+ # role_name_arn: "RoleNameArn", # required
312
+ # destination_s3_bucket_name: "DestinationS3BucketName", # required
313
+ # destination_s3_prefix: "DestinationS3Prefix",
314
+ # sns_topic_arn: "SnsTopicArn", # required
315
+ # customer_defined_values: {
316
+ # "OptionalKey" => "OptionalValue",
317
+ # },
318
+ # })
319
+ #
320
+ # @example Response structure
321
+ # resp.data_set_request_id #=> String
322
+ # @overload start_support_data_export(params = {})
323
+ # @param [Hash] params ({})
324
+ def start_support_data_export(params = {}, options = {})
325
+ req = build_request(:start_support_data_export, params)
326
+ req.send_request(options)
327
+ end
328
+
329
+ # @!endgroup
330
+
331
+ # @param params ({})
332
+ # @api private
333
+ def build_request(operation_name, params = {})
334
+ handlers = @handlers.for(operation_name)
335
+ context = Seahorse::Client::RequestContext.new(
336
+ operation_name: operation_name,
337
+ operation: config.api.operation(operation_name),
338
+ client: self,
339
+ params: params,
340
+ config: config)
341
+ context[:gem_name] = 'aws-sdk-marketplacecommerceanalytics'
342
+ context[:gem_version] = '1.0.0.rc1'
343
+ Seahorse::Client::Request.new(handlers, context)
344
+ end
345
+
346
+ # @api private
347
+ # @deprecated
348
+ def waiter_names
349
+ []
350
+ end
351
+
352
+ class << self
353
+
354
+ # @api private
355
+ attr_reader :identifier
356
+
357
+ # @api private
358
+ def errors_module
359
+ Errors
360
+ end
361
+
362
+ end
363
+ end
364
+ end
365
+ end
@@ -0,0 +1,98 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module MarketplaceCommerceAnalytics
10
+ # @api private
11
+ module ClientApi
12
+
13
+ include Seahorse::Model
14
+
15
+ CustomerDefinedValues = Shapes::MapShape.new(name: 'CustomerDefinedValues')
16
+ DataSetPublicationDate = Shapes::TimestampShape.new(name: 'DataSetPublicationDate')
17
+ DataSetRequestId = Shapes::StringShape.new(name: 'DataSetRequestId')
18
+ DataSetType = Shapes::StringShape.new(name: 'DataSetType')
19
+ DestinationS3BucketName = Shapes::StringShape.new(name: 'DestinationS3BucketName')
20
+ DestinationS3Prefix = Shapes::StringShape.new(name: 'DestinationS3Prefix')
21
+ ExceptionMessage = Shapes::StringShape.new(name: 'ExceptionMessage')
22
+ FromDate = Shapes::TimestampShape.new(name: 'FromDate')
23
+ GenerateDataSetRequest = Shapes::StructureShape.new(name: 'GenerateDataSetRequest')
24
+ GenerateDataSetResult = Shapes::StructureShape.new(name: 'GenerateDataSetResult')
25
+ MarketplaceCommerceAnalyticsException = Shapes::StructureShape.new(name: 'MarketplaceCommerceAnalyticsException')
26
+ OptionalKey = Shapes::StringShape.new(name: 'OptionalKey')
27
+ OptionalValue = Shapes::StringShape.new(name: 'OptionalValue')
28
+ RoleNameArn = Shapes::StringShape.new(name: 'RoleNameArn')
29
+ SnsTopicArn = Shapes::StringShape.new(name: 'SnsTopicArn')
30
+ StartSupportDataExportRequest = Shapes::StructureShape.new(name: 'StartSupportDataExportRequest')
31
+ StartSupportDataExportResult = Shapes::StructureShape.new(name: 'StartSupportDataExportResult')
32
+ SupportDataSetType = Shapes::StringShape.new(name: 'SupportDataSetType')
33
+
34
+ CustomerDefinedValues.key = Shapes::ShapeRef.new(shape: OptionalKey)
35
+ CustomerDefinedValues.value = Shapes::ShapeRef.new(shape: OptionalValue)
36
+
37
+ GenerateDataSetRequest.add_member(:data_set_type, Shapes::ShapeRef.new(shape: DataSetType, required: true, location_name: "dataSetType"))
38
+ GenerateDataSetRequest.add_member(:data_set_publication_date, Shapes::ShapeRef.new(shape: DataSetPublicationDate, required: true, location_name: "dataSetPublicationDate"))
39
+ GenerateDataSetRequest.add_member(:role_name_arn, Shapes::ShapeRef.new(shape: RoleNameArn, required: true, location_name: "roleNameArn"))
40
+ GenerateDataSetRequest.add_member(:destination_s3_bucket_name, Shapes::ShapeRef.new(shape: DestinationS3BucketName, required: true, location_name: "destinationS3BucketName"))
41
+ GenerateDataSetRequest.add_member(:destination_s3_prefix, Shapes::ShapeRef.new(shape: DestinationS3Prefix, location_name: "destinationS3Prefix"))
42
+ GenerateDataSetRequest.add_member(:sns_topic_arn, Shapes::ShapeRef.new(shape: SnsTopicArn, required: true, location_name: "snsTopicArn"))
43
+ GenerateDataSetRequest.add_member(:customer_defined_values, Shapes::ShapeRef.new(shape: CustomerDefinedValues, location_name: "customerDefinedValues"))
44
+ GenerateDataSetRequest.struct_class = Types::GenerateDataSetRequest
45
+
46
+ GenerateDataSetResult.add_member(:data_set_request_id, Shapes::ShapeRef.new(shape: DataSetRequestId, location_name: "dataSetRequestId"))
47
+ GenerateDataSetResult.struct_class = Types::GenerateDataSetResult
48
+
49
+ StartSupportDataExportRequest.add_member(:data_set_type, Shapes::ShapeRef.new(shape: SupportDataSetType, required: true, location_name: "dataSetType"))
50
+ StartSupportDataExportRequest.add_member(:from_date, Shapes::ShapeRef.new(shape: FromDate, required: true, location_name: "fromDate"))
51
+ StartSupportDataExportRequest.add_member(:role_name_arn, Shapes::ShapeRef.new(shape: RoleNameArn, required: true, location_name: "roleNameArn"))
52
+ StartSupportDataExportRequest.add_member(:destination_s3_bucket_name, Shapes::ShapeRef.new(shape: DestinationS3BucketName, required: true, location_name: "destinationS3BucketName"))
53
+ StartSupportDataExportRequest.add_member(:destination_s3_prefix, Shapes::ShapeRef.new(shape: DestinationS3Prefix, location_name: "destinationS3Prefix"))
54
+ StartSupportDataExportRequest.add_member(:sns_topic_arn, Shapes::ShapeRef.new(shape: SnsTopicArn, required: true, location_name: "snsTopicArn"))
55
+ StartSupportDataExportRequest.add_member(:customer_defined_values, Shapes::ShapeRef.new(shape: CustomerDefinedValues, location_name: "customerDefinedValues"))
56
+ StartSupportDataExportRequest.struct_class = Types::StartSupportDataExportRequest
57
+
58
+ StartSupportDataExportResult.add_member(:data_set_request_id, Shapes::ShapeRef.new(shape: DataSetRequestId, location_name: "dataSetRequestId"))
59
+ StartSupportDataExportResult.struct_class = Types::StartSupportDataExportResult
60
+
61
+
62
+ # @api private
63
+ API = Seahorse::Model::Api.new.tap do |api|
64
+
65
+ api.version = "2015-07-01"
66
+
67
+ api.metadata = {
68
+ "endpointPrefix" => "marketplacecommerceanalytics",
69
+ "jsonVersion" => "1.1",
70
+ "protocol" => "json",
71
+ "serviceFullName" => "AWS Marketplace Commerce Analytics",
72
+ "signatureVersion" => "v4",
73
+ "signingName" => "marketplacecommerceanalytics",
74
+ "targetPrefix" => "MarketplaceCommerceAnalytics20150701",
75
+ }
76
+
77
+ api.add_operation(:generate_data_set, Seahorse::Model::Operation.new.tap do |o|
78
+ o.name = "GenerateDataSet"
79
+ o.http_method = "POST"
80
+ o.http_request_uri = "/"
81
+ o.input = Shapes::ShapeRef.new(shape: GenerateDataSetRequest)
82
+ o.output = Shapes::ShapeRef.new(shape: GenerateDataSetResult)
83
+ o.errors << Shapes::ShapeRef.new(shape: MarketplaceCommerceAnalyticsException)
84
+ end)
85
+
86
+ api.add_operation(:start_support_data_export, Seahorse::Model::Operation.new.tap do |o|
87
+ o.name = "StartSupportDataExport"
88
+ o.http_method = "POST"
89
+ o.http_request_uri = "/"
90
+ o.input = Shapes::ShapeRef.new(shape: StartSupportDataExportRequest)
91
+ o.output = Shapes::ShapeRef.new(shape: StartSupportDataExportResult)
92
+ o.errors << Shapes::ShapeRef.new(shape: MarketplaceCommerceAnalyticsException)
93
+ end)
94
+ end
95
+
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,7 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module MarketplaceCommerceAnalytics
10
+ module Errors
11
+
12
+ extend Aws::Errors::DynamicErrors
13
+
14
+ # Raised when calling #load or #data on a resource class that can not be
15
+ # loaded. This can happen when:
16
+ #
17
+ # * A resource class has identifiers, but no data attributes.
18
+ # * Resource data is only available when making an API call that
19
+ # enumerates all resources of that type.
20
+ class ResourceNotLoadable < RuntimeError; end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,25 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module MarketplaceCommerceAnalytics
10
+ class Resource
11
+
12
+ # @param options ({})
13
+ # @option options [Client] :client
14
+ def initialize(options = {})
15
+ @client = options[:client] || Client.new(options)
16
+ end
17
+
18
+ # @return [Client]
19
+ def client
20
+ @client
21
+ end
22
+
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,226 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module MarketplaceCommerceAnalytics
10
+ module Types
11
+
12
+ # Container for the parameters to the GenerateDataSet operation.
13
+ # @note When making an API call, pass GenerateDataSetRequest
14
+ # data as a hash:
15
+ #
16
+ # {
17
+ # data_set_type: "customer_subscriber_hourly_monthly_subscriptions", # required, accepts customer_subscriber_hourly_monthly_subscriptions, customer_subscriber_annual_subscriptions, daily_business_usage_by_instance_type, daily_business_fees, daily_business_free_trial_conversions, daily_business_new_instances, daily_business_new_product_subscribers, daily_business_canceled_product_subscribers, monthly_revenue_billing_and_revenue_data, monthly_revenue_annual_subscriptions, disbursed_amount_by_product, disbursed_amount_by_product_with_uncollected_funds, disbursed_amount_by_customer_geo, disbursed_amount_by_age_of_uncollected_funds, disbursed_amount_by_age_of_disbursed_funds, customer_profile_by_industry, customer_profile_by_revenue, customer_profile_by_geography
18
+ # data_set_publication_date: Time.now, # required
19
+ # role_name_arn: "RoleNameArn", # required
20
+ # destination_s3_bucket_name: "DestinationS3BucketName", # required
21
+ # destination_s3_prefix: "DestinationS3Prefix",
22
+ # sns_topic_arn: "SnsTopicArn", # required
23
+ # customer_defined_values: {
24
+ # "OptionalKey" => "OptionalValue",
25
+ # },
26
+ # }
27
+ # @!attribute [rw] data_set_type
28
+ # The desired data set type.
29
+ #
30
+ # * *customer\_subscriber\_hourly\_monthly\_subscriptions* - Available
31
+ # daily by 5:00 PM Pacific Time since 2014-07-21.
32
+ # * *customer\_subscriber\_annual\_subscriptions* - Available daily by
33
+ # 5:00 PM Pacific Time since 2014-07-21.
34
+ # * *daily\_business\_usage\_by\_instance\_type* - Available daily by
35
+ # 5:00 PM Pacific Time since 2015-01-26.
36
+ # * *daily\_business\_fees* - Available daily by 5:00 PM Pacific Time
37
+ # since 2015-01-26.
38
+ # * *daily\_business\_free\_trial\_conversions* - Available daily by
39
+ # 5:00 PM Pacific Time since 2015-01-26.
40
+ # * *daily\_business\_new\_instances* - Available daily by 5:00 PM
41
+ # Pacific Time since 2015-01-26.
42
+ # * *daily\_business\_new\_product\_subscribers* - Available daily by
43
+ # 5:00 PM Pacific Time since 2015-01-26.
44
+ # * *daily\_business\_canceled\_product\_subscribers* - Available
45
+ # daily by 5:00 PM Pacific Time since 2015-01-26.
46
+ # * *monthly\_revenue\_billing\_and\_revenue\_data* - Available
47
+ # monthly on the 4th day of the month by 5:00 PM Pacific Time since
48
+ # 2015-02.
49
+ # * *monthly\_revenue\_annual\_subscriptions* - Available monthly on
50
+ # the 4th day of the month by 5:00 PM Pacific Time since 2015-02.
51
+ # * *disbursed\_amount\_by\_product* - Available every 30 days by 5:00
52
+ # PM Pacific Time since 2015-01-26.
53
+ # * *disbursed\_amount\_by\_product\_with\_uncollected\_funds* -This
54
+ # data set is only available from 2012-04-19 until 2015-01-25. After
55
+ # 2015-01-25, this data set was split into three data sets:
56
+ # disbursed\_amount\_by\_product,
57
+ # disbursed\_amount\_by\_age\_of\_uncollected\_funds, and
58
+ # disbursed\_amount\_by\_age\_of\_disbursed\_funds.
59
+ # * *disbursed\_amount\_by\_customer\_geo* - Available every 30 days
60
+ # by 5:00 PM Pacific Time since 2012-04-19.
61
+ # * *disbursed\_amount\_by\_age\_of\_uncollected\_funds* - Available
62
+ # every 30 days by 5:00 PM Pacific Time since 2015-01-26.
63
+ # * *disbursed\_amount\_by\_age\_of\_disbursed\_funds* - Available
64
+ # every 30 days by 5:00 PM Pacific Time since 2015-01-26.
65
+ # * *customer\_profile\_by\_industry* - Available daily by 5:00 PM
66
+ # Pacific Time since 2015-10-01.
67
+ # * *customer\_profile\_by\_revenue* - Available daily by 5:00 PM
68
+ # Pacific Time since 2015-10-01.
69
+ # * *customer\_profile\_by\_geography* - Available daily by 5:00 PM
70
+ # Pacific Time since 2015-10-01.
71
+ # @return [String]
72
+ #
73
+ # @!attribute [rw] data_set_publication_date
74
+ # The date a data set was published. For daily data sets, provide a
75
+ # date with day-level granularity for the desired day. For weekly data
76
+ # sets, provide a date with day-level granularity within the desired
77
+ # week (the day value will be ignored). For monthly data sets, provide
78
+ # a date with month-level granularity for the desired month (the day
79
+ # value will be ignored).
80
+ # @return [Time]
81
+ #
82
+ # @!attribute [rw] role_name_arn
83
+ # The Amazon Resource Name (ARN) of the Role with an attached
84
+ # permissions policy to interact with the provided AWS services.
85
+ # @return [String]
86
+ #
87
+ # @!attribute [rw] destination_s3_bucket_name
88
+ # The name (friendly name, not ARN) of the destination S3 bucket.
89
+ # @return [String]
90
+ #
91
+ # @!attribute [rw] destination_s3_prefix
92
+ # (Optional) The desired S3 prefix for the published data set, similar
93
+ # to a directory path in standard file systems. For example, if given
94
+ # the bucket name "mybucket" and the prefix "myprefix/mydatasets",
95
+ # the output file "outputfile" would be published to
96
+ # "s3://mybucket/myprefix/mydatasets/outputfile". If the prefix
97
+ # directory structure does not exist, it will be created. If no prefix
98
+ # is provided, the data set will be published to the S3 bucket root.
99
+ # @return [String]
100
+ #
101
+ # @!attribute [rw] sns_topic_arn
102
+ # Amazon Resource Name (ARN) for the SNS Topic that will be notified
103
+ # when the data set has been published or if an error has occurred.
104
+ # @return [String]
105
+ #
106
+ # @!attribute [rw] customer_defined_values
107
+ # (Optional) Key-value pairs which will be returned, unmodified, in
108
+ # the Amazon SNS notification message and the data set metadata file.
109
+ # These key-value pairs can be used to correlated responses with
110
+ # tracking information from other systems.
111
+ # @return [Hash<String,String>]
112
+ class GenerateDataSetRequest < Struct.new(
113
+ :data_set_type,
114
+ :data_set_publication_date,
115
+ :role_name_arn,
116
+ :destination_s3_bucket_name,
117
+ :destination_s3_prefix,
118
+ :sns_topic_arn,
119
+ :customer_defined_values)
120
+ include Aws::Structure
121
+ end
122
+
123
+ # Container for the result of the GenerateDataSet operation.
124
+ # @!attribute [rw] data_set_request_id
125
+ # A unique identifier representing a specific request to the
126
+ # GenerateDataSet operation. This identifier can be used to correlate
127
+ # a request with notifications from the SNS topic.
128
+ # @return [String]
129
+ class GenerateDataSetResult < Struct.new(
130
+ :data_set_request_id)
131
+ include Aws::Structure
132
+ end
133
+
134
+ # Container for the parameters to the StartSupportDataExport operation.
135
+ # @note When making an API call, pass StartSupportDataExportRequest
136
+ # data as a hash:
137
+ #
138
+ # {
139
+ # data_set_type: "customer_support_contacts_data", # required, accepts customer_support_contacts_data, test_customer_support_contacts_data
140
+ # from_date: Time.now, # required
141
+ # role_name_arn: "RoleNameArn", # required
142
+ # destination_s3_bucket_name: "DestinationS3BucketName", # required
143
+ # destination_s3_prefix: "DestinationS3Prefix",
144
+ # sns_topic_arn: "SnsTopicArn", # required
145
+ # customer_defined_values: {
146
+ # "OptionalKey" => "OptionalValue",
147
+ # },
148
+ # }
149
+ # @!attribute [rw] data_set_type
150
+ # Specifies the data set type to be written to the output csv file.
151
+ # The data set types customer\_support\_contacts\_data and
152
+ # test\_customer\_support\_contacts\_data both result in a csv file
153
+ # containing the following fields: Product Id, Customer Guid,
154
+ # Subscription Guid, Subscription Start Date, Organization, AWS
155
+ # Account Id, Given Name, Surname, Telephone Number, Email, Title,
156
+ # Country Code, ZIP Code, Operation Type, and Operation Time.
157
+ # Currently, only the test\_customer\_support\_contacts\_data value is
158
+ # supported
159
+ #
160
+ # * *customer\_support\_contacts\_data* Customer support contact data.
161
+ # The data set will contain all changes (Creates, Updates, and
162
+ # Deletes) to customer support contact data from the date specified
163
+ # in the from\_date parameter.
164
+ # * *test\_customer\_support\_contacts\_data* An example data set
165
+ # containing static test data in the same format as
166
+ # customer\_support\_contacts\_data
167
+ # @return [String]
168
+ #
169
+ # @!attribute [rw] from_date
170
+ # The start date from which to retrieve the data set. This parameter
171
+ # only affects the customer\_support\_contacts\_data data set type.
172
+ # @return [Time]
173
+ #
174
+ # @!attribute [rw] role_name_arn
175
+ # The Amazon Resource Name (ARN) of the Role with an attached
176
+ # permissions policy to interact with the provided AWS services.
177
+ # @return [String]
178
+ #
179
+ # @!attribute [rw] destination_s3_bucket_name
180
+ # The name (friendly name, not ARN) of the destination S3 bucket.
181
+ # @return [String]
182
+ #
183
+ # @!attribute [rw] destination_s3_prefix
184
+ # (Optional) The desired S3 prefix for the published data set, similar
185
+ # to a directory path in standard file systems. For example, if given
186
+ # the bucket name "mybucket" and the prefix "myprefix/mydatasets",
187
+ # the output file "outputfile" would be published to
188
+ # "s3://mybucket/myprefix/mydatasets/outputfile". If the prefix
189
+ # directory structure does not exist, it will be created. If no prefix
190
+ # is provided, the data set will be published to the S3 bucket root.
191
+ # @return [String]
192
+ #
193
+ # @!attribute [rw] sns_topic_arn
194
+ # Amazon Resource Name (ARN) for the SNS Topic that will be notified
195
+ # when the data set has been published or if an error has occurred.
196
+ # @return [String]
197
+ #
198
+ # @!attribute [rw] customer_defined_values
199
+ # (Optional) Key-value pairs which will be returned, unmodified, in
200
+ # the Amazon SNS notification message and the data set metadata file.
201
+ # @return [Hash<String,String>]
202
+ class StartSupportDataExportRequest < Struct.new(
203
+ :data_set_type,
204
+ :from_date,
205
+ :role_name_arn,
206
+ :destination_s3_bucket_name,
207
+ :destination_s3_prefix,
208
+ :sns_topic_arn,
209
+ :customer_defined_values)
210
+ include Aws::Structure
211
+ end
212
+
213
+ # Container for the result of the StartSupportDataExport operation.
214
+ # @!attribute [rw] data_set_request_id
215
+ # A unique identifier representing a specific request to the
216
+ # StartSupportDataExport operation. This identifier can be used to
217
+ # correlate a request with notifications from the SNS topic.
218
+ # @return [String]
219
+ class StartSupportDataExportResult < Struct.new(
220
+ :data_set_request_id)
221
+ include Aws::Structure
222
+ end
223
+
224
+ end
225
+ end
226
+ end
metadata ADDED
@@ -0,0 +1,80 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: aws-sdk-marketplacecommerceanalytics
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0.rc1
5
+ platform: ruby
6
+ authors:
7
+ - Amazon Web Services
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-12-05 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: aws-sdk-core
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '='
18
+ - !ruby/object:Gem::Version
19
+ version: 3.0.0.rc1
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '='
25
+ - !ruby/object:Gem::Version
26
+ version: 3.0.0.rc1
27
+ - !ruby/object:Gem::Dependency
28
+ name: aws-sigv4
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.0'
41
+ description: Official AWS Ruby gem for AWS Marketplace Commerce Analytics. This gem
42
+ is part of the AWS SDK for Ruby.
43
+ email:
44
+ - trevrowe@amazon.com
45
+ executables: []
46
+ extensions: []
47
+ extra_rdoc_files: []
48
+ files:
49
+ - lib/aws-sdk-marketplacecommerceanalytics.rb
50
+ - lib/aws-sdk-marketplacecommerceanalytics/client.rb
51
+ - lib/aws-sdk-marketplacecommerceanalytics/client_api.rb
52
+ - lib/aws-sdk-marketplacecommerceanalytics/customizations.rb
53
+ - lib/aws-sdk-marketplacecommerceanalytics/errors.rb
54
+ - lib/aws-sdk-marketplacecommerceanalytics/resource.rb
55
+ - lib/aws-sdk-marketplacecommerceanalytics/types.rb
56
+ homepage: http://github.com/aws/aws-sdk-ruby
57
+ licenses:
58
+ - Apache-2.0
59
+ metadata: {}
60
+ post_install_message:
61
+ rdoc_options: []
62
+ require_paths:
63
+ - lib
64
+ required_ruby_version: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ required_rubygems_version: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - ">"
72
+ - !ruby/object:Gem::Version
73
+ version: 1.3.1
74
+ requirements: []
75
+ rubyforge_project:
76
+ rubygems_version: 2.5.1
77
+ signing_key:
78
+ specification_version: 4
79
+ summary: AWS SDK for Ruby - AWS Marketplace Commerce Analytics
80
+ test_files: []