aws-sdk-appflow 1.17.0 → 1.21.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,6 +27,7 @@ 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/defaults_mode.rb'
30
31
  require 'aws-sdk-core/plugins/signature_v4.rb'
31
32
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
32
33
 
@@ -73,6 +74,7 @@ module Aws::Appflow
73
74
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
75
  add_plugin(Aws::Plugins::TransferEncoding)
75
76
  add_plugin(Aws::Plugins::HttpChecksum)
77
+ add_plugin(Aws::Plugins::DefaultsMode)
76
78
  add_plugin(Aws::Plugins::SignatureV4)
77
79
  add_plugin(Aws::Plugins::Protocols::RestJson)
78
80
 
@@ -119,7 +121,9 @@ module Aws::Appflow
119
121
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
122
  # are very aggressive. Construct and pass an instance of
121
123
  # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
- # enable retries and extended timeouts.
124
+ # enable retries and extended timeouts. Instance profile credential
125
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
126
+ # to true.
123
127
  #
124
128
  # @option options [required, String] :region
125
129
  # The AWS region to connect to. The configured `:region` is
@@ -173,6 +177,10 @@ module Aws::Appflow
173
177
  # Used only in `standard` and adaptive retry modes. Specifies whether to apply
174
178
  # a clock skew correction and retry requests with skewed client clocks.
175
179
  #
180
+ # @option options [String] :defaults_mode ("legacy")
181
+ # See {Aws::DefaultsModeConfiguration} for a list of the
182
+ # accepted modes and the configuration defaults that are included.
183
+ #
176
184
  # @option options [Boolean] :disable_host_prefix_injection (false)
177
185
  # Set to true to disable SDK automatically adding host prefix
178
186
  # to default service endpoint when available.
@@ -275,6 +283,15 @@ module Aws::Appflow
275
283
  # ** Please note ** When response stubbing is enabled, no HTTP
276
284
  # requests are made, and retries are disabled.
277
285
  #
286
+ # @option options [Boolean] :use_dualstack_endpoint
287
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
288
+ # will be used if available.
289
+ #
290
+ # @option options [Boolean] :use_fips_endpoint
291
+ # When set to `true`, fips compatible endpoints will be used if available.
292
+ # When a `fips` region is used, the region is normalized and this config
293
+ # is set to `true`.
294
+ #
278
295
  # @option options [Boolean] :validate_params (true)
279
296
  # When `true`, request parameters are validated before
280
297
  # sending the request.
@@ -286,7 +303,7 @@ module Aws::Appflow
286
303
  # seconds to wait when opening a HTTP session before raising a
287
304
  # `Timeout::Error`.
288
305
  #
289
- # @option options [Integer] :http_read_timeout (60) The default
306
+ # @option options [Float] :http_read_timeout (60) The default
290
307
  # number of seconds to wait for response data. This value can
291
308
  # safely be set per-request on the session.
292
309
  #
@@ -302,6 +319,9 @@ module Aws::Appflow
302
319
  # disables this behaviour. This value can safely be set per
303
320
  # request on the session.
304
321
  #
322
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
323
+ # in seconds.
324
+ #
305
325
  # @option options [Boolean] :http_wire_trace (false) When `true`,
306
326
  # HTTP debug output will be sent to the `:logger`.
307
327
  #
@@ -346,6 +366,11 @@ module Aws::Appflow
346
366
  # @option params [required, String] :connector_type
347
367
  # The type of connector, such as Salesforce, Amplitude, and so on.
348
368
  #
369
+ # @option params [String] :connector_label
370
+ # The label of the connector. The label is unique for each
371
+ # `ConnectorRegistration` in your Amazon Web Services account. Only
372
+ # needed if calling for CUSTOMCONNECTOR connector type/.
373
+ #
349
374
  # @option params [required, String] :connection_mode
350
375
  # Indicates the connection mode and specifies whether it is public or
351
376
  # private. Private flows use Amazon Web Services PrivateLink to route
@@ -364,7 +389,8 @@ module Aws::Appflow
364
389
  # resp = client.create_connector_profile({
365
390
  # connector_profile_name: "ConnectorProfileName", # required
366
391
  # kms_arn: "KMSArn",
367
- # 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
392
+ # 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
393
+ # connector_label: "ConnectorLabel",
368
394
  # connection_mode: "Public", # required, accepts Public, Private
369
395
  # connector_profile_config: { # required
370
396
  # connector_profile_properties: { # required
@@ -434,6 +460,15 @@ module Aws::Appflow
434
460
  # o_auth_scopes: ["OAuthScope"], # required
435
461
  # },
436
462
  # },
463
+ # custom_connector: {
464
+ # profile_properties: {
465
+ # "ProfilePropertyKey" => "ProfilePropertyValue",
466
+ # },
467
+ # o_auth_2_properties: {
468
+ # token_url: "TokenUrl", # required
469
+ # o_auth_2_grant_type: "CLIENT_CREDENTIALS", # required, accepts CLIENT_CREDENTIALS, AUTHORIZATION_CODE
470
+ # },
471
+ # },
437
472
  # },
438
473
  # connector_profile_credentials: { # required
439
474
  # amplitude: {
@@ -545,6 +580,33 @@ module Aws::Appflow
545
580
  # },
546
581
  # },
547
582
  # },
583
+ # custom_connector: {
584
+ # authentication_type: "OAUTH2", # required, accepts OAUTH2, APIKEY, BASIC, CUSTOM
585
+ # basic: {
586
+ # username: "Username", # required
587
+ # password: "Password", # required
588
+ # },
589
+ # oauth2: {
590
+ # client_id: "ClientId",
591
+ # client_secret: "ClientSecret",
592
+ # access_token: "AccessToken",
593
+ # refresh_token: "RefreshToken",
594
+ # o_auth_request: {
595
+ # auth_code: "AuthCode",
596
+ # redirect_uri: "RedirectUri",
597
+ # },
598
+ # },
599
+ # api_key: {
600
+ # api_key: "ApiKey", # required
601
+ # api_secret_key: "ApiSecretKey",
602
+ # },
603
+ # custom: {
604
+ # custom_authentication_type: "CustomAuthenticationType", # required
605
+ # credentials_map: {
606
+ # "CredentialsMapKey" => "CredentialsMapValue",
607
+ # },
608
+ # },
609
+ # },
548
610
  # },
549
611
  # },
