aws-sdk-appflow 1.19.0 → 1.51.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -27,7 +27,11 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
- require 'aws-sdk-core/plugins/signature_v4.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
+ require 'aws-sdk-core/plugins/request_compression.rb'
32
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
33
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
34
+ require 'aws-sdk-core/plugins/sign.rb'
31
35
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
32
36
 
33
37
  Aws::Plugins::GlobalConfiguration.add_identifier(:appflow)
@@ -73,8 +77,13 @@ module Aws::Appflow
73
77
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
78
  add_plugin(Aws::Plugins::TransferEncoding)
75
79
  add_plugin(Aws::Plugins::HttpChecksum)
76
- add_plugin(Aws::Plugins::SignatureV4)
80
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
81
+ add_plugin(Aws::Plugins::RequestCompression)
82
+ add_plugin(Aws::Plugins::DefaultsMode)
83
+ add_plugin(Aws::Plugins::RecursionDetection)
84
+ add_plugin(Aws::Plugins::Sign)
77
85
  add_plugin(Aws::Plugins::Protocols::RestJson)
86
+ add_plugin(Aws::Appflow::Plugins::Endpoints)
78
87
 
79
88
  # @overload initialize(options)
80
89
  # @param [Hash] options
@@ -175,10 +184,18 @@ module Aws::Appflow
175
184
  # Used only in `standard` and adaptive retry modes. Specifies whether to apply
176
185
  # a clock skew correction and retry requests with skewed client clocks.
177
186
  #
187
+ # @option options [String] :defaults_mode ("legacy")
188
+ # See {Aws::DefaultsModeConfiguration} for a list of the
189
+ # accepted modes and the configuration defaults that are included.
190
+ #
178
191
  # @option options [Boolean] :disable_host_prefix_injection (false)
179
192
  # Set to true to disable SDK automatically adding host prefix
180
193
  # to default service endpoint when available.
181
194
  #
195
+ # @option options [Boolean] :disable_request_compression (false)
196
+ # When set to 'true' the request body will not be compressed
197
+ # for supported operations.
198
+ #
182
199
  # @option options [String] :endpoint
183
200
  # The client endpoint is normally constructed from the `:region`
184
201
  # option. You should only configure an `:endpoint` when connecting
@@ -199,6 +216,10 @@ module Aws::Appflow
199
216
  # @option options [Boolean] :endpoint_discovery (false)
200
217
  # When set to `true`, endpoint discovery will be enabled for operations when available.
201
218
  #
219
+ # @option options [Boolean] :ignore_configured_endpoint_urls
220
+ # Setting to true disables use of endpoint URLs provided via environment
221
+ # variables and the shared configuration file.
222
+ #
202
223
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
203
224
  # The log formatter.
204
225
  #
@@ -219,6 +240,11 @@ module Aws::Appflow
219
240
  # Used when loading credentials from the shared credentials file
220
241
  # at HOME/.aws/credentials. When not specified, 'default' is used.
221
242
  #
243
+ # @option options [Integer] :request_min_compression_size_bytes (10240)
244
+ # The minimum size in bytes that triggers compression for request
245
+ # bodies. The value must be non-negative integer value between 0
246
+ # and 10485780 bytes inclusive.
247
+ #
222
248
  # @option options [Proc] :retry_backoff
223
249
  # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
224
250
  # This option is only used in the `legacy` retry mode.
@@ -264,6 +290,11 @@ module Aws::Appflow
264
290
  # in the future.
265
291
  #
266
292
  #
293
+ # @option options [String] :sdk_ua_app_id
294
+ # A unique and opaque application ID that is appended to the
295
+ # User-Agent header as app/<sdk_ua_app_id>. It should have a
296
+ # maximum length of 50.
297
+ #
267
298
  # @option options [String] :secret_access_key
268
299
  #
269
300
  # @option options [String] :session_token
@@ -277,6 +308,19 @@ module Aws::Appflow
277
308
  # ** Please note ** When response stubbing is enabled, no HTTP
278
309
  # requests are made, and retries are disabled.
279
310
  #
311
+ # @option options [Aws::TokenProvider] :token_provider
312
+ # A Bearer Token Provider. This can be an instance of any one of the
313
+ # following classes:
314
+ #
315
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
316
+ # tokens.
317
+ #
318
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
319
+ # access token generated from `aws login`.
320
+ #
321
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
322
+ # will be used to search for tokens configured for your profile in shared configuration files.
323
+ #
280
324
  # @option options [Boolean] :use_dualstack_endpoint
281
325
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
282
326
  # will be used if available.
@@ -290,6 +334,9 @@ module Aws::Appflow
290
334
  # When `true`, request parameters are validated before
291
335
  # sending the request.
292
336
  #
