aws-sdk-marketplacecommerceanalytics 1.0.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
@@ -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: []