550
612
  # })
@@ -626,7 +688,8 @@ module Aws::Appflow
626
688
  # },
627
689
  # },
628
690
  # source_flow_config: { # required
629
- # 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
691
+ # 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
692
+ # api_version: "ApiVersion",
630
693
  # connector_profile_name: "ConnectorProfileName",
631
694
  # source_connector_properties: { # required
632
695
  # amplitude: {
@@ -684,6 +747,12 @@ module Aws::Appflow
684
747
  # sapo_data: {
685
748
  # object_path: "Object",
686
749
  # },
750
+ # custom_connector: {
751
+ # entity_name: "EntityName", # required
752
+ # custom_properties: {
753
+ # "CustomPropertyKey" => "CustomPropertyValue",
754
+ # },
755
+ # },
687
756
  # },
688
757
  # incremental_pull_config: {
689
758
  # datetime_type_field_name: "DatetimeTypeFieldName",
@@ -691,7 +760,8 @@ module Aws::Appflow
691
760
  # },
692
761
  # destination_flow_config_list: [ # required
693
762
  # {
694
- # 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
763
+ # 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
764
+ # api_version: "ApiVersion",
695
765
  # connector_profile_name: "ConnectorProfileName",
696
766
  # destination_connector_properties: { # required
697
767
  # redshift: {
@@ -726,7 +796,7 @@ module Aws::Appflow
726
796
  # bucket_prefix: "BucketPrefix",
727
797
  # bucket_name: "BucketName",
728
798
  # },
729
- # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE
799
+ # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
730
800
  # },
731
801
  # snowflake: {
732
802
  # object: "Object", # required
@@ -782,7 +852,20 @@ module Aws::Appflow
782
852
  # bucket_prefix: "BucketPrefix",
783
853
  # bucket_name: "BucketName",
784
854
  # },
785
- # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE
855
+ # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
856
+ # },
857
+ # custom_connector: {
858
+ # entity_name: "EntityName", # required
859
+ # error_handling_config: {
860
+ # fail_on_first_destination_error: false,
861
+ # bucket_prefix: "BucketPrefix",
862
+ # bucket_name: "BucketName",
863
+ # },
864
+ # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
865
+ # id_field_names: ["Name"],
866
+ # custom_properties: {
867
+ # "CustomPropertyKey" => "CustomPropertyValue",
868
+ # },
786
869
  # },
787
870
  # },
788
871
  # },
@@ -806,6 +889,7 @@ module Aws::Appflow
806
889
  # 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
807
890
  # 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
808
891
  # 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
892
+ # 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
809
893
  # },
810
894
  # destination_field: "DestinationField",
811
895
  # task_type: "Arithmetic", # required, accepts Arithmetic, Filter, Map, Map_all, Mask, Merge, Truncate, Validate
@@ -891,6 +975,115 @@ module Aws::Appflow
891
975
  req.send_request(options)
892
976
  end
893
977
 