337
+ # @option options [Aws::Appflow::EndpointProvider] :endpoint_provider
338
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::Appflow::EndpointParameters`
339
+ #
293
340
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
294
341
  # requests through. Formatted like 'http://proxy.com:123'.
295
342
  #
@@ -297,7 +344,7 @@ module Aws::Appflow
297
344
  # seconds to wait when opening a HTTP session before raising a
298
345
  # `Timeout::Error`.
299
346
  #
300
- # @option options [Integer] :http_read_timeout (60) The default
347
+ # @option options [Float] :http_read_timeout (60) The default
301
348
  # number of seconds to wait for response data. This value can
302
349
  # safely be set per-request on the session.
303
350
  #
@@ -313,6 +360,9 @@ module Aws::Appflow
313
360
  # disables this behaviour. This value can safely be set per
314
361
  # request on the session.
315
362
  #
363
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
364
+ # in seconds.
365
+ #
316
366
  # @option options [Boolean] :http_wire_trace (false) When `true`,
317
367
  # HTTP debug output will be sent to the `:logger`.
318
368
  #
@@ -338,11 +388,80 @@ module Aws::Appflow
338
388
 
339
389
  # @!group API Operations
340
390
 
391
+ # Cancels active runs for a flow.
392
+ #
393
+ # You can cancel all of the active runs for a flow, or you can cancel
394
+ # specific runs by providing their IDs.
395
+ #
396
+ # You can cancel a flow run only when the run is in progress. You can't
397
+ # cancel a run that has already completed or failed. You also can't
398
+ # cancel a run that's scheduled to occur but hasn't started yet. To
399
+ # prevent a scheduled run, you can deactivate the flow with the
400
+ # `StopFlow` action.
401
+ #
402
+ # You cannot resume a run after you cancel it.
403
+ #
404
+ # When you send your request, the status for each run becomes
405
+ # `CancelStarted`. When the cancellation completes, the status becomes
406
+ # `Canceled`.
407
+ #
408
+ # <note markdown="1"> When you cancel a run, you still incur charges for any data that the
409
+ # run already processed before the cancellation. If the run had already
410
+ # written some data to the flow destination, then that data remains in
411
+ # the destination. If you configured the flow to use a batch API (such
412
+ # as the Salesforce Bulk API 2.0), then the run will finish reading or
413
+ # writing its entire batch of data after the cancellation. For these
414
+ # operations, the data processing charges for Amazon AppFlow apply. For
415
+ # the pricing information, see [Amazon AppFlow pricing][1].
416
+ #
417
+ # </note>
418
+ #
419
+ #
420
+ #
421
+ # [1]: http://aws.amazon.com/appflow/pricing/
422
+ #
423
+ # @option params [required, String] :flow_name
424
+ # The name of a flow with active runs that you want to cancel.
425
+ #
426
+ # @option params [Array<String>] :execution_ids
427
+ # The ID of each active run to cancel. These runs must belong to the
428
+ # flow you specify in your request.
429
+ #
430
+ # If you omit this parameter, your request ends all active runs that
431
+ # belong to the flow.
432
+ #
433
+ # @return [Types::CancelFlowExecutionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
434
+ #
435
+ # * {Types::CancelFlowExecutionsResponse#invalid_executions #invalid_executions} => Array&lt;String&gt;
436
+ #
437
+ # @example Request syntax with placeholder values
438
+ #
439
+ # resp = client.cancel_flow_executions({
440
+ # flow_name: "FlowName", # required
441
+ # execution_ids: ["ExecutionId"],
442
+ # })
443
+ #
444
+ # @example Response structure
445
+ #
446
+ # resp.invalid_executions #=> Array
447
+ # resp.invalid_executions[0] #=> String
448
+ #
449
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/CancelFlowExecutions AWS API Documentation
450
+ #
451
+ # @overload cancel_flow_executions(params = {})
452
+ # @param [Hash] params ({})
453
+ def cancel_flow_executions(params = {}, options = {})
454
+ req = build_request(:cancel_flow_executions, params)
455
+ req.send_request(options)
456
+ end
457
+
341
458
  # Creates a new connector profile associated with your Amazon Web
342
459
  # Services account. There is a soft quota of 100 connector profiles per
343
460
  # Amazon Web Services account. If you need more connector profiles than
344
461
  # this quota allows, you can submit a request to the Amazon AppFlow team
345
- # through the Amazon AppFlow support channel.
462
+ # through the Amazon AppFlow support channel. In each connector profile
463
+ # that you create, you can provide the credentials and properties for
464
+ # only one connector.
346
465
  #
347
466
  # @option params [required, String] :connector_profile_name
348
467
  # The name of the connector profile. The name is unique for each
@@ -357,6 +476,11 @@ module Aws::Appflow
357
476
  # @option params [required, String] :connector_type
358
477
  # The type of connector, such as Salesforce, Amplitude, and so on.
359
478
  #
479
+ # @option params [String] :connector_label
480
+ # The label of the connector. The label is unique for each
481
+ # `ConnectorRegistration` in your Amazon Web Services account. Only
482
+ # needed if calling for CUSTOMCONNECTOR connector type/.
483
+ #
360
484
  # @option params [required, String] :connection_mode
361
485
  # Indicates the connection mode and specifies whether it is public or
362
486
  # private. Private flows use Amazon Web Services PrivateLink to route
@@ -366,6 +490,26 @@ module Aws::Appflow
366
490
  # @option params [required, Types::ConnectorProfileConfig] :connector_profile_config
367
491
  # Defines the connector-specific configuration and credentials.
368
492
  #
493
+ # @option params [String] :client_token
494
+ # The `clientToken` parameter is an idempotency token. It ensures that
495
+ # your `CreateConnectorProfile` request completes only once. You choose
496
+ # the value to pass. For example, if you don't receive a response from
497
+ # your request, you can safely retry the request with the same
498
+ # `clientToken` parameter value.
499
+ #
500
+ # If you omit a `clientToken` value, the Amazon Web Services SDK that
501
+ # you are using inserts a value for you. This way, the SDK can safely
502
+ # retry requests multiple times after a network error. You must provide
503
+ # your own value for other use cases.
504
+ #
505
+ # If you specify input parameters that differ from your first request,
506
+ # an error occurs. If you use a different value for `clientToken`,
507
+ # Amazon AppFlow considers it a new call to `CreateConnectorProfile`.
508
+ # The token is active for 8 hours.
509
+ #
510
+ # **A suitable default value is auto-generated.** You should normally
511
+ # not need to pass this option.**
512
+ #
369
513
  # @return [Types::CreateConnectorProfileResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
370
514
  #
371
515
  # * {Types::CreateConnectorProfileResponse#connector_profile_arn #connector_profile_arn} => String
@@ -375,7 +519,8 @@ module Aws::Appflow
375
519
  # resp = client.create_connector_profile({
376
520
  # connector_profile_name: "ConnectorProfileName", # required
377
521
  # kms_arn: "KMSArn",
378
- # connector_type: "Salesforce", # required, accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData
522
+ # connector_type: "Salesforce", # required, accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData, CustomConnector, Pardot
523
+ # connector_label: "ConnectorLabel",
379
524
  # connection_mode: "Public", # required, accepts Public, Private
380
525
  # connector_profile_config: { # required
381
526
  # connector_profile_properties: { # required
@@ -398,14 +543,20 @@ module Aws::Appflow
398
543
  # instance_url: "InstanceUrl", # required
399
544
  # },
400
545
  # redshift: {
401
- # database_url: "DatabaseUrl", # required
546
+ # database_url: "DatabaseUrl",
402
547
  # bucket_name: "BucketName", # required
403
548
  # bucket_prefix: "BucketPrefix",
404
549
  # role_arn: "RoleArn", # required
550
+ # data_api_role_arn: "DataApiRoleArn",
551
+ # is_redshift_serverless: false,
552
+ # cluster_identifier: "ClusterIdentifier",
553
+ # workgroup_name: "WorkgroupName",
554
+ # database_name: "DatabaseName",
405
555
  # },
406
556
  # salesforce: {
407
557
  # instance_url: "InstanceUrl",
408
558
  # is_sandbox_environment: false,
559
+ # use_private_link_for_metadata_and_authorization: false,
409
560
  # },
410
561
  # service_now: {
411
562
  # instance_url: "InstanceUrl", # required
@@ -444,9 +595,27 @@ module Aws::Appflow
444
595
  # auth_code_url: "AuthCodeUrl", # required
445
596
  # o_auth_scopes: ["OAuthScope"], # required
446
597
  # },
598
+ # disable_sso: false,
599
+ # },
600
+ # custom_connector: {
601
+ # profile_properties: {
602
+ # "ProfilePropertyKey" => "ProfilePropertyValue",
603
+ # },
604
+ # o_auth_2_properties: {
605
+ # token_url: "TokenUrl", # required
606
+ # o_auth_2_grant_type: "CLIENT_CREDENTIALS", # required, accepts CLIENT_CREDENTIALS, AUTHORIZATION_CODE, JWT_BEARER
607
+ # token_url_custom_properties: {
608
+ # "CustomPropertyKey" => "CustomPropertyValue",
609
+ # },
610
+ # },
611
+ # },
612
+ # pardot: {
613
+ # instance_url: "InstanceUrl",
614
+ # is_sandbox_environment: false,
615
+ # business_unit_id: "BusinessUnitId",
447
616
  # },
448
617
  # },
449
- # connector_profile_credentials: { # required
618
+ # connector_profile_credentials: {
450
619
  # amplitude: {
451
620
  # api_key: "ApiKey", # required
452
621
  # secret_key: "SecretKey", # required
@@ -492,8 +661,8 @@ module Aws::Appflow
492
661
  # },
493
662
  # },
494
663
  # redshift: {
495
- # username: "Username", # required
496
- # password: "Password", # required
664
+ # username: "String",
665
+ # password: "Password",
497
666
  # },
498
667
  # salesforce: {
499
668
  # access_token: "AccessToken",
@@ -503,10 +672,22 @@ module Aws::Appflow
503
672
  # redirect_uri: "RedirectUri",
504
673
  # },
505
674
  # client_credentials_arn: "ClientCredentialsArn",
675
+ # o_auth_2_grant_type: "CLIENT_CREDENTIALS", # accepts CLIENT_CREDENTIALS, AUTHORIZATION_CODE, JWT_BEARER
676
+ # jwt_token: "JwtToken",
506
677
  # },
507
678
  # service_now: {
508
- # username: "Username", # required
509
- # password: "Password", # required
679
+ # username: "Username",
680
+ # password: "Password",
681
+ # o_auth_2_credentials: {
682
+ # client_id: "ClientId",
683
+ # client_secret: "ClientSecret",
684
+ # access_token: "AccessToken",
685
+ # refresh_token: "RefreshToken",
686
+ # o_auth_request: {
687
+ # auth_code: "AuthCode",
688
+ # redirect_uri: "RedirectUri",
689
+ # },
690
+ # },
510
691
  # },
511
692
  # singular: {
512
693
  # api_key: "ApiKey", # required
@@ -556,8 +737,45 @@ module Aws::Appflow
556
737
  # },
557
738
  # },
558
739
  # },
740
+ # custom_connector: {
741
+ # authentication_type: "OAUTH2", # required, accepts OAUTH2, APIKEY, BASIC, CUSTOM
742
+ # basic: {
743
+ # username: "Username", # required
744
+ # password: "Password", # required
745
+ # },
746
+ # oauth2: {
747
+ # client_id: "ClientId",
748
+ # client_secret: "ClientSecret",
749
+ # access_token: "AccessToken",
750
+ # refresh_token: "RefreshToken",
751
+ # o_auth_request: {
752
+ # auth_code: "AuthCode",
753
+ # redirect_uri: "RedirectUri",
754
+ # },
755
+ # },
756
+ # api_key: {
757
+ # api_key: "ApiKey", # required
758
+ # api_secret_key: "ApiSecretKey",
759
+ # },
760
+ # custom: {
761
+ # custom_authentication_type: "CustomAuthenticationType", # required
762
+ # credentials_map: {
763
+ # "CredentialsMapKey" => "CredentialsMapValue",
764
+ # },
765
+ # },
766
+ # },
767
+ # pardot: {
768
+ # access_token: "AccessToken",
769
+ # refresh_token: "RefreshToken",
770
+ # o_auth_request: {
771
+ # auth_code: "AuthCode",
772
+ # redirect_uri: "RedirectUri",
773
+ # },
774
+ # client_credentials_arn: "ClientCredentialsArn",
775
+ # },
559
776
  # },
560
777
  # },
778
+ # client_token: "ClientToken",
561
779
  # })
562
780
  #
563
781
  # @example Response structure
@@ -611,6 +829,32 @@ module Aws::Appflow
611
829
  # @option params [Hash<String,String>] :tags
612
830
  # The tags used to organize, track, or control access for your flow.
613
831
  #
832
+ # @option params [Types::MetadataCatalogConfig] :metadata_catalog_config
833
+ # Specifies the configuration that Amazon AppFlow uses when it catalogs
834
+ # the data that's transferred by the associated flow. When Amazon
835
+ # AppFlow catalogs the data from a flow, it stores metadata in a data
836
+ # catalog.
837
+ #
838
+ # @option params [String] :client_token
839
+ # The `clientToken` parameter is an idempotency token. It ensures that
840
+ # your `CreateFlow` request completes only once. You choose the value to
841
+ # pass. For example, if you don't receive a response from your request,
842
+ # you can safely retry the request with the same `clientToken` parameter
843
+ # value.
844
+ #
845
+ # If you omit a `clientToken` value, the Amazon Web Services SDK that
846
+ # you are using inserts a value for you. This way, the SDK can safely
847
+ # retry requests multiple times after a network error. You must provide
848
+ # your own value for other use cases.
849
+ #
850
+ # If you specify input parameters that differ from your first request,
851
+ # an error occurs. If you use a different value for `clientToken`,
852
+ # Amazon AppFlow considers it a new call to `CreateFlow`. The token is
853
+ # active for 8 hours.
854
+ #
855
+ # **A suitable default value is auto-generated.** You should normally
856
+ # not need to pass this option.**
857
+ #
614
858
  # @return [Types::CreateFlowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
615
859
  #
616
860
  # * {Types::CreateFlowResponse#flow_arn #flow_arn} => String
@@ -633,11 +877,13 @@ module Aws::Appflow
633
877
  # timezone: "Timezone",
634
878
  # schedule_offset: 1,
635
879
  # first_execution_from: Time.now,
880
+ # flow_error_deactivation_threshold: 1,
636
881
  # },
637
882
  # },
638
883
  # },
639
884
  # source_flow_config: { # required
640
- # connector_type: "Salesforce", # required, accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData
885
+ # connector_type: "Salesforce", # required, accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData, CustomConnector, Pardot
886
+ # api_version: "ApiVersion",
641
887
  # connector_profile_name: "ConnectorProfileName",
642
888
  # source_connector_properties: { # required
643
889
  # amplitude: {
@@ -669,6 +915,7 @@ module Aws::Appflow
669
915
  # object: "Object", # required
670
916
  # enable_dynamic_field_update: false,
671
917
  # include_deleted_records: false,
918
+ # data_transfer_api: "AUTOMATIC", # accepts AUTOMATIC, BULKV2, REST_SYNC
672
919
  # },
673
920
  # service_now: {
674
921
  # object: "Object", # required
@@ -694,6 +941,25 @@ module Aws::Appflow
694
941
  # },
695
942
  # sapo_data: {
696
943
  # object_path: "Object",
944
+ # parallelism_config: {
945
+ # max_parallelism: 1, # required
946
+ # },
947
+ # pagination_config: {
948
+ # max_page_size: 1, # required
949
+ # },
950
+ # },
951
+ # custom_connector: {
952
+ # entity_name: "EntityName", # required
953
+ # custom_properties: {
954
+ # "CustomPropertyKey" => "CustomPropertyValue",
955
+ # },
956
+ # data_transfer_api: {
957
+ # name: "DataTransferApiTypeName",
958
+ # type: "SYNC", # accepts SYNC, ASYNC, AUTOMATIC
959
+ # },
960
+ # },
961
+ # pardot: {
962
+ # object: "Object", # required
697
963
  # },
698
964
  # },
699
965
  # incremental_pull_config: {
@@ -702,7 +968,8 @@ module Aws::Appflow
702
968
  # },
703
969
  # destination_flow_config_list: [ # required
704
970
  # {
705
- # connector_type: "Salesforce", # required, accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData
971
+ # connector_type: "Salesforce", # required, accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData, CustomConnector, Pardot
972
+ # api_version: "ApiVersion",
706
973
  # connector_profile_name: "ConnectorProfileName",
707
974
  # destination_connector_properties: { # required
708
975
  # redshift: {
@@ -723,10 +990,13 @@ module Aws::Appflow
723
990
  # prefix_config: {
724
991
  # prefix_type: "FILENAME", # accepts FILENAME, PATH, PATH_AND_FILENAME
725
992
  # prefix_format: "YEAR", # accepts YEAR, MONTH, DAY, HOUR, MINUTE
993
+ # path_prefix_hierarchy: ["EXECUTION_ID"], # accepts EXECUTION_ID, SCHEMA_VERSION
726
994
  # },
727
995
  # aggregation_config: {
728
996
  # aggregation_type: "None", # accepts None, SingleFile
997
+ # target_file_size: 1,
729
998
  # },
999
+ # preserve_source_data_typing: false,
730
1000
  # },
731
1001
  # },
732
1002
  # salesforce: {
@@ -737,7 +1007,8 @@ module Aws::Appflow
737
1007
  # bucket_prefix: "BucketPrefix",
738
1008
  # bucket_name: "BucketName",
739
1009
  # },
740
- # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE
1010
+ # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
1011
+ # data_transfer_api: "AUTOMATIC", # accepts AUTOMATIC, BULKV2, REST_SYNC
741
1012
  # },
742
1013
  # snowflake: {
743
1014
  # object: "Object", # required
@@ -767,9 +1038,11 @@ module Aws::Appflow
767
1038
  # prefix_config: { # required
768
1039
  # prefix_type: "FILENAME", # accepts FILENAME, PATH, PATH_AND_FILENAME
769
1040
  # prefix_format: "YEAR", # accepts YEAR, MONTH, DAY, HOUR, MINUTE
1041
+ # path_prefix_hierarchy: ["EXECUTION_ID"], # accepts EXECUTION_ID, SCHEMA_VERSION
770
1042
  # },
771
1043
  # aggregation_config: {
772
1044
  # aggregation_type: "None", # accepts None, SingleFile
1045
+ # target_file_size: 1,
773
1046
  # },
774
1047
  # },
775
1048
  # },
@@ -793,7 +1066,42 @@ module Aws::Appflow
793
1066
  # bucket_prefix: "BucketPrefix",
794
1067
  # bucket_name: "BucketName",
795
1068
  # },
796
- # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE
1069
+ # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
1070
+ # },
1071
+ # marketo: {
1072
+ # object: "Object", # required
1073
+ # error_handling_config: {
1074
+ # fail_on_first_destination_error: false,
1075
+ # bucket_prefix: "BucketPrefix",
1076
+ # bucket_name: "BucketName",
1077
+ # },
1078
+ # },
1079
+ # custom_connector: {
1080
+ # entity_name: "EntityName", # required
1081
+ # error_handling_config: {
1082
+ # fail_on_first_destination_error: false,
1083
+ # bucket_prefix: "BucketPrefix",
1084
+ # bucket_name: "BucketName",
1085
+ # },
1086
+ # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
1087
+ # id_field_names: ["Name"],
1088
+ # custom_properties: {
1089
+ # "CustomPropertyKey" => "CustomPropertyValue",
1090
+ # },
1091
+ # },
1092
+ # sapo_data: {
1093
+ # object_path: "Object", # required
1094
+ # success_response_handling_config: {
1095
+ # bucket_prefix: "BucketPrefix",
1096
+ # bucket_name: "BucketName",
1097
+ # },
1098
+ # id_field_names: ["Name"],
1099
+ # error_handling_config: {
1100
+ # fail_on_first_destination_error: false,
1101
+ # bucket_prefix: "BucketPrefix",
1102
+ # bucket_name: "BucketName",
1103
+ # },
1104
+ # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
797
1105
  # },
798
1106
  # },
799
1107
  # },
@@ -817,9 +1125,11 @@ module Aws::Appflow
817
1125
  # veeva: "PROJECTION", # accepts PROJECTION, LESS_THAN, GREATER_THAN, CONTAINS, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
818
1126
  # zendesk: "PROJECTION", # accepts PROJECTION, GREATER_THAN, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
819
1127
  # sapo_data: "PROJECTION", # accepts PROJECTION, LESS_THAN, CONTAINS, GREATER_THAN, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
1128
+ # custom_connector: "PROJECTION", # accepts PROJECTION, LESS_THAN, GREATER_THAN, CONTAINS, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
1129
+ # pardot: "PROJECTION", # accepts PROJECTION, EQUAL_TO, NO_OP, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC
820
1130
  # },
821
1131
  # destination_field: "DestinationField",
822
- # task_type: "Arithmetic", # required, accepts Arithmetic, Filter, Map, Map_all, Mask, Merge, Truncate, Validate
1132
+ # task_type: "Arithmetic", # required, accepts Arithmetic, Filter, Map, Map_all, Mask, Merge, Passthrough, Truncate, Validate, Partition
823
1133
  # task_properties: {
824
1134
  # "VALUE" => "Property",
825
1135
  # },
@@ -828,6 +1138,14 @@ module Aws::Appflow
828
1138
  # tags: {
829
1139
  # "TagKey" => "TagValue",
830
1140
  # },
1141
+ # metadata_catalog_config: {
1142
+ # glue_data_catalog: {
1143
+ # role_arn: "GlueDataCatalogIAMRole", # required
1144
+ # database_name: "GlueDataCatalogDatabaseName", # required
1145
+ # table_prefix: "GlueDataCatalogTablePrefix", # required
1146
+ # },
1147
+ # },
1148
+ # client_token: "ClientToken",
831
1149
  # })
832
1150
  #
833
1151
  # @example Response structure
@@ -902,8 +1220,135 @@ module Aws::Appflow
902
1220
  req.send_request(options)
903
1221
  end
904
1222
 
1223
+ # Describes the given custom connector registered in your Amazon Web
1224
+ # Services account. This API can be used for custom connectors that are
1225
+ # registered in your account and also for Amazon authored connectors.
1226
+ #
1227
+ # @option params [required, String] :connector_type
1228
+ # The connector type, such as CUSTOMCONNECTOR, Saleforce, Marketo.
1229
+ # Please choose CUSTOMCONNECTOR for Lambda based custom connectors.
1230
+ #
1231
+ # @option params [String] :connector_label
1232
+ # The label of the connector. The label is unique for each
1233
+ # `ConnectorRegistration` in your Amazon Web Services account. Only
1234
+ # needed if calling for CUSTOMCONNECTOR connector type/.
1235
+ #
1236
+ # @return [Types::DescribeConnectorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1237
+ #
1238
+ # * {Types::DescribeConnectorResponse#connector_configuration #connector_configuration} => Types::ConnectorConfiguration
1239
+ #
1240
+ # @example Request syntax with placeholder values
1241
+ #
1242
+ # resp = client.describe_connector({
1243
+ # connector_type: "Salesforce", # required, accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData, CustomConnector, Pardot
1244
+ # connector_label: "ConnectorLabel",
1245
+ # })
1246
+ #
1247
+ # @example Response structure
1248
+ #
1249
+ # resp.connector_configuration.can_use_as_source #=> Boolean
1250
+ # resp.connector_configuration.can_use_as_destination #=> Boolean
1251
+ # resp.connector_configuration.supported_destination_connectors #=> Array
1252
+ # resp.connector_configuration.supported_destination_connectors[0] #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData", "CustomConnector", "Pardot"
1253
+ # resp.connector_configuration.supported_scheduling_frequencies #=> Array
1254
+ # resp.connector_configuration.supported_scheduling_frequencies[0] #=> String, one of "BYMINUTE", "HOURLY", "DAILY", "WEEKLY", "MONTHLY", "ONCE"
1255
+ # resp.connector_configuration.is_private_link_enabled #=> Boolean
1256
+ # resp.connector_configuration.is_private_link_endpoint_url_required #=> Boolean
1257
+ # resp.connector_configuration.supported_trigger_types #=> Array
1258
+ # resp.connector_configuration.supported_trigger_types[0] #=> String, one of "Scheduled", "Event", "OnDemand"
1259
+ # resp.connector_configuration.connector_metadata.google_analytics.o_auth_scopes #=> Array
1260
+ # resp.connector_configuration.connector_metadata.google_analytics.o_auth_scopes[0] #=> String
1261
+ # resp.connector_configuration.connector_metadata.salesforce.o_auth_scopes #=> Array
1262
+ # resp.connector_configuration.connector_metadata.salesforce.o_auth_scopes[0] #=> String
1263
+ # resp.connector_configuration.connector_metadata.salesforce.data_transfer_apis #=> Array
1264
+ # resp.connector_configuration.connector_metadata.salesforce.data_transfer_apis[0] #=> String, one of "AUTOMATIC", "BULKV2", "REST_SYNC"
1265
+ # resp.connector_configuration.connector_metadata.salesforce.oauth2_grant_types_supported #=> Array
1266
+ # resp.connector_configuration.connector_metadata.salesforce.oauth2_grant_types_supported[0] #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE", "JWT_BEARER"
1267
+ # resp.connector_configuration.connector_metadata.slack.o_auth_scopes #=> Array
1268
+ # resp.connector_configuration.connector_metadata.slack.o_auth_scopes[0] #=> String
1269
+ # resp.connector_configuration.connector_metadata.snowflake.supported_regions #=> Array
1270
+ # resp.connector_configuration.connector_metadata.snowflake.supported_regions[0] #=> String
1271
+ # resp.connector_configuration.connector_metadata.zendesk.o_auth_scopes #=> Array
1272
+ # resp.connector_configuration.connector_metadata.zendesk.o_auth_scopes[0] #=> String
1273
+ # resp.connector_configuration.connector_metadata.honeycode.o_auth_scopes #=> Array
1274
+ # resp.connector_configuration.connector_metadata.honeycode.o_auth_scopes[0] #=> String
1275
+ # resp.connector_configuration.connector_type #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData", "CustomConnector", "Pardot"
1276
+ # resp.connector_configuration.connector_label #=> String
1277
+ # resp.connector_configuration.connector_description #=> String
1278
+ # resp.connector_configuration.connector_owner #=> String
1279
+ # resp.connector_configuration.connector_name #=> String
1280
+ # resp.connector_configuration.connector_version #=> String
1281
+ # resp.connector_configuration.connector_arn #=> String
1282
+ # resp.connector_configuration.connector_modes #=> Array
1283
+ # resp.connector_configuration.connector_modes[0] #=> String
1284
+ # resp.connector_configuration.authentication_config.is_basic_auth_supported #=> Boolean
1285
+ # resp.connector_configuration.authentication_config.is_api_key_auth_supported #=> Boolean
1286
+ # resp.connector_configuration.authentication_config.is_o_auth_2_supported #=> Boolean
1287
+ # resp.connector_configuration.authentication_config.is_custom_auth_supported #=> Boolean
1288
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth_scopes #=> Array
1289
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth_scopes[0] #=> String
1290
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.token_urls #=> Array
1291
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.token_urls[0] #=> String
1292
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.auth_code_urls #=> Array
1293
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.auth_code_urls[0] #=> String
1294
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth2_grant_types_supported #=> Array
1295
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth2_grant_types_supported[0] #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE", "JWT_BEARER"
1296
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth2_custom_properties #=> Array
1297
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].key #=> String
1298
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].is_required #=> Boolean
1299
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].label #=> String
1300
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].description #=> String
1301
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].is_sensitive_field #=> Boolean
1302
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].connector_supplied_values #=> Array
1303
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].connector_supplied_values[0] #=> String
1304
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].type #=> String, one of "TOKEN_URL", "AUTH_URL"
1305
+ # resp.connector_configuration.authentication_config.custom_auth_configs #=> Array
1306
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].custom_authentication_type #=> String
1307
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters #=> Array
1308
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters[0].key #=> String
1309
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters[0].is_required #=> Boolean
1310
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters[0].label #=> String
1311
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters[0].description #=> String
1312
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters[0].is_sensitive_field #=> Boolean
1313
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters[0].connector_supplied_values #=> Array
1314
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters[0].connector_supplied_values[0] #=> String
1315
+ # resp.connector_configuration.connector_runtime_settings #=> Array
1316
+ # resp.connector_configuration.connector_runtime_settings[0].key #=> String
1317
+ # resp.connector_configuration.connector_runtime_settings[0].data_type #=> String
1318
+ # resp.connector_configuration.connector_runtime_settings[0].is_required #=> Boolean
1319
+ # resp.connector_configuration.connector_runtime_settings[0].label #=> String
1320
+ # resp.connector_configuration.connector_runtime_settings[0].description #=> String
1321
+ # resp.connector_configuration.connector_runtime_settings[0].scope #=> String
1322
+ # resp.connector_configuration.connector_runtime_settings[0].connector_supplied_value_options #=> Array
1323
+ # resp.connector_configuration.connector_runtime_settings[0].connector_supplied_value_options[0] #=> String
1324
+ # resp.connector_configuration.supported_api_versions #=> Array
1325
+ # resp.connector_configuration.supported_api_versions[0] #=> String
1326
+ # resp.connector_configuration.supported_operators #=> Array
1327
+ # resp.connector_configuration.supported_operators[0] #=> String, one of "PROJECTION", "LESS_THAN", "GREATER_THAN", "CONTAINS", "BETWEEN", "LESS_THAN_OR_EQUAL_TO", "GREATER_THAN_OR_EQUAL_TO", "EQUAL_TO", "NOT_EQUAL_TO", "ADDITION", "MULTIPLICATION", "DIVISION", "SUBTRACTION", "MASK_ALL", "MASK_FIRST_N", "MASK_LAST_N", "VALIDATE_NON_NULL", "VALIDATE_NON_ZERO", "VALIDATE_NON_NEGATIVE", "VALIDATE_NUMERIC", "NO_OP"
1328
+ # resp.connector_configuration.supported_write_operations #=> Array
1329
+ # resp.connector_configuration.supported_write_operations[0] #=> String, one of "INSERT", "UPSERT", "UPDATE", "DELETE"
1330
+ # resp.connector_configuration.connector_provisioning_type #=> String, one of "LAMBDA"
1331
+ # resp.connector_configuration.connector_provisioning_config.lambda.lambda_arn #=> String
1332
+ # resp.connector_configuration.logo_url #=> String
1333
+ # resp.connector_configuration.registered_at #=> Time
1334
+ # resp.connector_configuration.registered_by #=> String
1335
+ # resp.connector_configuration.supported_data_transfer_types #=> Array
1336
+ # resp.connector_configuration.supported_data_transfer_types[0] #=> String, one of "RECORD", "FILE"
1337
+ # resp.connector_configuration.supported_data_transfer_apis #=> Array
1338
+ # resp.connector_configuration.supported_data_transfer_apis[0].name #=> String
1339
+ # resp.connector_configuration.supported_data_transfer_apis[0].type #=> String, one of "SYNC", "ASYNC", "AUTOMATIC"
1340
+ #
1341
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/DescribeConnector AWS API Documentation
1342
+ #
1343
+ # @overload describe_connector(params = {})
1344
+ # @param [Hash] params ({})
1345
+ def describe_connector(params = {}, options = {})
1346
+ req = build_request(:describe_connector, params)
1347
+ req.send_request(options)
1348
+ end
1349
+
905
1350
  # Provides details regarding the entity used with the connector, with a
906
- # description of the data model for each entity.
1351
+ # description of the data model for each field in that entity.
907
1352
  #
908
1353
  # @option params [required, String] :connector_entity_name
909
1354
  # The entity name for that connector.
@@ -916,6 +1361,9 @@ module Aws::Appflow
916
1361
  # The name of the connector profile. The name is unique for each
917
1362
  # `ConnectorProfile` in the Amazon Web Services account.
918
1363
  #
1364
+ # @option params [String] :api_version
1365
+ # The version of the API that's used by the connector.
1366
+ #
919
1367
  # @return [Types::DescribeConnectorEntityResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
920
1368
  #
921
1369
  # * {Types::DescribeConnectorEntityResponse#connector_entity_fields #connector_entity_fields} => Array&lt;Types::ConnectorEntityField&gt;
@@ -923,30 +1371,45 @@ module Aws::Appflow
923
1371
  # @example Request syntax with placeholder values
924
1372
  #
925
1373
  # resp = client.describe_connector_entity({
926
- # connector_entity_name: "Name", # required
927
- # connector_type: "Salesforce", # accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData
1374
+ # connector_entity_name: "EntityName", # required
1375
+ # connector_type: "Salesforce", # accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData, CustomConnector, Pardot
928
1376
  # connector_profile_name: "ConnectorProfileName",
1377
+ # api_version: "ApiVersion",
929
1378
  # })
930
1379
  #
931
1380
  # @example Response structure
932
1381
  #
933
1382
  # resp.connector_entity_fields #=> Array
934
1383
  # resp.connector_entity_fields[0].identifier #=> String
1384
+ # resp.connector_entity_fields[0].parent_identifier #=> String
935
1385
  # resp.connector_entity_fields[0].label #=> String
1386
+ # resp.connector_entity_fields[0].is_primary_key #=> Boolean
1387
+ # resp.connector_entity_fields[0].default_value #=> String
1388
+ # resp.connector_entity_fields[0].is_deprecated #=> Boolean
936
1389
  # resp.connector_entity_fields[0].supported_field_type_details.v1.field_type #=> String
937
1390
  # resp.connector_entity_fields[0].supported_field_type_details.v1.filter_operators #=> Array
938
1391
  # resp.connector_entity_fields[0].supported_field_type_details.v1.filter_operators[0] #=> String, one of "PROJECTION", "LESS_THAN", "GREATER_THAN", "CONTAINS", "BETWEEN", "LESS_THAN_OR_EQUAL_TO", "GREATER_THAN_OR_EQUAL_TO", "EQUAL_TO", "NOT_EQUAL_TO", "ADDITION", "MULTIPLICATION", "DIVISION", "SUBTRACTION", "MASK_ALL", "MASK_FIRST_N", "MASK_LAST_N", "VALIDATE_NON_NULL", "VALIDATE_NON_ZERO", "VALIDATE_NON_NEGATIVE", "VALIDATE_NUMERIC", "NO_OP"
939
1392
  # resp.connector_entity_fields[0].supported_field_type_details.v1.supported_values #=> Array
940
1393
  # resp.connector_entity_fields[0].supported_field_type_details.v1.supported_values[0] #=> String
1394
+ # resp.connector_entity_fields[0].supported_field_type_details.v1.value_regex_pattern #=> String
1395
+ # resp.connector_entity_fields[0].supported_field_type_details.v1.supported_date_format #=> String
1396
+ # resp.connector_entity_fields[0].supported_field_type_details.v1.field_value_range.maximum #=> Float
1397
+ # resp.connector_entity_fields[0].supported_field_type_details.v1.field_value_range.minimum #=> Float
1398
+ # resp.connector_entity_fields[0].supported_field_type_details.v1.field_length_range.maximum #=> Float
1399
+ # resp.connector_entity_fields[0].supported_field_type_details.v1.field_length_range.minimum #=> Float
941
1400
  # resp.connector_entity_fields[0].description #=> String
942
1401
  # resp.connector_entity_fields[0].source_properties.is_retrievable #=> Boolean
943
1402
  # resp.connector_entity_fields[0].source_properties.is_queryable #=> Boolean
1403
+ # resp.connector_entity_fields[0].source_properties.is_timestamp_field_for_incremental_queries #=> Boolean
944
1404
  # resp.connector_entity_fields[0].destination_properties.is_creatable #=> Boolean
945
1405
  # resp.connector_entity_fields[0].destination_properties.is_nullable #=> Boolean
946
1406
  # resp.connector_entity_fields[0].destination_properties.is_upsertable #=> Boolean
947
1407
  # resp.connector_entity_fields[0].destination_properties.is_updatable #=> Boolean
1408
+ # resp.connector_entity_fields[0].destination_properties.is_defaulted_on_create #=> Boolean
948
1409
  # resp.connector_entity_fields[0].destination_properties.supported_write_operations #=> Array
949
- # resp.connector_entity_fields[0].destination_properties.supported_write_operations[0] #=> String, one of "INSERT", "UPSERT", "UPDATE"
1410
+ # resp.connector_entity_fields[0].destination_properties.supported_write_operations[0] #=> String, one of "INSERT", "UPSERT", "UPDATE", "DELETE"
1411
+ # resp.connector_entity_fields[0].custom_properties #=> Hash
1412
+ # resp.connector_entity_fields[0].custom_properties["CustomPropertyKey"] #=> String
950
1413
  #
951
1414
  # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/DescribeConnectorEntity AWS API Documentation
952
1415
  #
@@ -972,6 +1435,11 @@ module Aws::Appflow
972
1435
  # @option params [String] :connector_type
973
1436
  # The type of connector, such as Salesforce, Amplitude, and so on.
974
1437
  #
1438
+ # @option params [String] :connector_label
1439
+ # The name of the connector. The name is unique for each
1440
+ # `ConnectorRegistration` in your Amazon Web Services account. Only
1441
+ # needed if calling for CUSTOMCONNECTOR connector type/.
1442
+ #
975
1443
  # @option params [Integer] :max_results
976
1444
  # Specifies the maximum number of items that should be returned in the
977
1445
  # result set. The default for `maxResults` is 20 (for all paginated API
@@ -991,7 +1459,8 @@ module Aws::Appflow
991
1459
  #
992
1460
  # resp = client.describe_connector_profiles({
993
1461
  # connector_profile_names: ["ConnectorProfileName"],
994
- # connector_type: "Salesforce", # accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData
1462
+ # connector_type: "Salesforce", # accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData, CustomConnector, Pardot
1463
+ # connector_label: "ConnectorLabel",
995
1464
  # max_results: 1,
996
1465
  # next_token: "NextToken",
997
1466
  # })
@@ -1001,7 +1470,8 @@ module Aws::Appflow
1001
1470
  # resp.connector_profile_details #=> Array
1002
1471
  # resp.connector_profile_details[0].connector_profile_arn #=> String
1003
1472
  # resp.connector_profile_details[0].connector_profile_name #=> String
1004
- # resp.connector_profile_details[0].connector_type #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData"
1473
+ # resp.connector_profile_details[0].connector_type #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData", "CustomConnector", "Pardot"
1474
+ # resp.connector_profile_details[0].connector_label #=> String
1005
1475
  # resp.connector_profile_details[0].connection_mode #=> String, one of "Public", "Private"
1006
1476
  # resp.connector_profile_details[0].credentials_arn #=> String
1007
1477
  # resp.connector_profile_details[0].connector_profile_properties.datadog.instance_url #=> String
@@ -1012,8 +1482,14 @@ module Aws::Appflow
1012
1482
  # resp.connector_profile_details[0].connector_profile_properties.redshift.bucket_name #=> String
1013
1483
  # resp.connector_profile_details[0].connector_profile_properties.redshift.bucket_prefix #=> String
1014
1484
  # resp.connector_profile_details[0].connector_profile_properties.redshift.role_arn #=> String
1485
+ # resp.connector_profile_details[0].connector_profile_properties.redshift.data_api_role_arn #=> String
1486
+ # resp.connector_profile_details[0].connector_profile_properties.redshift.is_redshift_serverless #=> Boolean
1487
+ # resp.connector_profile_details[0].connector_profile_properties.redshift.cluster_identifier #=> String
1488
+ # resp.connector_profile_details[0].connector_profile_properties.redshift.workgroup_name #=> String
1489
+ # resp.connector_profile_details[0].connector_profile_properties.redshift.database_name #=> String
1015
1490
  # resp.connector_profile_details[0].connector_profile_properties.salesforce.instance_url #=> String
1016
1491
  # resp.connector_profile_details[0].connector_profile_properties.salesforce.is_sandbox_environment #=> Boolean
1492
+ # resp.connector_profile_details[0].connector_profile_properties.salesforce.use_private_link_for_metadata_and_authorization #=> Boolean
1017
1493
  # resp.connector_profile_details[0].connector_profile_properties.service_now.instance_url #=> String
1018
1494
  # resp.connector_profile_details[0].connector_profile_properties.slack.instance_url #=> String
1019
1495
  # resp.connector_profile_details[0].connector_profile_properties.snowflake.warehouse #=> String
@@ -1035,6 +1511,16 @@ module Aws::Appflow
1035
1511
  # resp.connector_profile_details[0].connector_profile_properties.sapo_data.o_auth_properties.auth_code_url #=> String
1036
1512
  # resp.connector_profile_details[0].connector_profile_properties.sapo_data.o_auth_properties.o_auth_scopes #=> Array
1037
1513
  # resp.connector_profile_details[0].connector_profile_properties.sapo_data.o_auth_properties.o_auth_scopes[0] #=> String
1514
+ # resp.connector_profile_details[0].connector_profile_properties.sapo_data.disable_sso #=> Boolean
1515
+ # resp.connector_profile_details[0].connector_profile_properties.custom_connector.profile_properties #=> Hash
1516
+ # resp.connector_profile_details[0].connector_profile_properties.custom_connector.profile_properties["ProfilePropertyKey"] #=> String
1517
+ # resp.connector_profile_details[0].connector_profile_properties.custom_connector.o_auth_2_properties.token_url #=> String
1518
+ # resp.connector_profile_details[0].connector_profile_properties.custom_connector.o_auth_2_properties.o_auth_2_grant_type #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE", "JWT_BEARER"
1519
+ # resp.connector_profile_details[0].connector_profile_properties.custom_connector.o_auth_2_properties.token_url_custom_properties #=> Hash
1520
+ # resp.connector_profile_details[0].connector_profile_properties.custom_connector.o_auth_2_properties.token_url_custom_properties["CustomPropertyKey"] #=> String
1521
+ # resp.connector_profile_details[0].connector_profile_properties.pardot.instance_url #=> String
1522
+ # resp.connector_profile_details[0].connector_profile_properties.pardot.is_sandbox_environment #=> Boolean
1523
+ # resp.connector_profile_details[0].connector_profile_properties.pardot.business_unit_id #=> String
1038
1524
  # resp.connector_profile_details[0].created_at #=> Time
1039
1525
  # resp.connector_profile_details[0].last_updated_at #=> Time
1040
1526
  # resp.connector_profile_details[0].private_connection_provisioning_state.status #=> String, one of "FAILED", "PENDING", "CREATED"
@@ -1062,12 +1548,17 @@ module Aws::Appflow
1062
1548
  # @option params [Array<String>] :connector_types
1063
1549
  # The type of connector, such as Salesforce, Amplitude, and so on.
1064
1550
  #
1551
+ # @option params [Integer] :max_results
1552
+ # The maximum number of items that should be returned in the result set.
1553
+ # The default is 20.
1554
+ #
1065
1555
  # @option params [String] :next_token
1066
1556
  # The pagination token for the next page of data.
1067
1557
  #
1068
1558
  # @return [Types::DescribeConnectorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1069
1559
  #
1070
1560
  # * {Types::DescribeConnectorsResponse#connector_configurations #connector_configurations} => Hash&lt;String,Types::ConnectorConfiguration&gt;
1561
+ # * {Types::DescribeConnectorsResponse#connectors #connectors} => Array&lt;Types::ConnectorDetail&gt;
1071
1562
  # * {Types::DescribeConnectorsResponse#next_token #next_token} => String
1072
1563
  #
1073
1564
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
@@ -1075,7 +1566,8 @@ module Aws::Appflow
1075
1566
  # @example Request syntax with placeholder values
1076
1567
  #
1077
1568
  # resp = client.describe_connectors({
1078
- # connector_types: ["Salesforce"], # accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData
1569
+ # connector_types: ["Salesforce"], # accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData, CustomConnector, Pardot
1570
+ # max_results: 1,
1079
1571
  # next_token: "NextToken",
1080
1572
  # })
1081
1573
  #
@@ -1085,7 +1577,7 @@ module Aws::Appflow
1085
1577
  # resp.connector_configurations["ConnectorType"].can_use_as_source #=> Boolean
1086
1578
  # resp.connector_configurations["ConnectorType"].can_use_as_destination #=> Boolean
1087
1579
  # resp.connector_configurations["ConnectorType"].supported_destination_connectors #=> Array
1088
- # resp.connector_configurations["ConnectorType"].supported_destination_connectors[0] #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData"
1580
+ # resp.connector_configurations["ConnectorType"].supported_destination_connectors[0] #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData", "CustomConnector", "Pardot"
1089
1581
  # resp.connector_configurations["ConnectorType"].supported_scheduling_frequencies #=> Array
1090
1582
  # resp.connector_configurations["ConnectorType"].supported_scheduling_frequencies[0] #=> String, one of "BYMINUTE", "HOURLY", "DAILY", "WEEKLY", "MONTHLY", "ONCE"
1091
1583
  # resp.connector_configurations["ConnectorType"].is_private_link_enabled #=> Boolean
@@ -1096,6 +1588,10 @@ module Aws::Appflow
1096
1588
  # resp.connector_configurations["ConnectorType"].connector_metadata.google_analytics.o_auth_scopes[0] #=> String
1097
1589
  # resp.connector_configurations["ConnectorType"].connector_metadata.salesforce.o_auth_scopes #=> Array
1098
1590
  # resp.connector_configurations["ConnectorType"].connector_metadata.salesforce.o_auth_scopes[0] #=> String
1591
+ # resp.connector_configurations["ConnectorType"].connector_metadata.salesforce.data_transfer_apis #=> Array
1592
+ # resp.connector_configurations["ConnectorType"].connector_metadata.salesforce.data_transfer_apis[0] #=> String, one of "AUTOMATIC", "BULKV2", "REST_SYNC"
1593
+ # resp.connector_configurations["ConnectorType"].connector_metadata.salesforce.oauth2_grant_types_supported #=> Array
1594
+ # resp.connector_configurations["ConnectorType"].connector_metadata.salesforce.oauth2_grant_types_supported[0] #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE", "JWT_BEARER"
1099
1595
  # resp.connector_configurations["ConnectorType"].connector_metadata.slack.o_auth_scopes #=> Array
1100
1596
  # resp.connector_configurations["ConnectorType"].connector_metadata.slack.o_auth_scopes[0] #=> String
1101
1597
  # resp.connector_configurations["ConnectorType"].connector_metadata.snowflake.supported_regions #=> Array
@@ -1104,6 +1600,86 @@ module Aws::Appflow
1104
1600
  # resp.connector_configurations["ConnectorType"].connector_metadata.zendesk.o_auth_scopes[0] #=> String
1105
1601
  # resp.connector_configurations["ConnectorType"].connector_metadata.honeycode.o_auth_scopes #=> Array
1106
1602
  # resp.connector_configurations["ConnectorType"].connector_metadata.honeycode.o_auth_scopes[0] #=> String
1603
+ # resp.connector_configurations["ConnectorType"].connector_type #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData", "CustomConnector", "Pardot"
1604
+ # resp.connector_configurations["ConnectorType"].connector_label #=> String
1605
+ # resp.connector_configurations["ConnectorType"].connector_description #=> String
1606
+ # resp.connector_configurations["ConnectorType"].connector_owner #=> String
1607
+ # resp.connector_configurations["ConnectorType"].connector_name #=> String
1608
+ # resp.connector_configurations["ConnectorType"].connector_version #=> String
1609
+ # resp.connector_configurations["ConnectorType"].connector_arn #=> String
1610
+ # resp.connector_configurations["ConnectorType"].connector_modes #=> Array
1611
+ # resp.connector_configurations["ConnectorType"].connector_modes[0] #=> String
1612
+ # resp.connector_configurations["ConnectorType"].authentication_config.is_basic_auth_supported #=> Boolean
1613
+ # resp.connector_configurations["ConnectorType"].authentication_config.is_api_key_auth_supported #=> Boolean
1614
+ # resp.connector_configurations["ConnectorType"].authentication_config.is_o_auth_2_supported #=> Boolean
1615
+ # resp.connector_configurations["ConnectorType"].authentication_config.is_custom_auth_supported #=> Boolean
1616
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth_scopes #=> Array
1617
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth_scopes[0] #=> String
1618
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.token_urls #=> Array
1619
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.token_urls[0] #=> String
1620
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.auth_code_urls #=> Array
1621
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.auth_code_urls[0] #=> String
1622
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth2_grant_types_supported #=> Array
1623
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth2_grant_types_supported[0] #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE", "JWT_BEARER"
1624
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth2_custom_properties #=> Array
1625
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].key #=> String
1626
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].is_required #=> Boolean
1627
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].label #=> String
1628
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].description #=> String
1629
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].is_sensitive_field #=> Boolean
1630
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].connector_supplied_values #=> Array
1631
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].connector_supplied_values[0] #=> String
1632
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth2_custom_properties[0].type #=> String, one of "TOKEN_URL", "AUTH_URL"
1633
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs #=> Array
1634
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].custom_authentication_type #=> String
1635
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters #=> Array
1636
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters[0].key #=> String
1637
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters[0].is_required #=> Boolean
1638
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters[0].label #=> String
1639
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters[0].description #=> String
1640
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters[0].is_sensitive_field #=> Boolean
1641
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters[0].connector_supplied_values #=> Array
1642
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters[0].connector_supplied_values[0] #=> String
1643
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings #=> Array
1644
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].key #=> String
1645
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].data_type #=> String
1646
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].is_required #=> Boolean
1647
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].label #=> String
1648
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].description #=> String
1649
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].scope #=> String
1650
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].connector_supplied_value_options #=> Array
1651
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].connector_supplied_value_options[0] #=> String
1652
+ # resp.connector_configurations["ConnectorType"].supported_api_versions #=> Array
1653
+ # resp.connector_configurations["ConnectorType"].supported_api_versions[0] #=> String
1654
+ # resp.connector_configurations["ConnectorType"].supported_operators #=> Array
1655
+ # resp.connector_configurations["ConnectorType"].supported_operators[0] #=> String, one of "PROJECTION", "LESS_THAN", "GREATER_THAN", "CONTAINS", "BETWEEN", "LESS_THAN_OR_EQUAL_TO", "GREATER_THAN_OR_EQUAL_TO", "EQUAL_TO", "NOT_EQUAL_TO", "ADDITION", "MULTIPLICATION", "DIVISION", "SUBTRACTION", "MASK_ALL", "MASK_FIRST_N", "MASK_LAST_N", "VALIDATE_NON_NULL", "VALIDATE_NON_ZERO", "VALIDATE_NON_NEGATIVE", "VALIDATE_NUMERIC", "NO_OP"
1656
+ # resp.connector_configurations["ConnectorType"].supported_write_operations #=> Array
1657
+ # resp.connector_configurations["ConnectorType"].supported_write_operations[0] #=> String, one of "INSERT", "UPSERT", "UPDATE", "DELETE"
1658
+ # resp.connector_configurations["ConnectorType"].connector_provisioning_type #=> String, one of "LAMBDA"
1659
+ # resp.connector_configurations["ConnectorType"].connector_provisioning_config.lambda.lambda_arn #=> String
1660
+ # resp.connector_configurations["ConnectorType"].logo_url #=> String
1661
+ # resp.connector_configurations["ConnectorType"].registered_at #=> Time
1662
+ # resp.connector_configurations["ConnectorType"].registered_by #=> String
1663
+ # resp.connector_configurations["ConnectorType"].supported_data_transfer_types #=> Array
1664
+ # resp.connector_configurations["ConnectorType"].supported_data_transfer_types[0] #=> String, one of "RECORD", "FILE"
1665
+ # resp.connector_configurations["ConnectorType"].supported_data_transfer_apis #=> Array
1666
+ # resp.connector_configurations["ConnectorType"].supported_data_transfer_apis[0].name #=> String
1667
+ # resp.connector_configurations["ConnectorType"].supported_data_transfer_apis[0].type #=> String, one of "SYNC", "ASYNC", "AUTOMATIC"
1668
+ # resp.connectors #=> Array
1669
+ # resp.connectors[0].connector_description #=> String
1670
+ # resp.connectors[0].connector_name #=> String
1671
+ # resp.connectors[0].connector_owner #=> String
1672
+ # resp.connectors[0].connector_version #=> String
1673
+ # resp.connectors[0].application_type #=> String
1674
+ # resp.connectors[0].connector_type #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData", "CustomConnector", "Pardot"
1675
+ # resp.connectors[0].connector_label #=> String
1676
+ # resp.connectors[0].registered_at #=> Time
1677
+ # resp.connectors[0].registered_by #=> String
1678
+ # resp.connectors[0].connector_provisioning_type #=> String, one of "LAMBDA"
1679
+ # resp.connectors[0].connector_modes #=> Array
1680
+ # resp.connectors[0].connector_modes[0] #=> String
1681
+ # resp.connectors[0].supported_data_transfer_types #=> Array
1682
+ # resp.connectors[0].supported_data_transfer_types[0] #=> String, one of "RECORD", "FILE"
1107
1683
  # resp.next_token #=> String
1108
1684
  #
1109
1685
  # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/DescribeConnectors AWS API Documentation
@@ -1139,6 +1715,9 @@ module Aws::Appflow
1139
1715
  # * {Types::DescribeFlowResponse#created_by #created_by} => String
1140
1716
  # * {Types::DescribeFlowResponse#last_updated_by #last_updated_by} => String
1141
1717
  # * {Types::DescribeFlowResponse#tags #tags} => Hash&lt;String,String&gt;
1718
+ # * {Types::DescribeFlowResponse#metadata_catalog_config #metadata_catalog_config} => Types::MetadataCatalogConfig
1719
+ # * {Types::DescribeFlowResponse#last_run_metadata_catalog_details #last_run_metadata_catalog_details} => Array&lt;Types::MetadataCatalogDetail&gt;
1720
+ # * {Types::DescribeFlowResponse#schema_version #schema_version} => Integer
1142
1721
  #
1143
1722
  # @example Request syntax with placeholder values
1144
1723
  #
@@ -1154,7 +1733,8 @@ module Aws::Appflow
1154
1733
  # resp.kms_arn #=> String
1155
1734
  # resp.flow_status #=> String, one of "Active", "Deprecated", "Deleted", "Draft", "Errored", "Suspended"
1156
1735
  # resp.flow_status_message #=> String
1157
- # resp.source_flow_config.connector_type #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData"
1736
+ # resp.source_flow_config.connector_type #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData", "CustomConnector", "Pardot"
1737
+ # resp.source_flow_config.api_version #=> String
1158
1738
  # resp.source_flow_config.connector_profile_name #=> String
1159
1739
  # resp.source_flow_config.source_connector_properties.amplitude.object #=> String
1160
1740
  # resp.source_flow_config.source_connector_properties.datadog.object #=> String
@@ -1168,6 +1748,7 @@ module Aws::Appflow
1168
1748
  # resp.source_flow_config.source_connector_properties.salesforce.object #=> String
1169
1749
  # resp.source_flow_config.source_connector_properties.salesforce.enable_dynamic_field_update #=> Boolean
1170
1750
  # resp.source_flow_config.source_connector_properties.salesforce.include_deleted_records #=> Boolean
1751
+ # resp.source_flow_config.source_connector_properties.salesforce.data_transfer_api #=> String, one of "AUTOMATIC", "BULKV2", "REST_SYNC"
1171
1752
  # resp.source_flow_config.source_connector_properties.service_now.object #=> String
1172
1753
  # resp.source_flow_config.source_connector_properties.singular.object #=> String
1173
1754
  # resp.source_flow_config.source_connector_properties.slack.object #=> String
@@ -1179,9 +1760,18 @@ module Aws::Appflow
1179
1760
  # resp.source_flow_config.source_connector_properties.veeva.include_all_versions #=> Boolean
1180
1761
  # resp.source_flow_config.source_connector_properties.zendesk.object #=> String
1181
1762
  # resp.source_flow_config.source_connector_properties.sapo_data.object_path #=> String
1763
+ # resp.source_flow_config.source_connector_properties.sapo_data.parallelism_config.max_parallelism #=> Integer
1764
+ # resp.source_flow_config.source_connector_properties.sapo_data.pagination_config.max_page_size #=> Integer
1765
+ # resp.source_flow_config.source_connector_properties.custom_connector.entity_name #=> String
1766
+ # resp.source_flow_config.source_connector_properties.custom_connector.custom_properties #=> Hash
1767
+ # resp.source_flow_config.source_connector_properties.custom_connector.custom_properties["CustomPropertyKey"] #=> String
1768
+ # resp.source_flow_config.source_connector_properties.custom_connector.data_transfer_api.name #=> String
1769
+ # resp.source_flow_config.source_connector_properties.custom_connector.data_transfer_api.type #=> String, one of "SYNC", "ASYNC", "AUTOMATIC"
1770
+ # resp.source_flow_config.source_connector_properties.pardot.object #=> String
1182
1771
  # resp.source_flow_config.incremental_pull_config.datetime_type_field_name #=> String
1183
1772
  # resp.destination_flow_config_list #=> Array
1184
- # resp.destination_flow_config_list[0].connector_type #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData"
1773
+ # resp.destination_flow_config_list[0].connector_type #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData", "CustomConnector", "Pardot"
1774
+ # resp.destination_flow_config_list[0].api_version #=> String
1185
1775
  # resp.destination_flow_config_list[0].connector_profile_name #=> String
1186
1776
  # resp.destination_flow_config_list[0].destination_connector_properties.redshift.object #=> String
1187
1777
  # resp.destination_flow_config_list[0].destination_connector_properties.redshift.intermediate_bucket_name #=> String
@@ -1194,14 +1784,19 @@ module Aws::Appflow
1194
1784
  # resp.destination_flow_config_list[0].destination_connector_properties.s3.s3_output_format_config.file_type #=> String, one of "CSV", "JSON", "PARQUET"
1195
1785
  # resp.destination_flow_config_list[0].destination_connector_properties.s3.s3_output_format_config.prefix_config.prefix_type #=> String, one of "FILENAME", "PATH", "PATH_AND_FILENAME"
1196
1786
  # resp.destination_flow_config_list[0].destination_connector_properties.s3.s3_output_format_config.prefix_config.prefix_format #=> String, one of "YEAR", "MONTH", "DAY", "HOUR", "MINUTE"
1787
+ # resp.destination_flow_config_list[0].destination_connector_properties.s3.s3_output_format_config.prefix_config.path_prefix_hierarchy #=> Array
1788
+ # resp.destination_flow_config_list[0].destination_connector_properties.s3.s3_output_format_config.prefix_config.path_prefix_hierarchy[0] #=> String, one of "EXECUTION_ID", "SCHEMA_VERSION"
1197
1789
  # resp.destination_flow_config_list[0].destination_connector_properties.s3.s3_output_format_config.aggregation_config.aggregation_type #=> String, one of "None", "SingleFile"
1790
+ # resp.destination_flow_config_list[0].destination_connector_properties.s3.s3_output_format_config.aggregation_config.target_file_size #=> Integer
1791
+ # resp.destination_flow_config_list[0].destination_connector_properties.s3.s3_output_format_config.preserve_source_data_typing #=> Boolean
1198
1792
  # resp.destination_flow_config_list[0].destination_connector_properties.salesforce.object #=> String
1199
1793
  # resp.destination_flow_config_list[0].destination_connector_properties.salesforce.id_field_names #=> Array
1200
1794
  # resp.destination_flow_config_list[0].destination_connector_properties.salesforce.id_field_names[0] #=> String
1201
1795
  # resp.destination_flow_config_list[0].destination_connector_properties.salesforce.error_handling_config.fail_on_first_destination_error #=> Boolean
1202
1796
  # resp.destination_flow_config_list[0].destination_connector_properties.salesforce.error_handling_config.bucket_prefix #=> String
1203
1797
  # resp.destination_flow_config_list[0].destination_connector_properties.salesforce.error_handling_config.bucket_name #=> String
1204
- # resp.destination_flow_config_list[0].destination_connector_properties.salesforce.write_operation_type #=> String, one of "INSERT", "UPSERT", "UPDATE"
1798
+ # resp.destination_flow_config_list[0].destination_connector_properties.salesforce.write_operation_type #=> String, one of "INSERT", "UPSERT", "UPDATE", "DELETE"
1799
+ # resp.destination_flow_config_list[0].destination_connector_properties.salesforce.data_transfer_api #=> String, one of "AUTOMATIC", "BULKV2", "REST_SYNC"
1205
1800
  # resp.destination_flow_config_list[0].destination_connector_properties.snowflake.object #=> String
1206
1801
  # resp.destination_flow_config_list[0].destination_connector_properties.snowflake.intermediate_bucket_name #=> String
1207
1802
  # resp.destination_flow_config_list[0].destination_connector_properties.snowflake.bucket_prefix #=> String
@@ -1217,7 +1812,10 @@ module Aws::Appflow
1217
1812
  # resp.destination_flow_config_list[0].destination_connector_properties.upsolver.s3_output_format_config.file_type #=> String, one of "CSV", "JSON", "PARQUET"
1218
1813
  # resp.destination_flow_config_list[0].destination_connector_properties.upsolver.s3_output_format_config.prefix_config.prefix_type #=> String, one of "FILENAME", "PATH", "PATH_AND_FILENAME"
1219
1814
  # resp.destination_flow_config_list[0].destination_connector_properties.upsolver.s3_output_format_config.prefix_config.prefix_format #=> String, one of "YEAR", "MONTH", "DAY", "HOUR", "MINUTE"
1815
+ # resp.destination_flow_config_list[0].destination_connector_properties.upsolver.s3_output_format_config.prefix_config.path_prefix_hierarchy #=> Array
1816
+ # resp.destination_flow_config_list[0].destination_connector_properties.upsolver.s3_output_format_config.prefix_config.path_prefix_hierarchy[0] #=> String, one of "EXECUTION_ID", "SCHEMA_VERSION"
1220
1817
  # resp.destination_flow_config_list[0].destination_connector_properties.upsolver.s3_output_format_config.aggregation_config.aggregation_type #=> String, one of "None", "SingleFile"
1818
+ # resp.destination_flow_config_list[0].destination_connector_properties.upsolver.s3_output_format_config.aggregation_config.target_file_size #=> Integer
1221
1819
  # resp.destination_flow_config_list[0].destination_connector_properties.honeycode.object #=> String
1222
1820
  # resp.destination_flow_config_list[0].destination_connector_properties.honeycode.error_handling_config.fail_on_first_destination_error #=> Boolean
1223
1821
  # resp.destination_flow_config_list[0].destination_connector_properties.honeycode.error_handling_config.bucket_prefix #=> String
@@ -1230,10 +1828,32 @@ module Aws::Appflow
1230
1828
  # resp.destination_flow_config_list[0].destination_connector_properties.zendesk.error_handling_config.fail_on_first_destination_error #=> Boolean
1231
1829
  # resp.destination_flow_config_list[0].destination_connector_properties.zendesk.error_handling_config.bucket_prefix #=> String
1232
1830
  # resp.destination_flow_config_list[0].destination_connector_properties.zendesk.error_handling_config.bucket_name #=> String
1233
- # resp.destination_flow_config_list[0].destination_connector_properties.zendesk.write_operation_type #=> String, one of "INSERT", "UPSERT", "UPDATE"
1831
+ # resp.destination_flow_config_list[0].destination_connector_properties.zendesk.write_operation_type #=> String, one of "INSERT", "UPSERT", "UPDATE", "DELETE"
1832
+ # resp.destination_flow_config_list[0].destination_connector_properties.marketo.object #=> String
1833
+ # resp.destination_flow_config_list[0].destination_connector_properties.marketo.error_handling_config.fail_on_first_destination_error #=> Boolean
1834
+ # resp.destination_flow_config_list[0].destination_connector_properties.marketo.error_handling_config.bucket_prefix #=> String
1835
+ # resp.destination_flow_config_list[0].destination_connector_properties.marketo.error_handling_config.bucket_name #=> String
1836
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.entity_name #=> String
1837
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.error_handling_config.fail_on_first_destination_error #=> Boolean
1838
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.error_handling_config.bucket_prefix #=> String
1839
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.error_handling_config.bucket_name #=> String
1840
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.write_operation_type #=> String, one of "INSERT", "UPSERT", "UPDATE", "DELETE"
1841
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.id_field_names #=> Array
1842
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.id_field_names[0] #=> String
1843
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.custom_properties #=> Hash
1844
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.custom_properties["CustomPropertyKey"] #=> String
1845
+ # resp.destination_flow_config_list[0].destination_connector_properties.sapo_data.object_path #=> String
1846
+ # resp.destination_flow_config_list[0].destination_connector_properties.sapo_data.success_response_handling_config.bucket_prefix #=> String
1847
+ # resp.destination_flow_config_list[0].destination_connector_properties.sapo_data.success_response_handling_config.bucket_name #=> String
1848
+ # resp.destination_flow_config_list[0].destination_connector_properties.sapo_data.id_field_names #=> Array
1849
+ # resp.destination_flow_config_list[0].destination_connector_properties.sapo_data.id_field_names[0] #=> String
1850
+ # resp.destination_flow_config_list[0].destination_connector_properties.sapo_data.error_handling_config.fail_on_first_destination_error #=> Boolean
1851
+ # resp.destination_flow_config_list[0].destination_connector_properties.sapo_data.error_handling_config.bucket_prefix #=> String
1852
+ # resp.destination_flow_config_list[0].destination_connector_properties.sapo_data.error_handling_config.bucket_name #=> String
1853
+ # resp.destination_flow_config_list[0].destination_connector_properties.sapo_data.write_operation_type #=> String, one of "INSERT", "UPSERT", "UPDATE", "DELETE"
1234
1854
  # resp.last_run_execution_details.most_recent_execution_message #=> String
1235
1855
  # resp.last_run_execution_details.most_recent_execution_time #=> Time
1236
- # resp.last_run_execution_details.most_recent_execution_status #=> String, one of "InProgress", "Successful", "Error"
1856
+ # resp.last_run_execution_details.most_recent_execution_status #=> String, one of "InProgress", "Successful", "Error", "CancelStarted", "Canceled"
1237
1857
  # resp.trigger_config.trigger_type #=> String, one of "Scheduled", "Event", "OnDemand"
1238
1858
  # resp.trigger_config.trigger_properties.scheduled.schedule_expression #=> String
1239
1859
  # resp.trigger_config.trigger_properties.scheduled.data_pull_mode #=> String, one of "Incremental", "Complete"
@@ -1242,6 +1862,7 @@ module Aws::Appflow
1242
1862
  # resp.trigger_config.trigger_properties.scheduled.timezone #=> String
1243
1863
  # resp.trigger_config.trigger_properties.scheduled.schedule_offset #=> Integer
1244
1864
  # resp.trigger_config.trigger_properties.scheduled.first_execution_from #=> Time
1865
+ # resp.trigger_config.trigger_properties.scheduled.flow_error_deactivation_threshold #=> Integer
1245
1866
  # resp.tasks #=> Array
1246
1867
  # resp.tasks[0].source_fields #=> Array
1247
1868
  # resp.tasks[0].source_fields[0] #=> String
@@ -1260,8 +1881,10 @@ module Aws::Appflow
1260
1881
  # resp.tasks[0].connector_operator.veeva #=> String, one of "PROJECTION", "LESS_THAN", "GREATER_THAN", "CONTAINS", "BETWEEN", "LESS_THAN_OR_EQUAL_TO", "GREATER_THAN_OR_EQUAL_TO", "EQUAL_TO", "NOT_EQUAL_TO", "ADDITION", "MULTIPLICATION", "DIVISION", "SUBTRACTION", "MASK_ALL", "MASK_FIRST_N", "MASK_LAST_N", "VALIDATE_NON_NULL", "VALIDATE_NON_ZERO", "VALIDATE_NON_NEGATIVE", "VALIDATE_NUMERIC", "NO_OP"
1261
1882
  # resp.tasks[0].connector_operator.zendesk #=> String, one of "PROJECTION", "GREATER_THAN", "ADDITION", "MULTIPLICATION", "DIVISION", "SUBTRACTION", "MASK_ALL", "MASK_FIRST_N", "MASK_LAST_N", "VALIDATE_NON_NULL", "VALIDATE_NON_ZERO", "VALIDATE_NON_NEGATIVE", "VALIDATE_NUMERIC", "NO_OP"
1262
1883
  # resp.tasks[0].connector_operator.sapo_data #=> String, one of "PROJECTION", "LESS_THAN", "CONTAINS", "GREATER_THAN", "BETWEEN", "LESS_THAN_OR_EQUAL_TO", "GREATER_THAN_OR_EQUAL_TO", "EQUAL_TO", "NOT_EQUAL_TO", "ADDITION", "MULTIPLICATION", "DIVISION", "SUBTRACTION", "MASK_ALL", "MASK_FIRST_N", "MASK_LAST_N", "VALIDATE_NON_NULL", "VALIDATE_NON_ZERO", "VALIDATE_NON_NEGATIVE", "VALIDATE_NUMERIC", "NO_OP"
1884
+ # resp.tasks[0].connector_operator.custom_connector #=> String, one of "PROJECTION", "LESS_THAN", "GREATER_THAN", "CONTAINS", "BETWEEN", "LESS_THAN_OR_EQUAL_TO", "GREATER_THAN_OR_EQUAL_TO", "EQUAL_TO", "NOT_EQUAL_TO", "ADDITION", "MULTIPLICATION", "DIVISION", "SUBTRACTION", "MASK_ALL", "MASK_FIRST_N", "MASK_LAST_N", "VALIDATE_NON_NULL", "VALIDATE_NON_ZERO", "VALIDATE_NON_NEGATIVE", "VALIDATE_NUMERIC", "NO_OP"
1885
+ # resp.tasks[0].connector_operator.pardot #=> String, one of "PROJECTION", "EQUAL_TO", "NO_OP", "ADDITION", "MULTIPLICATION", "DIVISION", "SUBTRACTION", "MASK_ALL", "MASK_FIRST_N", "MASK_LAST_N", "VALIDATE_NON_NULL", "VALIDATE_NON_ZERO", "VALIDATE_NON_NEGATIVE", "VALIDATE_NUMERIC"
1263
1886
  # resp.tasks[0].destination_field #=> String
1264
- # resp.tasks[0].task_type #=> String, one of "Arithmetic", "Filter", "Map", "Map_all", "Mask", "Merge", "Truncate", "Validate"
1887
+ # resp.tasks[0].task_type #=> String, one of "Arithmetic", "Filter", "Map", "Map_all", "Mask", "Merge", "Passthrough", "Truncate", "Validate", "Partition"
1265
1888
  # resp.tasks[0].task_properties #=> Hash
1266
1889
  # resp.tasks[0].task_properties["OperatorPropertiesKeys"] #=> String
1267
1890
  # resp.created_at #=> Time
@@ -1270,6 +1893,19 @@ module Aws::Appflow
1270
1893
  # resp.last_updated_by #=> String
1271
1894
  # resp.tags #=> Hash
1272
1895
  # resp.tags["TagKey"] #=> String
1896
+ # resp.metadata_catalog_config.glue_data_catalog.role_arn #=> String
1897
+ # resp.metadata_catalog_config.glue_data_catalog.database_name #=> String
1898
+ # resp.metadata_catalog_config.glue_data_catalog.table_prefix #=> String
1899
+ # resp.last_run_metadata_catalog_details #=> Array
1900
+ # resp.last_run_metadata_catalog_details[0].catalog_type #=> String, one of "GLUE"
1901
+ # resp.last_run_metadata_catalog_details[0].table_name #=> String
1902
+ # resp.last_run_metadata_catalog_details[0].table_registration_output.message #=> String
1903
+ # resp.last_run_metadata_catalog_details[0].table_registration_output.result #=> String
1904
+ # resp.last_run_metadata_catalog_details[0].table_registration_output.status #=> String, one of "InProgress", "Successful", "Error", "CancelStarted", "Canceled"
1905
+ # resp.last_run_metadata_catalog_details[0].partition_registration_output.message #=> String
1906
+ # resp.last_run_metadata_catalog_details[0].partition_registration_output.result #=> String
1907
+ # resp.last_run_metadata_catalog_details[0].partition_registration_output.status #=> String, one of "InProgress", "Successful", "Error", "CancelStarted", "Canceled"
1908
+ # resp.schema_version #=> Integer
1273
1909
  #
1274
1910
  # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/DescribeFlow AWS API Documentation
1275
1911
  #
@@ -1313,16 +1949,27 @@ module Aws::Appflow
1313
1949
  #
1314
1950
  # resp.flow_executions #=> Array
1315
1951
  # resp.flow_executions[0].execution_id #=> String
1316
- # resp.flow_executions[0].execution_status #=> String, one of "InProgress", "Successful", "Error"
1952
+ # resp.flow_executions[0].execution_status #=> String, one of "InProgress", "Successful", "Error", "CancelStarted", "Canceled"
1317
1953
  # resp.flow_executions[0].execution_result.error_info.put_failures_count #=> Integer
1318
1954
  # resp.flow_executions[0].execution_result.error_info.execution_message #=> String
1319
1955
  # resp.flow_executions[0].execution_result.bytes_processed #=> Integer
1320
1956
  # resp.flow_executions[0].execution_result.bytes_written #=> Integer
1321
1957
  # resp.flow_executions[0].execution_result.records_processed #=> Integer
1958
+ # resp.flow_executions[0].execution_result.num_parallel_processes #=> Integer
1959
+ # resp.flow_executions[0].execution_result.max_page_size #=> Integer
1322
1960
  # resp.flow_executions[0].started_at #=> Time
1323
1961
  # resp.flow_executions[0].last_updated_at #=> Time
1324
1962
  # resp.flow_executions[0].data_pull_start_time #=> Time
1325
1963
  # resp.flow_executions[0].data_pull_end_time #=> Time
1964
+ # resp.flow_executions[0].metadata_catalog_details #=> Array
1965
+ # resp.flow_executions[0].metadata_catalog_details[0].catalog_type #=> String, one of "GLUE"
1966
+ # resp.flow_executions[0].metadata_catalog_details[0].table_name #=> String
1967
+ # resp.flow_executions[0].metadata_catalog_details[0].table_registration_output.message #=> String
1968
+ # resp.flow_executions[0].metadata_catalog_details[0].table_registration_output.result #=> String
1969
+ # resp.flow_executions[0].metadata_catalog_details[0].table_registration_output.status #=> String, one of "InProgress", "Successful", "Error", "CancelStarted", "Canceled"
1970
+ # resp.flow_executions[0].metadata_catalog_details[0].partition_registration_output.message #=> String
1971
+ # resp.flow_executions[0].metadata_catalog_details[0].partition_registration_output.result #=> String
1972
+ # resp.flow_executions[0].metadata_catalog_details[0].partition_registration_output.status #=> String, one of "InProgress", "Successful", "Error", "CancelStarted", "Canceled"
1326
1973
  # resp.next_token #=> String
1327
1974
  #
1328
1975
  # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/DescribeFlowExecutionRecords AWS API Documentation
@@ -1355,16 +2002,32 @@ module Aws::Appflow
1355
2002
  # roots. Otherwise, this request returns all entities supported by the
1356
2003
  # provider.
1357
2004
  #
2005
+ # @option params [String] :api_version
2006
+ # The version of the API that's used by the connector.
2007
+ #
2008
+ # @option params [Integer] :max_results
2009
+ # The maximum number of items that the operation returns in the
2010
+ # response.
2011
+ #
2012
+ # @option params [String] :next_token
2013
+ # A token that was provided by your prior `ListConnectorEntities`
2014
+ # operation if the response was too big for the page size. You specify
2015
+ # this token to get the next page of results in paginated response.
2016
+ #
1358
2017
  # @return [Types::ListConnectorEntitiesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1359
2018
  #
1360
2019
  # * {Types::ListConnectorEntitiesResponse#connector_entity_map #connector_entity_map} => Hash&lt;String,Array&lt;Types::ConnectorEntity&gt;&gt;
2020
+ # * {Types::ListConnectorEntitiesResponse#next_token #next_token} => String
1361
2021
  #
1362
2022
  # @example Request syntax with placeholder values
1363
2023
  #
1364
2024
  # resp = client.list_connector_entities({
1365
2025
  # connector_profile_name: "ConnectorProfileName",
1366
- # connector_type: "Salesforce", # accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData
2026
+ # connector_type: "Salesforce", # accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData, CustomConnector, Pardot
1367
2027
  # entities_path: "EntitiesPath",
2028
+ # api_version: "ApiVersion",
2029
+ # max_results: 1,
2030
+ # next_token: "NextToken",
1368
2031
  # })
1369
2032
  #
1370
2033
  # @example Response structure
@@ -1374,6 +2037,7 @@ module Aws::Appflow
1374
2037
  # resp.connector_entity_map["Group"][0].name #=> String
1375
2038
  # resp.connector_entity_map["Group"][0].label #=> String
1376
2039
  # resp.connector_entity_map["Group"][0].has_nested_entities #=> Boolean
2040
+ # resp.next_token #=> String
1377
2041
  #
1378
2042
  # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/ListConnectorEntities AWS API Documentation
1379
2043
  #
@@ -1384,6 +2048,60 @@ module Aws::Appflow
1384
2048
  req.send_request(options)
1385
2049
  end
1386
2050
 
2051
+ # Returns the list of all registered custom connectors in your Amazon
2052
+ # Web Services account. This API lists only custom connectors registered
2053
+ # in this account, not the Amazon Web Services authored connectors.
2054
+ #
2055
+ # @option params [Integer] :max_results
2056
+ # Specifies the maximum number of items that should be returned in the
2057
+ # result set. The default for `maxResults` is 20 (for all paginated API
2058
+ # operations).
2059
+ #
2060
+ # @option params [String] :next_token
2061
+ # The pagination token for the next page of data.
2062
+ #
2063
+ # @return [Types::ListConnectorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2064
+ #
2065
+ # * {Types::ListConnectorsResponse#connectors #connectors} => Array&lt;Types::ConnectorDetail&gt;
2066
+ # * {Types::ListConnectorsResponse#next_token #next_token} => String
2067
+ #
2068
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2069
+ #
2070
+ # @example Request syntax with placeholder values
2071
+ #
2072
+ # resp = client.list_connectors({
2073
+ # max_results: 1,
2074
+ # next_token: "NextToken",
2075
+ # })
2076
+ #
2077
+ # @example Response structure
2078
+ #
2079
+ # resp.connectors #=> Array
2080
+ # resp.connectors[0].connector_description #=> String
2081
+ # resp.connectors[0].connector_name #=> String
2082
+ # resp.connectors[0].connector_owner #=> String
2083
+ # resp.connectors[0].connector_version #=> String
2084
+ # resp.connectors[0].application_type #=> String
2085
+ # resp.connectors[0].connector_type #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData", "CustomConnector", "Pardot"
2086
+ # resp.connectors[0].connector_label #=> String
2087
+ # resp.connectors[0].registered_at #=> Time
2088
+ # resp.connectors[0].registered_by #=> String
2089
+ # resp.connectors[0].connector_provisioning_type #=> String, one of "LAMBDA"
2090
+ # resp.connectors[0].connector_modes #=> Array
2091
+ # resp.connectors[0].connector_modes[0] #=> String
2092
+ # resp.connectors[0].supported_data_transfer_types #=> Array
2093
+ # resp.connectors[0].supported_data_transfer_types[0] #=> String, one of "RECORD", "FILE"
2094
+ # resp.next_token #=> String
2095
+ #
2096
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/ListConnectors AWS API Documentation
2097
+ #
2098
+ # @overload list_connectors(params = {})
2099
+ # @param [Hash] params ({})
2100
+ def list_connectors(params = {}, options = {})
2101
+ req = build_request(:list_connectors, params)
2102
+ req.send_request(options)
2103
+ end
2104
+
1387
2105
  # Lists all of the flows associated with your account.
1388
2106
  #
1389
2107
  # @option params [Integer] :max_results
@@ -1414,8 +2132,10 @@ module Aws::Appflow
1414
2132
  # resp.flows[0].description #=> String
1415
2133
  # resp.flows[0].flow_name #=> String
1416
2134
  # resp.flows[0].flow_status #=> String, one of "Active", "Deprecated", "Deleted", "Draft", "Errored", "Suspended"
1417
- # resp.flows[0].source_connector_type #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData"
1418
- # resp.flows[0].destination_connector_type #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData"
2135
+ # resp.flows[0].source_connector_type #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData", "CustomConnector", "Pardot"
2136
+ # resp.flows[0].source_connector_label #=> String
2137
+ # resp.flows[0].destination_connector_type #=> String, one of "Salesforce", "Singular", "Slack", "Redshift", "S3", "Marketo", "Googleanalytics", "Zendesk", "Servicenow", "Datadog", "Trendmicro", "Snowflake", "Dynatrace", "Infornexus", "Amplitude", "Veeva", "EventBridge", "LookoutMetrics", "Upsolver", "Honeycode", "CustomerProfiles", "SAPOData", "CustomConnector", "Pardot"
2138
+ # resp.flows[0].destination_connector_label #=> String
1419
2139
  # resp.flows[0].trigger_type #=> String, one of "Scheduled", "Event", "OnDemand"
1420
2140
  # resp.flows[0].created_at #=> Time
1421
2141
  # resp.flows[0].last_updated_at #=> Time
@@ -1425,7 +2145,7 @@ module Aws::Appflow
1425
2145
  # resp.flows[0].tags["TagKey"] #=> String
1426
2146
  # resp.flows[0].last_run_execution_details.most_recent_execution_message #=> String
1427
2147
  # resp.flows[0].last_run_execution_details.most_recent_execution_time #=> Time
1428
- # resp.flows[0].last_run_execution_details.most_recent_execution_status #=> String, one of "InProgress", "Successful", "Error"
2148
+ # resp.flows[0].last_run_execution_details.most_recent_execution_status #=> String, one of "InProgress", "Successful", "Error", "CancelStarted", "Canceled"
1429
2149
  # resp.next_token #=> String
1430
2150
  #
1431
2151
  # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/ListFlows AWS API Documentation
@@ -1466,6 +2186,166 @@ module Aws::Appflow
1466
2186
  req.send_request(options)
1467
2187
  end
1468
2188
 
2189
+ # Registers a new custom connector with your Amazon Web Services
2190
+ # account. Before you can register the connector, you must deploy the
2191
+ # associated AWS lambda function in your account.
2192
+ #
2193
+ # @option params [String] :connector_label
2194
+ # The name of the connector. The name is unique for each
2195
+ # `ConnectorRegistration` in your Amazon Web Services account.
2196
+ #
2197
+ # @option params [String] :description
2198
+ # A description about the connector that's being registered.
2199
+ #
2200
+ # @option params [String] :connector_provisioning_type
2201
+ # The provisioning type of the connector. Currently the only supported
2202
+ # value is LAMBDA.
2203
+ #
2204
+ # @option params [Types::ConnectorProvisioningConfig] :connector_provisioning_config
2205
+ # The provisioning type of the connector. Currently the only supported
2206
+ # value is LAMBDA.
2207
+ #
2208
+ # @option params [String] :client_token
2209
+ # The `clientToken` parameter is an idempotency token. It ensures that
2210
+ # your `RegisterConnector` request completes only once. You choose the
2211
+ # value to pass. For example, if you don't receive a response from your
2212
+ # request, you can safely retry the request with the same `clientToken`
2213
+ # parameter value.
2214
+ #
2215
+ # If you omit a `clientToken` value, the Amazon Web Services SDK that
2216
+ # you are using inserts a value for you. This way, the SDK can safely
2217
+ # retry requests multiple times after a network error. You must provide
2218
+ # your own value for other use cases.
2219
+ #
2220
+ # If you specify input parameters that differ from your first request,
2221
+ # an error occurs. If you use a different value for `clientToken`,
2222
+ # Amazon AppFlow considers it a new call to `RegisterConnector`. The
2223
+ # token is active for 8 hours.
2224
+ #
2225
+ # **A suitable default value is auto-generated.** You should normally
2226
+ # not need to pass this option.**
2227
+ #
2228
+ # @return [Types::RegisterConnectorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2229
+ #
2230
+ # * {Types::RegisterConnectorResponse#connector_arn #connector_arn} => String
2231
+ #
2232
+ # @example Request syntax with placeholder values
2233
+ #
2234
+ # resp = client.register_connector({
2235
+ # connector_label: "ConnectorLabel",
2236
+ # description: "Description",
2237
+ # connector_provisioning_type: "LAMBDA", # accepts LAMBDA
2238
+ # connector_provisioning_config: {
2239
+ # lambda: {
2240
+ # lambda_arn: "ARN", # required
2241
+ # },
2242
+ # },
2243
+ # client_token: "ClientToken",
2244
+ # })
2245
+ #
2246
+ # @example Response structure
2247
+ #
2248
+ # resp.connector_arn #=> String
2249
+ #
2250
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/RegisterConnector AWS API Documentation
2251
+ #
2252
+ # @overload register_connector(params = {})
2253
+ # @param [Hash] params ({})
2254
+ def register_connector(params = {}, options = {})
2255
+ req = build_request(:register_connector, params)
2256
+ req.send_request(options)
2257
+ end
2258
+
2259
+ # Resets metadata about your connector entities that Amazon AppFlow
2260
+ # stored in its cache. Use this action when you want Amazon AppFlow to
2261
+ # return the latest information about the data that you have in a source
2262
+ # application.
2263
+ #
2264
+ # Amazon AppFlow returns metadata about your entities when you use the
2265
+ # ListConnectorEntities or DescribeConnectorEntities actions. Following
2266
+ # these actions, Amazon AppFlow caches the metadata to reduce the number
2267
+ # of API requests that it must send to the source application. Amazon
2268
+ # AppFlow automatically resets the cache once every hour, but you can
2269
+ # use this action when you want to get the latest metadata right away.
2270
+ #
2271
+ # @option params [String] :connector_profile_name
2272
+ # The name of the connector profile that you want to reset cached
2273
+ # metadata for.
2274
+ #
2275
+ # You can omit this parameter if you're resetting the cache for any of
2276
+ # the following connectors: Amazon Connect, Amazon EventBridge, Amazon
2277
+ # Lookout for Metrics, Amazon S3, or Upsolver. If you're resetting the
2278
+ # cache for any other connector, you must include this parameter in your
2279
+ # request.
2280
+ #
2281
+ # @option params [String] :connector_type
2282
+ # The type of connector to reset cached metadata for.
2283
+ #
2284
+ # You must include this parameter in your request if you're resetting
2285
+ # the cache for any of the following connectors: Amazon Connect, Amazon
2286
+ # EventBridge, Amazon Lookout for Metrics, Amazon S3, or Upsolver. If
2287
+ # you're resetting the cache for any other connector, you can omit this
2288
+ # parameter from your request.
2289
+ #
2290
+ # @option params [String] :connector_entity_name
2291
+ # Use this parameter if you want to reset cached metadata about the
2292
+ # details for an individual entity.
2293
+ #
2294
+ # If you don't include this parameter in your request, Amazon AppFlow
2295
+ # only resets cached metadata about entity names, not entity details.
2296
+ #
2297
+ # @option params [String] :entities_path
2298
+ # Use this parameter only if you’re resetting the cached metadata about
2299
+ # a nested entity. Only some connectors support nested entities. A
2300
+ # nested entity is one that has another entity as a parent. To use this
2301
+ # parameter, specify the name of the parent entity.
2302
+ #
2303
+ # To look up the parent-child relationship of entities, you can send a
2304
+ # ListConnectorEntities request that omits the entitiesPath parameter.
2305
+ # Amazon AppFlow will return a list of top-level entities. For each one,
2306
+ # it indicates whether the entity has nested entities. Then, in a
2307
+ # subsequent ListConnectorEntities request, you can specify a parent
2308
+ # entity name for the entitiesPath parameter. Amazon AppFlow will return
2309
+ # a list of the child entities for that parent.
2310
+ #
2311
+ # @option params [String] :api_version
2312
+ # The API version that you specified in the connector profile that
2313
+ # you’re resetting cached metadata for. You must use this parameter only
2314
+ # if the connector supports multiple API versions or if the connector
2315
+ # type is CustomConnector.
2316
+ #
2317
+ # To look up how many versions a connector supports, use the
2318
+ # DescribeConnectors action. In the response, find the value that Amazon
2319
+ # AppFlow returns for the connectorVersion parameter.
2320
+ #
2321
+ # To look up the connector type, use the DescribeConnectorProfiles
2322
+ # action. In the response, find the value that Amazon AppFlow returns
2323
+ # for the connectorType parameter.
2324
+ #
2325
+ # To look up the API version that you specified in a connector profile,
2326
+ # use the DescribeConnectorProfiles action.
2327
+ #
2328
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2329
+ #
2330
+ # @example Request syntax with placeholder values
2331
+ #
2332
+ # resp = client.reset_connector_metadata_cache({
2333
+ # connector_profile_name: "ConnectorProfileName",
2334
+ # connector_type: "Salesforce", # accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData, CustomConnector, Pardot
2335
+ # connector_entity_name: "EntityName",
2336
+ # entities_path: "EntitiesPath",
2337
+ # api_version: "ApiVersion",
2338
+ # })
2339
+ #
2340
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/ResetConnectorMetadataCache AWS API Documentation
2341
+ #
2342
+ # @overload reset_connector_metadata_cache(params = {})
2343
+ # @param [Hash] params ({})
2344
+ def reset_connector_metadata_cache(params = {}, options = {})
2345
+ req = build_request(:reset_connector_metadata_cache, params)
2346
+ req.send_request(options)
2347
+ end
2348
+
1469
2349
  # Activates an existing flow. For on-demand flows, this operation runs
1470
2350
  # the flow immediately. For schedule and event-triggered flows, this
1471
2351
  # operation activates the flow.
@@ -1474,6 +2354,31 @@ module Aws::Appflow
1474
2354
  # The specified name of the flow. Spaces are not allowed. Use
1475
2355
  # underscores (\_) or hyphens (-) only.
1476
2356
  #
2357
+ # @option params [String] :client_token
2358
+ # The `clientToken` parameter is an idempotency token. It ensures that
2359
+ # your `StartFlow` request completes only once. You choose the value to
2360
+ # pass. For example, if you don't receive a response from your request,
2361
+ # you can safely retry the request with the same `clientToken` parameter
2362
+ # value.
2363
+ #
2364
+ # If you omit a `clientToken` value, the Amazon Web Services SDK that
2365
+ # you are using inserts a value for you. This way, the SDK can safely
2366
+ # retry requests multiple times after a network error. You must provide
2367
+ # your own value for other use cases.
2368
+ #
2369
+ # If you specify input parameters that differ from your first request,
2370
+ # an error occurs for flows that run on a schedule or based on an event.
2371
+ # However, the error doesn't occur for flows that run on demand. You
2372
+ # set the conditions that initiate your flow for the `triggerConfig`
2373
+ # parameter.
2374
+ #
2375
+ # If you use a different value for `clientToken`, Amazon AppFlow
2376
+ # considers it a new call to `StartFlow`. The token is active for 8
2377
+ # hours.
2378
+ #
2379
+ # **A suitable default value is auto-generated.** You should normally
2380
+ # not need to pass this option.**
2381
+ #
1477
2382
  # @return [Types::StartFlowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1478
2383
  #
1479
2384
  # * {Types::StartFlowResponse#flow_arn #flow_arn} => String
@@ -1484,6 +2389,7 @@ module Aws::Appflow
1484
2389
  #
1485
2390
  # resp = client.start_flow({
1486
2391
  # flow_name: "FlowName", # required
2392
+ # client_token: "ClientToken",
1487
2393
  # })
1488
2394
  #
1489
2395
  # @example Response structure
@@ -1562,6 +2468,36 @@ module Aws::Appflow
1562
2468
  req.send_request(options)
1563
2469
  end
1564
2470
 
2471
+ # Unregisters the custom connector registered in your account that
2472
+ # matches the connector label provided in the request.
2473
+ #
2474
+ # @option params [required, String] :connector_label
2475
+ # The label of the connector. The label is unique for each
2476
+ # `ConnectorRegistration` in your Amazon Web Services account.
2477
+ #
2478
+ # @option params [Boolean] :force_delete
2479
+ # Indicates whether Amazon AppFlow should unregister the connector, even
2480
+ # if it is currently in use in one or more connector profiles. The
2481
+ # default value is false.
2482
+ #
2483
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2484
+ #
2485
+ # @example Request syntax with placeholder values
2486
+ #
2487
+ # resp = client.unregister_connector({
2488
+ # connector_label: "ConnectorLabel", # required
2489
+ # force_delete: false,
2490
+ # })
2491
+ #
2492
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/UnregisterConnector AWS API Documentation
2493
+ #
2494
+ # @overload unregister_connector(params = {})
2495
+ # @param [Hash] params ({})
2496
+ def unregister_connector(params = {}, options = {})
2497
+ req = build_request(:unregister_connector, params)
2498
+ req.send_request(options)
2499
+ end
2500
+
1565
2501
  # Removes a tag from the specified flow.
1566
2502
  #
1567
2503
  # @option params [required, String] :resource_arn
@@ -1601,6 +2537,26 @@ module Aws::Appflow
1601
2537
  # @option params [required, Types::ConnectorProfileConfig] :connector_profile_config
1602
2538
  # Defines the connector-specific profile configuration and credentials.
1603
2539
  #
2540
+ # @option params [String] :client_token
2541
+ # The `clientToken` parameter is an idempotency token. It ensures that
2542
+ # your `UpdateConnectorProfile` request completes only once. You choose
2543
+ # the value to pass. For example, if you don't receive a response from
2544
+ # your request, you can safely retry the request with the same
2545
+ # `clientToken` parameter value.
2546
+ #
2547
+ # If you omit a `clientToken` value, the Amazon Web Services SDK that
2548
+ # you are using inserts a value for you. This way, the SDK can safely
2549
+ # retry requests multiple times after a network error. You must provide
2550
+ # your own value for other use cases.
2551
+ #
2552
+ # If you specify input parameters that differ from your first request,
2553
+ # an error occurs. If you use a different value for `clientToken`,
2554
+ # Amazon AppFlow considers it a new call to `UpdateConnectorProfile`.
2555
+ # The token is active for 8 hours.
2556
+ #
2557
+ # **A suitable default value is auto-generated.** You should normally
2558
+ # not need to pass this option.**
2559
+ #
1604
2560
  # @return [Types::UpdateConnectorProfileResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1605
2561
  #
1606
2562
  # * {Types::UpdateConnectorProfileResponse#connector_profile_arn #connector_profile_arn} => String
@@ -1631,14 +2587,20 @@ module Aws::Appflow
1631
2587
  # instance_url: "InstanceUrl", # required
1632
2588
  # },
1633
2589
  # redshift: {
1634
- # database_url: "DatabaseUrl", # required
2590
+ # database_url: "DatabaseUrl",
1635
2591
  # bucket_name: "BucketName", # required
1636
2592
  # bucket_prefix: "BucketPrefix",
1637
2593
  # role_arn: "RoleArn", # required
2594
+ # data_api_role_arn: "DataApiRoleArn",
2595
+ # is_redshift_serverless: false,
2596
+ # cluster_identifier: "ClusterIdentifier",
2597
+ # workgroup_name: "WorkgroupName",
2598
+ # database_name: "DatabaseName",
1638
2599
  # },
1639
2600
  # salesforce: {
1640
2601
  # instance_url: "InstanceUrl",
1641
2602
  # is_sandbox_environment: false,
2603
+ # use_private_link_for_metadata_and_authorization: false,
1642
2604
  # },
1643
2605
  # service_now: {
1644
2606
  # instance_url: "InstanceUrl", # required
@@ -1677,9 +2639,27 @@ module Aws::Appflow
1677
2639
  # auth_code_url: "AuthCodeUrl", # required
1678
2640
  # o_auth_scopes: ["OAuthScope"], # required
1679
2641
  # },
2642
+ # disable_sso: false,
2643
+ # },
2644
+ # custom_connector: {
2645
+ # profile_properties: {
2646
+ # "ProfilePropertyKey" => "ProfilePropertyValue",
2647
+ # },
2648
+ # o_auth_2_properties: {
2649
+ # token_url: "TokenUrl", # required
2650
+ # o_auth_2_grant_type: "CLIENT_CREDENTIALS", # required, accepts CLIENT_CREDENTIALS, AUTHORIZATION_CODE, JWT_BEARER
2651
+ # token_url_custom_properties: {
2652
+ # "CustomPropertyKey" => "CustomPropertyValue",
2653
+ # },
2654
+ # },
2655
+ # },
2656
+ # pardot: {
2657
+ # instance_url: "InstanceUrl",
2658
+ # is_sandbox_environment: false,
2659
+ # business_unit_id: "BusinessUnitId",
1680
2660
  # },
1681
2661
  # },
1682
- # connector_profile_credentials: { # required
2662
+ # connector_profile_credentials: {
1683
2663
  # amplitude: {
1684
2664
  # api_key: "ApiKey", # required
1685
2665
  # secret_key: "SecretKey", # required
@@ -1725,8 +2705,8 @@ module Aws::Appflow
1725
2705
  # },
1726
2706
  # },
1727
2707
  # redshift: {
1728
- # username: "Username", # required
1729
- # password: "Password", # required
2708
+ # username: "String",
2709
+ # password: "Password",
1730
2710
  # },
1731
2711
  # salesforce: {
1732
2712
  # access_token: "AccessToken",
@@ -1736,10 +2716,22 @@ module Aws::Appflow
1736
2716
  # redirect_uri: "RedirectUri",
1737
2717
  # },
1738
2718
  # client_credentials_arn: "ClientCredentialsArn",
2719
+ # o_auth_2_grant_type: "CLIENT_CREDENTIALS", # accepts CLIENT_CREDENTIALS, AUTHORIZATION_CODE, JWT_BEARER
2720
+ # jwt_token: "JwtToken",
1739
2721
  # },
1740
2722
  # service_now: {
1741
- # username: "Username", # required
1742
- # password: "Password", # required
2723
+ # username: "Username",
2724
+ # password: "Password",
2725
+ # o_auth_2_credentials: {
2726
+ # client_id: "ClientId",
2727
+ # client_secret: "ClientSecret",
2728
+ # access_token: "AccessToken",
2729
+ # refresh_token: "RefreshToken",
2730
+ # o_auth_request: {
2731
+ # auth_code: "AuthCode",
2732
+ # redirect_uri: "RedirectUri",
2733
+ # },
2734
+ # },
1743
2735
  # },
1744
2736
  # singular: {
1745
2737
  # api_key: "ApiKey", # required
@@ -1789,8 +2781,45 @@ module Aws::Appflow
1789
2781
  # },
1790
2782
  # },
1791
2783
  # },
2784
+ # custom_connector: {
2785
+ # authentication_type: "OAUTH2", # required, accepts OAUTH2, APIKEY, BASIC, CUSTOM
2786
+ # basic: {
2787
+ # username: "Username", # required
2788
+ # password: "Password", # required
2789
+ # },
2790
+ # oauth2: {
2791
+ # client_id: "ClientId",
2792
+ # client_secret: "ClientSecret",
2793
+ # access_token: "AccessToken",
2794
+ # refresh_token: "RefreshToken",
2795
+ # o_auth_request: {
2796
+ # auth_code: "AuthCode",
2797
+ # redirect_uri: "RedirectUri",
2798
+ # },
2799
+ # },
2800
+ # api_key: {
2801
+ # api_key: "ApiKey", # required
2802
+ # api_secret_key: "ApiSecretKey",
2803
+ # },
2804
+ # custom: {
2805
+ # custom_authentication_type: "CustomAuthenticationType", # required
2806
+ # credentials_map: {
2807
+ # "CredentialsMapKey" => "CredentialsMapValue",
2808
+ # },
2809
+ # },
2810
+ # },
2811
+ # pardot: {
2812
+ # access_token: "AccessToken",
2813
+ # refresh_token: "RefreshToken",
2814
+ # o_auth_request: {
2815
+ # auth_code: "AuthCode",
2816
+ # redirect_uri: "RedirectUri",
2817
+ # },
2818
+ # client_credentials_arn: "ClientCredentialsArn",
2819
+ # },
1792
2820
  # },
1793
2821
  # },
2822
+ # client_token: "ClientToken",
1794
2823
  # })
1795
2824
  #
1796
2825
  # @example Response structure
@@ -1806,6 +2835,75 @@ module Aws::Appflow
1806
2835
  req.send_request(options)
1807
2836
  end
1808
2837
 
2838
+ # Updates a custom connector that you've previously registered. This
2839
+ # operation updates the connector with one of the following:
2840
+ #
2841
+ # * The latest version of the AWS Lambda function that's assigned to
2842
+ # the connector
2843
+ #
2844
+ # * A new AWS Lambda function that you specify
2845
+ #
2846
+ # @option params [required, String] :connector_label
2847
+ # The name of the connector. The name is unique for each connector
2848
+ # registration in your AWS account.
2849
+ #
2850
+ # @option params [String] :description
2851
+ # A description about the update that you're applying to the connector.
2852
+ #
2853
+ # @option params [Types::ConnectorProvisioningConfig] :connector_provisioning_config
2854
+ # Contains information about the configuration of the connector being
2855
+ # registered.
2856
+ #
2857
+ # @option params [String] :client_token
2858
+ # The `clientToken` parameter is an idempotency token. It ensures that
2859
+ # your `UpdateConnectorRegistration` request completes only once. You
2860
+ # choose the value to pass. For example, if you don't receive a
2861
+ # response from your request, you can safely retry the request with the
2862
+ # same `clientToken` parameter value.
2863
+ #
2864
+ # If you omit a `clientToken` value, the Amazon Web Services SDK that
2865
+ # you are using inserts a value for you. This way, the SDK can safely
2866
+ # retry requests multiple times after a network error. You must provide
2867
+ # your own value for other use cases.
2868
+ #
2869
+ # If you specify input parameters that differ from your first request,
2870
+ # an error occurs. If you use a different value for `clientToken`,
2871
+ # Amazon AppFlow considers it a new call to
2872
+ # `UpdateConnectorRegistration`. The token is active for 8 hours.
2873
+ #
2874
+ # **A suitable default value is auto-generated.** You should normally
2875
+ # not need to pass this option.**
2876
+ #
2877
+ # @return [Types::UpdateConnectorRegistrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2878
+ #
2879
+ # * {Types::UpdateConnectorRegistrationResponse#connector_arn #connector_arn} => String
2880
+ #
2881
+ # @example Request syntax with placeholder values
2882
+ #
2883
+ # resp = client.update_connector_registration({
2884
+ # connector_label: "ConnectorLabel", # required
2885
+ # description: "Description",
2886
+ # connector_provisioning_config: {
2887
+ # lambda: {
2888
+ # lambda_arn: "ARN", # required
2889
+ # },
2890
+ # },
2891
+ # client_token: "ClientToken",
2892
+ # })
2893
+ #
2894
+ # @example Response structure
2895
+ #
2896
+ # resp.connector_arn #=> String
2897
+ #
2898
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/UpdateConnectorRegistration AWS API Documentation
2899
+ #
2900
+ # @overload update_connector_registration(params = {})
2901
+ # @param [Hash] params ({})
2902
+ def update_connector_registration(params = {}, options = {})
2903
+ req = build_request(:update_connector_registration, params)
2904
+ req.send_request(options)
2905
+ end
2906
+
1809
2907
  # Updates an existing flow.
1810
2908
  #
1811
2909
  # @option params [required, String] :flow_name
@@ -1830,6 +2928,32 @@ module Aws::Appflow
1830
2928
  # A list of tasks that Amazon AppFlow performs while transferring the
1831
2929
  # data in the flow run.
1832
2930
  #
2931
+ # @option params [Types::MetadataCatalogConfig] :metadata_catalog_config
2932
+ # Specifies the configuration that Amazon AppFlow uses when it catalogs
2933
+ # the data that's transferred by the associated flow. When Amazon
2934
+ # AppFlow catalogs the data from a flow, it stores metadata in a data
2935
+ # catalog.
2936
+ #
2937
+ # @option params [String] :client_token
2938
+ # The `clientToken` parameter is an idempotency token. It ensures that
2939
+ # your `UpdateFlow` request completes only once. You choose the value to
2940
+ # pass. For example, if you don't receive a response from your request,
2941
+ # you can safely retry the request with the same `clientToken` parameter
2942
+ # value.
2943
+ #
2944
+ # If you omit a `clientToken` value, the Amazon Web Services SDK that
2945
+ # you are using inserts a value for you. This way, the SDK can safely
2946
+ # retry requests multiple times after a network error. You must provide
2947
+ # your own value for other use cases.
2948
+ #
2949
+ # If you specify input parameters that differ from your first request,
2950
+ # an error occurs. If you use a different value for `clientToken`,
2951
+ # Amazon AppFlow considers it a new call to `UpdateFlow`. The token is
2952
+ # active for 8 hours.
2953
+ #
2954
+ # **A suitable default value is auto-generated.** You should normally
2955
+ # not need to pass this option.**
2956
+ #
1833
2957
  # @return [Types::UpdateFlowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1834
2958
  #
1835
2959
  # * {Types::UpdateFlowResponse#flow_status #flow_status} => String
@@ -1850,11 +2974,13 @@ module Aws::Appflow
1850
2974
  # timezone: "Timezone",
1851
2975
  # schedule_offset: 1,
1852
2976
  # first_execution_from: Time.now,
2977
+ # flow_error_deactivation_threshold: 1,
1853
2978
  # },
1854
2979
  # },
1855
2980
  # },
1856
2981
  # source_flow_config: { # required
1857
- # connector_type: "Salesforce", # required, accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData
2982
+ # connector_type: "Salesforce", # required, accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData, CustomConnector, Pardot
2983
+ # api_version: "ApiVersion",
1858
2984
  # connector_profile_name: "ConnectorProfileName",
1859
2985
  # source_connector_properties: { # required
1860
2986
  # amplitude: {
@@ -1886,6 +3012,7 @@ module Aws::Appflow
1886
3012
  # object: "Object", # required
1887
3013
  # enable_dynamic_field_update: false,
1888
3014
  # include_deleted_records: false,
3015
+ # data_transfer_api: "AUTOMATIC", # accepts AUTOMATIC, BULKV2, REST_SYNC
1889
3016
  # },
1890
3017
  # service_now: {
1891
3018
  # object: "Object", # required
@@ -1911,6 +3038,25 @@ module Aws::Appflow
1911
3038
  # },
1912
3039
  # sapo_data: {
1913
3040
  # object_path: "Object",
3041
+ # parallelism_config: {
3042
+ # max_parallelism: 1, # required
3043
+ # },
3044
+ # pagination_config: {
3045
+ # max_page_size: 1, # required
3046
+ # },
3047
+ # },
3048
+ # custom_connector: {
3049
+ # entity_name: "EntityName", # required
3050
+ # custom_properties: {
3051
+ # "CustomPropertyKey" => "CustomPropertyValue",
3052
+ # },
3053
+ # data_transfer_api: {
3054
+ # name: "DataTransferApiTypeName",
3055
+ # type: "SYNC", # accepts SYNC, ASYNC, AUTOMATIC
3056
+ # },
3057
+ # },
3058
+ # pardot: {
3059
+ # object: "Object", # required
1914
3060
  # },
1915
3061
  # },
1916
3062
  # incremental_pull_config: {
@@ -1919,7 +3065,8 @@ module Aws::Appflow
1919
3065
  # },
1920
3066
  # destination_flow_config_list: [ # required
1921
3067
  # {
1922
- # connector_type: "Salesforce", # required, accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData
3068
+ # connector_type: "Salesforce", # required, accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData, CustomConnector, Pardot
3069
+ # api_version: "ApiVersion",
1923
3070
  # connector_profile_name: "ConnectorProfileName",
1924
3071
  # destination_connector_properties: { # required
1925
3072
  # redshift: {
@@ -1940,10 +3087,13 @@ module Aws::Appflow
1940
3087
  # prefix_config: {
1941
3088
  # prefix_type: "FILENAME", # accepts FILENAME, PATH, PATH_AND_FILENAME
1942
3089
  # prefix_format: "YEAR", # accepts YEAR, MONTH, DAY, HOUR, MINUTE
3090
+ # path_prefix_hierarchy: ["EXECUTION_ID"], # accepts EXECUTION_ID, SCHEMA_VERSION
1943
3091
  # },
1944
3092
  # aggregation_config: {
1945
3093
  # aggregation_type: "None", # accepts None, SingleFile
3094
+ # target_file_size: 1,
1946
3095
  # },
3096
+ # preserve_source_data_typing: false,
1947
3097
  # },
1948
3098
  # },
1949
3099
  # salesforce: {
@@ -1954,7 +3104,8 @@ module Aws::Appflow
1954
3104
  # bucket_prefix: "BucketPrefix",
1955
3105
  # bucket_name: "BucketName",
1956
3106
  # },
1957
- # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE
3107
+ # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
3108
+ # data_transfer_api: "AUTOMATIC", # accepts AUTOMATIC, BULKV2, REST_SYNC
1958
3109
  # },
1959
3110
  # snowflake: {
1960
3111
  # object: "Object", # required
@@ -1984,9 +3135,11 @@ module Aws::Appflow
1984
3135
  # prefix_config: { # required
1985
3136
  # prefix_type: "FILENAME", # accepts FILENAME, PATH, PATH_AND_FILENAME
1986
3137
  # prefix_format: "YEAR", # accepts YEAR, MONTH, DAY, HOUR, MINUTE
3138
+ # path_prefix_hierarchy: ["EXECUTION_ID"], # accepts EXECUTION_ID, SCHEMA_VERSION
1987
3139
  # },
1988
3140
  # aggregation_config: {
1989
3141
  # aggregation_type: "None", # accepts None, SingleFile
3142
+ # target_file_size: 1,
1990
3143
  # },
1991
3144
  # },
1992
3145
  # },
@@ -2010,7 +3163,42 @@ module Aws::Appflow
2010
3163
  # bucket_prefix: "BucketPrefix",
2011
3164
  # bucket_name: "BucketName",
2012
3165
  # },
2013
- # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE
3166
+ # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
3167
+ # },
3168
+ # marketo: {
3169
+ # object: "Object", # required
3170
+ # error_handling_config: {
3171
+ # fail_on_first_destination_error: false,
3172
+ # bucket_prefix: "BucketPrefix",
3173
+ # bucket_name: "BucketName",
3174
+ # },
3175
+ # },
3176
+ # custom_connector: {
3177
+ # entity_name: "EntityName", # required
3178
+ # error_handling_config: {
3179
+ # fail_on_first_destination_error: false,
3180
+ # bucket_prefix: "BucketPrefix",
3181
+ # bucket_name: "BucketName",
3182
+ # },
3183
+ # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
3184
+ # id_field_names: ["Name"],
3185
+ # custom_properties: {
3186
+ # "CustomPropertyKey" => "CustomPropertyValue",
3187
+ # },
3188
+ # },
3189
+ # sapo_data: {
3190
+ # object_path: "Object", # required
3191
+ # success_response_handling_config: {
3192
+ # bucket_prefix: "BucketPrefix",
3193
+ # bucket_name: "BucketName",
3194
+ # },
3195
+ # id_field_names: ["Name"],
3196
+ # error_handling_config: {
3197
+ # fail_on_first_destination_error: false,
3198
+ # bucket_prefix: "BucketPrefix",
3199
+ # bucket_name: "BucketName",
3200
+ # },
3201
+ # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
2014
3202
  # },
2015
3203
  # },
2016
3204
  # },
@@ -2034,14 +3222,24 @@ module Aws::Appflow
2034
3222
  # veeva: "PROJECTION", # accepts PROJECTION, LESS_THAN, GREATER_THAN, CONTAINS, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
2035
3223
  # zendesk: "PROJECTION", # accepts PROJECTION, GREATER_THAN, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
2036
3224
  # sapo_data: "PROJECTION", # accepts PROJECTION, LESS_THAN, CONTAINS, GREATER_THAN, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
3225
+ # custom_connector: "PROJECTION", # accepts PROJECTION, LESS_THAN, GREATER_THAN, CONTAINS, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
3226
+ # pardot: "PROJECTION", # accepts PROJECTION, EQUAL_TO, NO_OP, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC
2037
3227
  # },
2038
3228
  # destination_field: "DestinationField",
2039
- # task_type: "Arithmetic", # required, accepts Arithmetic, Filter, Map, Map_all, Mask, Merge, Truncate, Validate
3229
+ # task_type: "Arithmetic", # required, accepts Arithmetic, Filter, Map, Map_all, Mask, Merge, Passthrough, Truncate, Validate, Partition
2040
3230
  # task_properties: {
2041
3231
  # "VALUE" => "Property",
2042
3232
  # },
2043
3233
  # },
2044
3234
  # ],
3235
+ # metadata_catalog_config: {
3236
+ # glue_data_catalog: {
3237
+ # role_arn: "GlueDataCatalogIAMRole", # required
3238
+ # database_name: "GlueDataCatalogDatabaseName", # required
3239
+ # table_prefix: "GlueDataCatalogTablePrefix", # required
3240
+ # },
3241
+ # },
3242
+ # client_token: "ClientToken",
2045
3243
  # })
2046
3244
  #
2047
3245
  # @example Response structure
@@ -2070,7 +3268,7 @@ module Aws::Appflow
2070
3268
  params: params,
2071
3269
  config: config)
2072
3270
  context[:gem_name] = 'aws-sdk-appflow'
2073
- context[:gem_version] = '1.19.0'
3271
+ context[:gem_version] = '1.51.0'
2074
3272
  Seahorse::Client::Request.new(handlers, context)
2075
3273
  end
2076
3274