aws-sdk-appflow 1.19.0 → 1.51.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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