978
+ # Describes the given custom connector registered in your Amazon Web
979
+ # Services account. This API can be used for custom connectors that are
980
+ # registered in your account and also for Amazon authored connectors.
981
+ #
982
+ # @option params [required, String] :connector_type
983
+ # The connector type, such as CUSTOMCONNECTOR, Saleforce, Marketo.
984
+ # Please choose CUSTOMCONNECTOR for Lambda based custom connectors.
985
+ #
986
+ # @option params [String] :connector_label
987
+ # The label of the connector. The label is unique for each
988
+ # `ConnectorRegistration` in your Amazon Web Services account. Only
989
+ # needed if calling for CUSTOMCONNECTOR connector type/.
990
+ #
991
+ # @return [Types::DescribeConnectorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
992
+ #
993
+ # * {Types::DescribeConnectorResponse#connector_configuration #connector_configuration} => Types::ConnectorConfiguration
994
+ #
995
+ # @example Request syntax with placeholder values
996
+ #
997
+ # resp = client.describe_connector({
998
+ # 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
999
+ # connector_label: "ConnectorLabel",
1000
+ # })
1001
+ #
1002
+ # @example Response structure
1003
+ #
1004
+ # resp.connector_configuration.can_use_as_source #=> Boolean
1005
+ # resp.connector_configuration.can_use_as_destination #=> Boolean
1006
+ # resp.connector_configuration.supported_destination_connectors #=> Array
1007
+ # 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"
1008
+ # resp.connector_configuration.supported_scheduling_frequencies #=> Array
1009
+ # resp.connector_configuration.supported_scheduling_frequencies[0] #=> String, one of "BYMINUTE", "HOURLY", "DAILY", "WEEKLY", "MONTHLY", "ONCE"
1010
+ # resp.connector_configuration.is_private_link_enabled #=> Boolean
1011
+ # resp.connector_configuration.is_private_link_endpoint_url_required #=> Boolean
1012
+ # resp.connector_configuration.supported_trigger_types #=> Array
1013
+ # resp.connector_configuration.supported_trigger_types[0] #=> String, one of "Scheduled", "Event", "OnDemand"
1014
+ # resp.connector_configuration.connector_metadata.google_analytics.o_auth_scopes #=> Array
1015
+ # resp.connector_configuration.connector_metadata.google_analytics.o_auth_scopes[0] #=> String
1016
+ # resp.connector_configuration.connector_metadata.salesforce.o_auth_scopes #=> Array
1017
+ # resp.connector_configuration.connector_metadata.salesforce.o_auth_scopes[0] #=> String
1018
+ # resp.connector_configuration.connector_metadata.slack.o_auth_scopes #=> Array
1019
+ # resp.connector_configuration.connector_metadata.slack.o_auth_scopes[0] #=> String
1020
+ # resp.connector_configuration.connector_metadata.snowflake.supported_regions #=> Array
1021
+ # resp.connector_configuration.connector_metadata.snowflake.supported_regions[0] #=> String
1022
+ # resp.connector_configuration.connector_metadata.zendesk.o_auth_scopes #=> Array
1023
+ # resp.connector_configuration.connector_metadata.zendesk.o_auth_scopes[0] #=> String
1024
+ # resp.connector_configuration.connector_metadata.honeycode.o_auth_scopes #=> Array
1025
+ # resp.connector_configuration.connector_metadata.honeycode.o_auth_scopes[0] #=> String
1026
+ # 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"
1027
+ # resp.connector_configuration.connector_label #=> String
1028
+ # resp.connector_configuration.connector_description #=> String
1029
+ # resp.connector_configuration.connector_owner #=> String
1030
+ # resp.connector_configuration.connector_name #=> String
1031
+ # resp.connector_configuration.connector_version #=> String
1032
+ # resp.connector_configuration.connector_arn #=> String
1033
+ # resp.connector_configuration.connector_modes #=> Array
1034
+ # resp.connector_configuration.connector_modes[0] #=> String
1035
+ # resp.connector_configuration.authentication_config.is_basic_auth_supported #=> Boolean
1036
+ # resp.connector_configuration.authentication_config.is_api_key_auth_supported #=> Boolean
1037
+ # resp.connector_configuration.authentication_config.is_o_auth_2_supported #=> Boolean
1038
+ # resp.connector_configuration.authentication_config.is_custom_auth_supported #=> Boolean
1039
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth_scopes #=> Array
1040
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth_scopes[0] #=> String
1041
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.token_urls #=> Array
1042
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.token_urls[0] #=> String
1043
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.auth_code_urls #=> Array
1044
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.auth_code_urls[0] #=> String
1045
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth2_grant_types_supported #=> Array
1046
+ # resp.connector_configuration.authentication_config.o_auth_2_defaults.oauth2_grant_types_supported[0] #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE"
1047
+ # resp.connector_configuration.authentication_config.custom_auth_configs #=> Array
1048
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].custom_authentication_type #=> String
1049
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters #=> Array
1050
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters[0].key #=> String
1051
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters[0].is_required #=> Boolean
1052
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters[0].label #=> String
1053
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters[0].description #=> String
1054
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters[0].is_sensitive_field #=> Boolean
1055
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters[0].connector_supplied_values #=> Array
1056
+ # resp.connector_configuration.authentication_config.custom_auth_configs[0].auth_parameters[0].connector_supplied_values[0] #=> String
1057
+ # resp.connector_configuration.connector_runtime_settings #=> Array
1058
+ # resp.connector_configuration.connector_runtime_settings[0].key #=> String
1059
+ # resp.connector_configuration.connector_runtime_settings[0].data_type #=> String
1060
+ # resp.connector_configuration.connector_runtime_settings[0].is_required #=> Boolean
1061
+ # resp.connector_configuration.connector_runtime_settings[0].label #=> String
1062
+ # resp.connector_configuration.connector_runtime_settings[0].description #=> String
1063
+ # resp.connector_configuration.connector_runtime_settings[0].scope #=> String
1064
+ # resp.connector_configuration.connector_runtime_settings[0].connector_supplied_value_options #=> Array
1065
+ # resp.connector_configuration.connector_runtime_settings[0].connector_supplied_value_options[0] #=> String
1066
+ # resp.connector_configuration.supported_api_versions #=> Array
1067
+ # resp.connector_configuration.supported_api_versions[0] #=> String
1068
+ # resp.connector_configuration.supported_operators #=> Array
1069
+ # 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"
1070
+ # resp.connector_configuration.supported_write_operations #=> Array
1071
+ # resp.connector_configuration.supported_write_operations[0] #=> String, one of "INSERT", "UPSERT", "UPDATE", "DELETE"
1072
+ # resp.connector_configuration.connector_provisioning_type #=> String, one of "LAMBDA"
1073
+ # resp.connector_configuration.connector_provisioning_config.lambda.lambda_arn #=> String
1074
+ # resp.connector_configuration.logo_url #=> String
1075
+ # resp.connector_configuration.registered_at #=> Time
1076
+ # resp.connector_configuration.registered_by #=> String
1077
+ #
1078
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/DescribeConnector AWS API Documentation
1079
+ #
1080
+ # @overload describe_connector(params = {})
1081
+ # @param [Hash] params ({})
1082
+ def describe_connector(params = {}, options = {})
1083
+ req = build_request(:describe_connector, params)
1084
+ req.send_request(options)
1085
+ end
1086
+
894
1087
  # Provides details regarding the entity used with the connector, with a
895
1088
  # description of the data model for each entity.
896
1089
  #
@@ -905,6 +1098,9 @@ module Aws::Appflow
905
1098
  # The name of the connector profile. The name is unique for each
906
1099
  # `ConnectorProfile` in the Amazon Web Services account.
907
1100
  #
1101
+ # @option params [String] :api_version
1102
+ # The version of the API that's used by the connector.
1103
+ #
908
1104
  # @return [Types::DescribeConnectorEntityResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
909
1105
  #
910
1106
  # * {Types::DescribeConnectorEntityResponse#connector_entity_fields #connector_entity_fields} => Array<Types::ConnectorEntityField>
@@ -912,30 +1108,45 @@ module Aws::Appflow
912
1108
  # @example Request syntax with placeholder values
913
1109
  #
914
1110
  # resp = client.describe_connector_entity({
915
- # connector_entity_name: "Name", # required
916
- # 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
1111
+ # connector_entity_name: "EntityName", # required
1112
+ # 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
917
1113
  # connector_profile_name: "ConnectorProfileName",
1114
+ # api_version: "ApiVersion",
918
1115
  # })
919
1116
  #
920
1117
  # @example Response structure
921
1118
  #
922
1119
  # resp.connector_entity_fields #=> Array
923
1120
  # resp.connector_entity_fields[0].identifier #=> String
1121
+ # resp.connector_entity_fields[0].parent_identifier #=> String
924
1122
  # resp.connector_entity_fields[0].label #=> String
1123
+ # resp.connector_entity_fields[0].is_primary_key #=> Boolean
1124
+ # resp.connector_entity_fields[0].default_value #=> String
1125
+ # resp.connector_entity_fields[0].is_deprecated #=> Boolean
925
1126
  # resp.connector_entity_fields[0].supported_field_type_details.v1.field_type #=> String
926
1127
  # resp.connector_entity_fields[0].supported_field_type_details.v1.filter_operators #=> Array
927
1128
  # 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"
928
1129
  # resp.connector_entity_fields[0].supported_field_type_details.v1.supported_values #=> Array
929
1130
  # resp.connector_entity_fields[0].supported_field_type_details.v1.supported_values[0] #=> String
1131
+ # resp.connector_entity_fields[0].supported_field_type_details.v1.value_regex_pattern #=> String
1132
+ # resp.connector_entity_fields[0].supported_field_type_details.v1.supported_date_format #=> String
1133
+ # resp.connector_entity_fields[0].supported_field_type_details.v1.field_value_range.maximum #=> Float
1134
+ # resp.connector_entity_fields[0].supported_field_type_details.v1.field_value_range.minimum #=> Float
1135
+ # resp.connector_entity_fields[0].supported_field_type_details.v1.field_length_range.maximum #=> Float
1136
+ # resp.connector_entity_fields[0].supported_field_type_details.v1.field_length_range.minimum #=> Float
930
1137
  # resp.connector_entity_fields[0].description #=> String
931
1138
  # resp.connector_entity_fields[0].source_properties.is_retrievable #=> Boolean
932
1139
  # resp.connector_entity_fields[0].source_properties.is_queryable #=> Boolean
1140
+ # resp.connector_entity_fields[0].source_properties.is_timestamp_field_for_incremental_queries #=> Boolean
933
1141
  # resp.connector_entity_fields[0].destination_properties.is_creatable #=> Boolean
934
1142
  # resp.connector_entity_fields[0].destination_properties.is_nullable #=> Boolean
935
1143
  # resp.connector_entity_fields[0].destination_properties.is_upsertable #=> Boolean
936
1144
  # resp.connector_entity_fields[0].destination_properties.is_updatable #=> Boolean
1145
+ # resp.connector_entity_fields[0].destination_properties.is_defaulted_on_create #=> Boolean
937
1146
  # resp.connector_entity_fields[0].destination_properties.supported_write_operations #=> Array
938
- # resp.connector_entity_fields[0].destination_properties.supported_write_operations[0] #=> String, one of "INSERT", "UPSERT", "UPDATE"
1147
+ # resp.connector_entity_fields[0].destination_properties.supported_write_operations[0] #=> String, one of "INSERT", "UPSERT", "UPDATE", "DELETE"
1148
+ # resp.connector_entity_fields[0].custom_properties #=> Hash
1149
+ # resp.connector_entity_fields[0].custom_properties["CustomPropertyKey"] #=> String
939
1150
  #
940
1151
  # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/DescribeConnectorEntity AWS API Documentation
941
1152
  #
@@ -961,6 +1172,11 @@ module Aws::Appflow
961
1172
  # @option params [String] :connector_type
962
1173
  # The type of connector, such as Salesforce, Amplitude, and so on.
963
1174
  #
1175
+ # @option params [String] :connector_label
1176
+ # The name of the connector. The name is unique for each
1177
+ # `ConnectorRegistration` in your Amazon Web Services account. Only
1178
+ # needed if calling for CUSTOMCONNECTOR connector type/.
1179
+ #
964
1180
  # @option params [Integer] :max_results
965
1181
  # Specifies the maximum number of items that should be returned in the
966
1182
  # result set. The default for `maxResults` is 20 (for all paginated API
@@ -980,7 +1196,8 @@ module Aws::Appflow
980
1196
  #
981
1197
  # resp = client.describe_connector_profiles({
982
1198
  # connector_profile_names: ["ConnectorProfileName"],
983
- # 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
1199
+ # 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
1200
+ # connector_label: "ConnectorLabel",
984
1201
  # max_results: 1,
985
1202
  # next_token: "NextToken",
986
1203
  # })
@@ -990,7 +1207,8 @@ module Aws::Appflow
990
1207
  # resp.connector_profile_details #=> Array
991
1208
  # resp.connector_profile_details[0].connector_profile_arn #=> String
992
1209
  # resp.connector_profile_details[0].connector_profile_name #=> String
993
- # 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"
1210
+ # 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"
1211
+ # resp.connector_profile_details[0].connector_label #=> String
994
1212
  # resp.connector_profile_details[0].connection_mode #=> String, one of "Public", "Private"
995
1213
  # resp.connector_profile_details[0].credentials_arn #=> String
996
1214
  # resp.connector_profile_details[0].connector_profile_properties.datadog.instance_url #=> String
@@ -1024,6 +1242,10 @@ module Aws::Appflow
1024
1242
  # resp.connector_profile_details[0].connector_profile_properties.sapo_data.o_auth_properties.auth_code_url #=> String
1025
1243
  # resp.connector_profile_details[0].connector_profile_properties.sapo_data.o_auth_properties.o_auth_scopes #=> Array
1026
1244
  # resp.connector_profile_details[0].connector_profile_properties.sapo_data.o_auth_properties.o_auth_scopes[0] #=> String
1245
+ # resp.connector_profile_details[0].connector_profile_properties.custom_connector.profile_properties #=> Hash
1246
+ # resp.connector_profile_details[0].connector_profile_properties.custom_connector.profile_properties["ProfilePropertyKey"] #=> String
1247
+ # resp.connector_profile_details[0].connector_profile_properties.custom_connector.o_auth_2_properties.token_url #=> String
1248
+ # 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"
1027
1249
  # resp.connector_profile_details[0].created_at #=> Time
1028
1250
  # resp.connector_profile_details[0].last_updated_at #=> Time
1029
1251
  # resp.connector_profile_details[0].private_connection_provisioning_state.status #=> String, one of "FAILED", "PENDING", "CREATED"
@@ -1051,12 +1273,17 @@ module Aws::Appflow
1051
1273
  # @option params [Array<String>] :connector_types
1052
1274
  # The type of connector, such as Salesforce, Amplitude, and so on.
1053
1275
  #
1276
+ # @option params [Integer] :max_results
1277
+ # The maximum number of items that should be returned in the result set.
1278
+ # The default is 20.
1279
+ #
1054
1280
  # @option params [String] :next_token
1055
1281
  # The pagination token for the next page of data.
1056
1282
  #
1057
1283
  # @return [Types::DescribeConnectorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1058
1284
  #
1059
1285
  # * {Types::DescribeConnectorsResponse#connector_configurations #connector_configurations} => Hash&lt;String,Types::ConnectorConfiguration&gt;
1286
+ # * {Types::DescribeConnectorsResponse#connectors #connectors} => Array&lt;Types::ConnectorDetail&gt;
1060
1287
  # * {Types::DescribeConnectorsResponse#next_token #next_token} => String
1061
1288
  #
1062
1289
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
@@ -1064,7 +1291,8 @@ module Aws::Appflow
1064
1291
  # @example Request syntax with placeholder values
1065
1292
  #
1066
1293
  # resp = client.describe_connectors({
1067
- # 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
1294
+ # 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
1295
+ # max_results: 1,
1068
1296
  # next_token: "NextToken",
1069
1297
  # })
1070
1298
  #
@@ -1074,7 +1302,7 @@ module Aws::Appflow
1074
1302
  # resp.connector_configurations["ConnectorType"].can_use_as_source #=> Boolean
1075
1303
  # resp.connector_configurations["ConnectorType"].can_use_as_destination #=> Boolean
1076
1304
  # resp.connector_configurations["ConnectorType"].supported_destination_connectors #=> Array
1077
- # 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"
1305
+ # 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"
1078
1306
  # resp.connector_configurations["ConnectorType"].supported_scheduling_frequencies #=> Array
1079
1307
  # resp.connector_configurations["ConnectorType"].supported_scheduling_frequencies[0] #=> String, one of "BYMINUTE", "HOURLY", "DAILY", "WEEKLY", "MONTHLY", "ONCE"
1080
1308
  # resp.connector_configurations["ConnectorType"].is_private_link_enabled #=> Boolean
@@ -1093,6 +1321,70 @@ module Aws::Appflow
1093
1321
  # resp.connector_configurations["ConnectorType"].connector_metadata.zendesk.o_auth_scopes[0] #=> String
1094
1322
  # resp.connector_configurations["ConnectorType"].connector_metadata.honeycode.o_auth_scopes #=> Array
1095
1323
  # resp.connector_configurations["ConnectorType"].connector_metadata.honeycode.o_auth_scopes[0] #=> String
1324
+ # 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"
1325
+ # resp.connector_configurations["ConnectorType"].connector_label #=> String
1326
+ # resp.connector_configurations["ConnectorType"].connector_description #=> String
1327
+ # resp.connector_configurations["ConnectorType"].connector_owner #=> String
1328
+ # resp.connector_configurations["ConnectorType"].connector_name #=> String
1329
+ # resp.connector_configurations["ConnectorType"].connector_version #=> String
1330
+ # resp.connector_configurations["ConnectorType"].connector_arn #=> String
1331
+ # resp.connector_configurations["ConnectorType"].connector_modes #=> Array
1332
+ # resp.connector_configurations["ConnectorType"].connector_modes[0] #=> String
1333
+ # resp.connector_configurations["ConnectorType"].authentication_config.is_basic_auth_supported #=> Boolean
1334
+ # resp.connector_configurations["ConnectorType"].authentication_config.is_api_key_auth_supported #=> Boolean
1335
+ # resp.connector_configurations["ConnectorType"].authentication_config.is_o_auth_2_supported #=> Boolean
1336
+ # resp.connector_configurations["ConnectorType"].authentication_config.is_custom_auth_supported #=> Boolean
1337
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth_scopes #=> Array
1338
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth_scopes[0] #=> String
1339
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.token_urls #=> Array
1340
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.token_urls[0] #=> String
1341
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.auth_code_urls #=> Array
1342
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.auth_code_urls[0] #=> String
1343
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth2_grant_types_supported #=> Array
1344
+ # resp.connector_configurations["ConnectorType"].authentication_config.o_auth_2_defaults.oauth2_grant_types_supported[0] #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE"
1345
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs #=> Array
1346
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].custom_authentication_type #=> String
1347
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters #=> Array
1348
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters[0].key #=> String
1349
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters[0].is_required #=> Boolean
1350
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters[0].label #=> String
1351
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters[0].description #=> String
1352
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters[0].is_sensitive_field #=> Boolean
1353
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters[0].connector_supplied_values #=> Array
1354
+ # resp.connector_configurations["ConnectorType"].authentication_config.custom_auth_configs[0].auth_parameters[0].connector_supplied_values[0] #=> String
1355
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings #=> Array
1356
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].key #=> String
1357
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].data_type #=> String
1358
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].is_required #=> Boolean
1359
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].label #=> String
1360
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].description #=> String
1361
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].scope #=> String
1362
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].connector_supplied_value_options #=> Array
1363
+ # resp.connector_configurations["ConnectorType"].connector_runtime_settings[0].connector_supplied_value_options[0] #=> String
1364
+ # resp.connector_configurations["ConnectorType"].supported_api_versions #=> Array
1365
+ # resp.connector_configurations["ConnectorType"].supported_api_versions[0] #=> String
1366
+ # resp.connector_configurations["ConnectorType"].supported_operators #=> Array
1367
+ # 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"
1368
+ # resp.connector_configurations["ConnectorType"].supported_write_operations #=> Array
1369
+ # resp.connector_configurations["ConnectorType"].supported_write_operations[0] #=> String, one of "INSERT", "UPSERT", "UPDATE", "DELETE"
1370
+ # resp.connector_configurations["ConnectorType"].connector_provisioning_type #=> String, one of "LAMBDA"
1371
+ # resp.connector_configurations["ConnectorType"].connector_provisioning_config.lambda.lambda_arn #=> String
1372
+ # resp.connector_configurations["ConnectorType"].logo_url #=> String
1373
+ # resp.connector_configurations["ConnectorType"].registered_at #=> Time
1374
+ # resp.connector_configurations["ConnectorType"].registered_by #=> String
1375
+ # resp.connectors #=> Array
1376
+ # resp.connectors[0].connector_description #=> String
1377
+ # resp.connectors[0].connector_name #=> String
1378
+ # resp.connectors[0].connector_owner #=> String
1379
+ # resp.connectors[0].connector_version #=> String
1380
+ # resp.connectors[0].application_type #=> String
1381
+ # 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"
1382
+ # resp.connectors[0].connector_label #=> String
1383
+ # resp.connectors[0].registered_at #=> Time
1384
+ # resp.connectors[0].registered_by #=> String
1385
+ # resp.connectors[0].connector_provisioning_type #=> String, one of "LAMBDA"
1386
+ # resp.connectors[0].connector_modes #=> Array
1387
+ # resp.connectors[0].connector_modes[0] #=> String
1096
1388
  # resp.next_token #=> String
1097
1389
  #
1098
1390
  # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/DescribeConnectors AWS API Documentation
@@ -1143,7 +1435,8 @@ module Aws::Appflow
1143
1435
  # resp.kms_arn #=> String
1144
1436
  # resp.flow_status #=> String, one of "Active", "Deprecated", "Deleted", "Draft", "Errored", "Suspended"
1145
1437
  # resp.flow_status_message #=> String
1146
- # 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"
1438
+ # 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"
1439
+ # resp.source_flow_config.api_version #=> String
1147
1440
  # resp.source_flow_config.connector_profile_name #=> String
1148
1441
  # resp.source_flow_config.source_connector_properties.amplitude.object #=> String
1149
1442
  # resp.source_flow_config.source_connector_properties.datadog.object #=> String
@@ -1168,9 +1461,13 @@ module Aws::Appflow
1168
1461
  # resp.source_flow_config.source_connector_properties.veeva.include_all_versions #=> Boolean
1169
1462
  # resp.source_flow_config.source_connector_properties.zendesk.object #=> String
1170
1463
  # resp.source_flow_config.source_connector_properties.sapo_data.object_path #=> String
1464
+ # resp.source_flow_config.source_connector_properties.custom_connector.entity_name #=> String
1465
+ # resp.source_flow_config.source_connector_properties.custom_connector.custom_properties #=> Hash
1466
+ # resp.source_flow_config.source_connector_properties.custom_connector.custom_properties["CustomPropertyKey"] #=> String
1171
1467
  # resp.source_flow_config.incremental_pull_config.datetime_type_field_name #=> String
1172
1468
  # resp.destination_flow_config_list #=> Array
1173
- # 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"
1469
+ # 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"
1470
+ # resp.destination_flow_config_list[0].api_version #=> String
1174
1471
  # resp.destination_flow_config_list[0].connector_profile_name #=> String
1175
1472
  # resp.destination_flow_config_list[0].destination_connector_properties.redshift.object #=> String
1176
1473
  # resp.destination_flow_config_list[0].destination_connector_properties.redshift.intermediate_bucket_name #=> String
@@ -1190,7 +1487,7 @@ module Aws::Appflow
1190
1487
  # resp.destination_flow_config_list[0].destination_connector_properties.salesforce.error_handling_config.fail_on_first_destination_error #=> Boolean
1191
1488
  # resp.destination_flow_config_list[0].destination_connector_properties.salesforce.error_handling_config.bucket_prefix #=> String
1192
1489
  # resp.destination_flow_config_list[0].destination_connector_properties.salesforce.error_handling_config.bucket_name #=> String
1193
- # resp.destination_flow_config_list[0].destination_connector_properties.salesforce.write_operation_type #=> String, one of "INSERT", "UPSERT", "UPDATE"
1490
+ # resp.destination_flow_config_list[0].destination_connector_properties.salesforce.write_operation_type #=> String, one of "INSERT", "UPSERT", "UPDATE", "DELETE"
1194
1491
  # resp.destination_flow_config_list[0].destination_connector_properties.snowflake.object #=> String
1195
1492
  # resp.destination_flow_config_list[0].destination_connector_properties.snowflake.intermediate_bucket_name #=> String
1196
1493
  # resp.destination_flow_config_list[0].destination_connector_properties.snowflake.bucket_prefix #=> String
@@ -1219,7 +1516,16 @@ module Aws::Appflow
1219
1516
  # resp.destination_flow_config_list[0].destination_connector_properties.zendesk.error_handling_config.fail_on_first_destination_error #=> Boolean
1220
1517
  # resp.destination_flow_config_list[0].destination_connector_properties.zendesk.error_handling_config.bucket_prefix #=> String
1221
1518
  # resp.destination_flow_config_list[0].destination_connector_properties.zendesk.error_handling_config.bucket_name #=> String
1222
- # resp.destination_flow_config_list[0].destination_connector_properties.zendesk.write_operation_type #=> String, one of "INSERT", "UPSERT", "UPDATE"
1519
+ # resp.destination_flow_config_list[0].destination_connector_properties.zendesk.write_operation_type #=> String, one of "INSERT", "UPSERT", "UPDATE", "DELETE"
1520
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.entity_name #=> String
1521
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.error_handling_config.fail_on_first_destination_error #=> Boolean
1522
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.error_handling_config.bucket_prefix #=> String
1523
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.error_handling_config.bucket_name #=> String
1524
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.write_operation_type #=> String, one of "INSERT", "UPSERT", "UPDATE", "DELETE"
1525
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.id_field_names #=> Array
1526
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.id_field_names[0] #=> String
1527
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.custom_properties #=> Hash
1528
+ # resp.destination_flow_config_list[0].destination_connector_properties.custom_connector.custom_properties["CustomPropertyKey"] #=> String
1223
1529
  # resp.last_run_execution_details.most_recent_execution_message #=> String
1224
1530
  # resp.last_run_execution_details.most_recent_execution_time #=> Time
1225
1531
  # resp.last_run_execution_details.most_recent_execution_status #=> String, one of "InProgress", "Successful", "Error"
@@ -1249,6 +1555,7 @@ module Aws::Appflow
1249
1555
  # 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"
1250
1556
  # 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"
1251
1557
  # 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"
1558
+ # 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"
1252
1559
  # resp.tasks[0].destination_field #=> String
1253
1560
  # resp.tasks[0].task_type #=> String, one of "Arithmetic", "Filter", "Map", "Map_all", "Mask", "Merge", "Truncate", "Validate"
1254
1561
  # resp.tasks[0].task_properties #=> Hash
@@ -1344,6 +1651,9 @@ module Aws::Appflow
1344
1651
  # roots. Otherwise, this request returns all entities supported by the
1345
1652
  # provider.
1346
1653
  #
1654
+ # @option params [String] :api_version
1655
+ # The version of the API that's used by the connector.
1656
+ #
1347
1657
  # @return [Types::ListConnectorEntitiesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1348
1658
  #
1349
1659
  # * {Types::ListConnectorEntitiesResponse#connector_entity_map #connector_entity_map} => Hash&lt;String,Array&lt;Types::ConnectorEntity&gt;&gt;
@@ -1352,8 +1662,9 @@ module Aws::Appflow
1352
1662
  #
1353
1663
  # resp = client.list_connector_entities({
1354
1664
  # connector_profile_name: "ConnectorProfileName",
1355
- # 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
1665
+ # 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
1356
1666
  # entities_path: "EntitiesPath",
1667
+ # api_version: "ApiVersion",
1357
1668
  # })
1358
1669
  #
1359
1670
  # @example Response structure
@@ -1373,6 +1684,58 @@ module Aws::Appflow
1373
1684
  req.send_request(options)
1374
1685
  end
1375
1686
 
1687
+ # Returns the list of all registered custom connectors in your Amazon
1688
+ # Web Services account. This API lists only custom connectors registered
1689
+ # in this account, not the Amazon Web Services authored connectors.
1690
+ #
1691
+ # @option params [Integer] :max_results
1692
+ # Specifies the maximum number of items that should be returned in the
1693
+ # result set. The default for `maxResults` is 20 (for all paginated API
1694
+ # operations).
1695
+ #
1696
+ # @option params [String] :next_token
1697
+ # The pagination token for the next page of data.
1698
+ #
1699
+ # @return [Types::ListConnectorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1700
+ #
1701
+ # * {Types::ListConnectorsResponse#connectors #connectors} => Array&lt;Types::ConnectorDetail&gt;
1702
+ # * {Types::ListConnectorsResponse#next_token #next_token} => String
1703
+ #
1704
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1705
+ #
1706
+ # @example Request syntax with placeholder values
1707
+ #
1708
+ # resp = client.list_connectors({
1709
+ # max_results: 1,
1710
+ # next_token: "NextToken",
1711
+ # })
1712
+ #
1713
+ # @example Response structure
1714
+ #
1715
+ # resp.connectors #=> Array
1716
+ # resp.connectors[0].connector_description #=> String
1717
+ # resp.connectors[0].connector_name #=> String
1718
+ # resp.connectors[0].connector_owner #=> String
1719
+ # resp.connectors[0].connector_version #=> String
1720
+ # resp.connectors[0].application_type #=> String
1721
+ # 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"
1722
+ # resp.connectors[0].connector_label #=> String
1723
+ # resp.connectors[0].registered_at #=> Time
1724
+ # resp.connectors[0].registered_by #=> String
1725
+ # resp.connectors[0].connector_provisioning_type #=> String, one of "LAMBDA"
1726
+ # resp.connectors[0].connector_modes #=> Array
1727
+ # resp.connectors[0].connector_modes[0] #=> String
1728
+ # resp.next_token #=> String
1729
+ #
1730
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/ListConnectors AWS API Documentation
1731
+ #
1732
+ # @overload list_connectors(params = {})
1733
+ # @param [Hash] params ({})
1734
+ def list_connectors(params = {}, options = {})
1735
+ req = build_request(:list_connectors, params)
1736
+ req.send_request(options)
1737
+ end
1738
+
1376
1739
  # Lists all of the flows associated with your account.
1377
1740
  #
1378
1741
  # @option params [Integer] :max_results
@@ -1403,8 +1766,10 @@ module Aws::Appflow
1403
1766
  # resp.flows[0].description #=> String
1404
1767
  # resp.flows[0].flow_name #=> String
1405
1768
  # resp.flows[0].flow_status #=> String, one of "Active", "Deprecated", "Deleted", "Draft", "Errored", "Suspended"
1406
- # 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"
1407
- # 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"
1769
+ # 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"
1770
+ # resp.flows[0].source_connector_label #=> String
1771
+ # 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"
1772
+ # resp.flows[0].destination_connector_label #=> String
1408
1773
  # resp.flows[0].trigger_type #=> String, one of "Scheduled", "Event", "OnDemand"
1409
1774
  # resp.flows[0].created_at #=> Time
1410
1775
  # resp.flows[0].last_updated_at #=> Time
@@ -1455,6 +1820,55 @@ module Aws::Appflow
1455
1820
  req.send_request(options)
1456
1821
  end
1457
1822
 
1823
+ # Registers a new connector with your Amazon Web Services account.
1824
+ # Before you can register the connector, you must deploy lambda in your
1825
+ # account.
1826
+ #
1827
+ # @option params [String] :connector_label
1828
+ # The name of the connector. The name is unique for each
1829
+ # `ConnectorRegistration` in your Amazon Web Services account.
1830
+ #
1831
+ # @option params [String] :description
1832
+ # A description about the connector that's being registered.
1833
+ #
1834
+ # @option params [String] :connector_provisioning_type
1835
+ # The provisioning type of the connector. Currently the only supported
1836
+ # value is LAMBDA.
1837
+ #
1838
+ # @option params [Types::ConnectorProvisioningConfig] :connector_provisioning_config
1839
+ # The provisioning type of the connector. Currently the only supported
1840
+ # value is LAMBDA.
1841
+ #
1842
+ # @return [Types::RegisterConnectorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1843
+ #
1844
+ # * {Types::RegisterConnectorResponse#connector_arn #connector_arn} => String
1845
+ #
1846
+ # @example Request syntax with placeholder values
1847
+ #
1848
+ # resp = client.register_connector({
1849
+ # connector_label: "ConnectorLabel",
1850
+ # description: "Description",
1851
+ # connector_provisioning_type: "LAMBDA", # accepts LAMBDA
1852
+ # connector_provisioning_config: {
1853
+ # lambda: {
1854
+ # lambda_arn: "ARN", # required
1855
+ # },
1856
+ # },
1857
+ # })
1858
+ #
1859
+ # @example Response structure
1860
+ #
1861
+ # resp.connector_arn #=> String
1862
+ #
1863
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/RegisterConnector AWS API Documentation
1864
+ #
1865
+ # @overload register_connector(params = {})
1866
+ # @param [Hash] params ({})
1867
+ def register_connector(params = {}, options = {})
1868
+ req = build_request(:register_connector, params)
1869
+ req.send_request(options)
1870
+ end
1871
+
1458
1872
  # Activates an existing flow. For on-demand flows, this operation runs
1459
1873
  # the flow immediately. For schedule and event-triggered flows, this
1460
1874
  # operation activates the flow.
@@ -1551,6 +1965,36 @@ module Aws::Appflow
1551
1965
  req.send_request(options)
1552
1966
  end
1553
1967
 
1968
+ # Unregisters the custom connector registered in your account that
1969
+ # matches the connectorLabel provided in the request.
1970
+ #
1971
+ # @option params [required, String] :connector_label
1972
+ # The label of the connector. The label is unique for each
1973
+ # `ConnectorRegistration` in your Amazon Web Services account.
1974
+ #
1975
+ # @option params [Boolean] :force_delete
1976
+ # Indicates whether Amazon AppFlow should unregister the connector, even
1977
+ # if it is currently in use in one or more connector profiles. The
1978
+ # default value is false.
1979
+ #
1980
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1981
+ #
1982
+ # @example Request syntax with placeholder values
1983
+ #
1984
+ # resp = client.unregister_connector({
1985
+ # connector_label: "ConnectorLabel", # required
1986
+ # force_delete: false,
1987
+ # })
1988
+ #
1989
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/UnregisterConnector AWS API Documentation
1990
+ #
1991
+ # @overload unregister_connector(params = {})
1992
+ # @param [Hash] params ({})
1993
+ def unregister_connector(params = {}, options = {})
1994
+ req = build_request(:unregister_connector, params)
1995
+ req.send_request(options)
1996
+ end
1997
+
1554
1998
  # Removes a tag from the specified flow.
1555
1999
  #
1556
2000
  # @option params [required, String] :resource_arn
@@ -1667,6 +2111,15 @@ module Aws::Appflow
1667
2111
  # o_auth_scopes: ["OAuthScope"], # required
1668
2112
  # },
1669
2113
  # },
2114
+ # custom_connector: {
2115
+ # profile_properties: {
2116
+ # "ProfilePropertyKey" => "ProfilePropertyValue",
2117
+ # },
2118
+ # o_auth_2_properties: {
2119
+ # token_url: "TokenUrl", # required
2120
+ # o_auth_2_grant_type: "CLIENT_CREDENTIALS", # required, accepts CLIENT_CREDENTIALS, AUTHORIZATION_CODE
2121
+ # },
2122
+ # },
1670
2123
  # },
1671
2124
  # connector_profile_credentials: { # required
1672
2125
  # amplitude: {
@@ -1778,6 +2231,33 @@ module Aws::Appflow
1778
2231
  # },
1779
2232
  # },
1780
2233
  # },
2234
+ # custom_connector: {
2235
+ # authentication_type: "OAUTH2", # required, accepts OAUTH2, APIKEY, BASIC, CUSTOM
2236
+ # basic: {
2237
+ # username: "Username", # required
2238
+ # password: "Password", # required
2239
+ # },
2240
+ # oauth2: {
2241
+ # client_id: "ClientId",
2242
+ # client_secret: "ClientSecret",
2243
+ # access_token: "AccessToken",
2244
+ # refresh_token: "RefreshToken",
2245
+ # o_auth_request: {
2246
+ # auth_code: "AuthCode",
2247
+ # redirect_uri: "RedirectUri",
2248
+ # },
2249
+ # },
2250
+ # api_key: {
2251
+ # api_key: "ApiKey", # required
2252
+ # api_secret_key: "ApiSecretKey",
2253
+ # },
2254
+ # custom: {
2255
+ # custom_authentication_type: "CustomAuthenticationType", # required
2256
+ # credentials_map: {
2257
+ # "CredentialsMapKey" => "CredentialsMapValue",
2258
+ # },
2259
+ # },
2260
+ # },
1781
2261
  # },
1782
2262
  # },
1783
2263
  # })
@@ -1843,7 +2323,8 @@ module Aws::Appflow
1843
2323
  # },
1844
2324
  # },
1845
2325
  # source_flow_config: { # required
1846
- # 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
2326
+ # 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
2327
+ # api_version: "ApiVersion",
1847
2328
  # connector_profile_name: "ConnectorProfileName",
1848
2329
  # source_connector_properties: { # required
1849
2330
  # amplitude: {
@@ -1901,6 +2382,12 @@ module Aws::Appflow
1901
2382
  # sapo_data: {
1902
2383
  # object_path: "Object",
1903
2384
  # },
2385
+ # custom_connector: {
2386
+ # entity_name: "EntityName", # required
2387
+ # custom_properties: {
2388
+ # "CustomPropertyKey" => "CustomPropertyValue",
2389
+ # },
2390
+ # },
1904
2391
  # },
1905
2392
  # incremental_pull_config: {
1906
2393
  # datetime_type_field_name: "DatetimeTypeFieldName",
@@ -1908,7 +2395,8 @@ module Aws::Appflow
1908
2395
  # },
1909
2396
  # destination_flow_config_list: [ # required
1910
2397
  # {
1911
- # 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
2398
+ # 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
2399
+ # api_version: "ApiVersion",
1912
2400
  # connector_profile_name: "ConnectorProfileName",
1913
2401
  # destination_connector_properties: { # required
1914
2402
  # redshift: {
@@ -1943,7 +2431,7 @@ module Aws::Appflow
1943
2431
  # bucket_prefix: "BucketPrefix",
1944
2432
  # bucket_name: "BucketName",
1945
2433
  # },
1946
- # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE
2434
+ # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
1947
2435
  # },
1948
2436
  # snowflake: {
1949
2437
  # object: "Object", # required
@@ -1999,7 +2487,20 @@ module Aws::Appflow
1999
2487
  # bucket_prefix: "BucketPrefix",
2000
2488
  # bucket_name: "BucketName",
2001
2489
  # },
2002
- # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE
2490
+ # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
2491
+ # },
2492
+ # custom_connector: {
2493
+ # entity_name: "EntityName", # required
2494
+ # error_handling_config: {
2495
+ # fail_on_first_destination_error: false,
2496
+ # bucket_prefix: "BucketPrefix",
2497
+ # bucket_name: "BucketName",
2498
+ # },
2499
+ # write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
2500
+ # id_field_names: ["Name"],
2501
+ # custom_properties: {
2502
+ # "CustomPropertyKey" => "CustomPropertyValue",
2503
+ # },
2003
2504
  # },
2004
2505
  # },
2005
2506
  # },
@@ -2023,6 +2524,7 @@ module Aws::Appflow
2023
2524
  # 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
2024
2525
  # 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
2025
2526
  # 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
2527
+ # 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
2026
2528
  # },
2027
2529
  # destination_field: "DestinationField",
2028
2530
  # task_type: "Arithmetic", # required, accepts Arithmetic, Filter, Map, Map_all, Mask, Merge, Truncate, Validate
@@ -2059,7 +2561,7 @@ module Aws::Appflow
2059
2561
  params: params,
2060
2562
  config: config)
2061
2563
  context[:gem_name] = 'aws-sdk-appflow'
2062
- context[:gem_version] = '1.17.0'
2564
+ context[:gem_version] = '1.21.0'
2063
2565
  Seahorse::Client::Request.new(handlers, context)
2064
2566
  end
2065
2567