Chilkat Online Tools

CreateEndpoint C++ Example

AWS Database Migration Service

#include <CkRest.h>
#include <CkAuthAws.h>
#include <CkJsonObject.h>
#include <CkStringBuilder.h>

void ChilkatSample(void)
    {
    // This example requires the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    CkRest rest;
    bool success;

    CkAuthAws authAws;
    authAws.put_AccessKey("AWS_ACCESS_KEY");
    authAws.put_SecretKey("AWS_SECRET_KEY");

    // Don't forget to change the region to your particular region. (Also make the same change in the call to Connect below.)
    authAws.put_Region("us-west-2");
    authAws.put_ServiceName("dms");
    // SetAuthAws causes Chilkat to automatically add the following headers: Authorization, X-Amz-Date
    rest.SetAuthAws(authAws);

    // URL: https://dms.us-west-2.amazonaws.com/
    // Use the same region as specified above.
    success = rest.Connect("dms.us-west-2.amazonaws.com",443,true,true);
    if (success != true) {
        std::cout << "ConnectFailReason: " << rest.get_ConnectFailReason() << "\r\n";
        std::cout << rest.lastErrorText() << "\r\n";
        return;
    }

    // The following code creates the JSON request body.
    // The JSON created by this code is shown below.

    // Use this online tool to generate code from sample JSON:
    // Generate Code to Create JSON

    CkJsonObject json;
    json.UpdateString("CertificateArn","string");
    json.UpdateString("DatabaseName","string");
    json.UpdateString("DmsTransferSettings.BucketName","string");
    json.UpdateString("DmsTransferSettings.ServiceAccessRoleArn","string");
    json.UpdateString("DocDbSettings.DatabaseName","string");
    json.UpdateInt("DocDbSettings.DocsToInvestigate",123);
    json.UpdateInt("DocDbSettings.ExtractDocId",123);
    json.UpdateString("DocDbSettings.KmsKeyId","string");
    json.UpdateString("DocDbSettings.NestingLevel","string");
    json.UpdateString("DocDbSettings.Password","string");
    json.UpdateInt("DocDbSettings.Port",123);
    json.UpdateString("DocDbSettings.SecretsManagerAccessRoleArn","string");
    json.UpdateString("DocDbSettings.SecretsManagerSecretId","string");
    json.UpdateString("DocDbSettings.ServerName","string");
    json.UpdateString("DocDbSettings.Username","string");
    json.UpdateString("DynamoDbSettings.ServiceAccessRoleArn","string");
    json.UpdateString("ElasticsearchSettings.EndpointUri","string");
    json.UpdateInt("ElasticsearchSettings.ErrorRetryDuration",123);
    json.UpdateInt("ElasticsearchSettings.FullLoadErrorPercentage",123);
    json.UpdateString("ElasticsearchSettings.ServiceAccessRoleArn","string");
    json.UpdateString("EndpointIdentifier","string");
    json.UpdateString("EndpointType","string");
    json.UpdateString("EngineName","string");
    json.UpdateString("ExternalTableDefinition","string");
    json.UpdateString("ExtraConnectionAttributes","string");
    json.UpdateString("GcpMySQLSettings.AfterConnectScript","string");
    json.UpdateInt("GcpMySQLSettings.CleanSourceMetadataOnMismatch",123);
    json.UpdateString("GcpMySQLSettings.DatabaseName","string");
    json.UpdateInt("GcpMySQLSettings.EventsPollInterval",123);
    json.UpdateInt("GcpMySQLSettings.MaxFileSize",123);
    json.UpdateInt("GcpMySQLSettings.ParallelLoadThreads",123);
    json.UpdateString("GcpMySQLSettings.Password","string");
    json.UpdateInt("GcpMySQLSettings.Port",123);
    json.UpdateString("GcpMySQLSettings.SecretsManagerAccessRoleArn","string");
    json.UpdateString("GcpMySQLSettings.SecretsManagerSecretId","string");
    json.UpdateString("GcpMySQLSettings.ServerName","string");
    json.UpdateString("GcpMySQLSettings.ServerTimezone","string");
    json.UpdateString("GcpMySQLSettings.TargetDbType","string");
    json.UpdateString("GcpMySQLSettings.Username","string");
    json.UpdateString("IBMDb2Settings.CurrentLsn","string");
    json.UpdateString("IBMDb2Settings.DatabaseName","string");
    json.UpdateInt("IBMDb2Settings.MaxKBytesPerRead",123);
    json.UpdateString("IBMDb2Settings.Password","string");
    json.UpdateInt("IBMDb2Settings.Port",123);
    json.UpdateString("IBMDb2Settings.SecretsManagerAccessRoleArn","string");
    json.UpdateString("IBMDb2Settings.SecretsManagerSecretId","string");
    json.UpdateString("IBMDb2Settings.ServerName","string");
    json.UpdateInt("IBMDb2Settings.SetDataCaptureChanges",123);
    json.UpdateString("IBMDb2Settings.Username","string");
    json.UpdateString("KafkaSettings.Broker","string");
    json.UpdateInt("KafkaSettings.IncludeControlDetails",123);
    json.UpdateInt("KafkaSettings.IncludeNullAndEmpty",123);
    json.UpdateInt("KafkaSettings.IncludePartitionValue",123);
    json.UpdateInt("KafkaSettings.IncludeTableAlterOperations",123);
    json.UpdateInt("KafkaSettings.IncludeTransactionDetails",123);
    json.UpdateString("KafkaSettings.MessageFormat","string");
    json.UpdateInt("KafkaSettings.MessageMaxBytes",123);
    json.UpdateInt("KafkaSettings.NoHexPrefix",123);
    json.UpdateInt("KafkaSettings.PartitionIncludeSchemaTable",123);
    json.UpdateString("KafkaSettings.SaslPassword","string");
    json.UpdateString("KafkaSettings.SaslUsername","string");
    json.UpdateString("KafkaSettings.SecurityProtocol","string");
    json.UpdateString("KafkaSettings.SslCaCertificateArn","string");
    json.UpdateString("KafkaSettings.SslClientCertificateArn","string");
    json.UpdateString("KafkaSettings.SslClientKeyArn","string");
    json.UpdateString("KafkaSettings.SslClientKeyPassword","string");
    json.UpdateString("KafkaSettings.Topic","string");
    json.UpdateInt("KinesisSettings.IncludeControlDetails",123);
    json.UpdateInt("KinesisSettings.IncludeNullAndEmpty",123);
    json.UpdateInt("KinesisSettings.IncludePartitionValue",123);
    json.UpdateInt("KinesisSettings.IncludeTableAlterOperations",123);
    json.UpdateInt("KinesisSettings.IncludeTransactionDetails",123);
    json.UpdateString("KinesisSettings.MessageFormat","string");
    json.UpdateInt("KinesisSettings.NoHexPrefix",123);
    json.UpdateInt("KinesisSettings.PartitionIncludeSchemaTable",123);
    json.UpdateString("KinesisSettings.ServiceAccessRoleArn","string");
    json.UpdateString("KinesisSettings.StreamArn","string");
    json.UpdateString("KmsKeyId","string");
    json.UpdateInt("MicrosoftSQLServerSettings.BcpPacketSize",123);
    json.UpdateString("MicrosoftSQLServerSettings.ControlTablesFileGroup","string");
    json.UpdateString("MicrosoftSQLServerSettings.DatabaseName","string");
    json.UpdateString("MicrosoftSQLServerSettings.Password","string");
    json.UpdateInt("MicrosoftSQLServerSettings.Port",123);
    json.UpdateInt("MicrosoftSQLServerSettings.QuerySingleAlwaysOnNode",123);
    json.UpdateInt("MicrosoftSQLServerSettings.ReadBackupOnly",123);
    json.UpdateString("MicrosoftSQLServerSettings.SafeguardPolicy","string");
    json.UpdateString("MicrosoftSQLServerSettings.SecretsManagerAccessRoleArn","string");
    json.UpdateString("MicrosoftSQLServerSettings.SecretsManagerSecretId","string");
    json.UpdateString("MicrosoftSQLServerSettings.ServerName","string");
    json.UpdateInt("MicrosoftSQLServerSettings.UseBcpFullLoad",123);
    json.UpdateString("MicrosoftSQLServerSettings.Username","string");
    json.UpdateInt("MicrosoftSQLServerSettings.UseThirdPartyBackupDevice",123);
    json.UpdateString("MongoDbSettings.AuthMechanism","string");
    json.UpdateString("MongoDbSettings.AuthSource","string");
    json.UpdateString("MongoDbSettings.AuthType","string");
    json.UpdateString("MongoDbSettings.DatabaseName","string");
    json.UpdateString("MongoDbSettings.DocsToInvestigate","string");
    json.UpdateString("MongoDbSettings.ExtractDocId","string");
    json.UpdateString("MongoDbSettings.KmsKeyId","string");
    json.UpdateString("MongoDbSettings.NestingLevel","string");
    json.UpdateString("MongoDbSettings.Password","string");
    json.UpdateInt("MongoDbSettings.Port",123);
    json.UpdateString("MongoDbSettings.SecretsManagerAccessRoleArn","string");
    json.UpdateString("MongoDbSettings.SecretsManagerSecretId","string");
    json.UpdateString("MongoDbSettings.ServerName","string");
    json.UpdateString("MongoDbSettings.Username","string");
    json.UpdateString("MySQLSettings.AfterConnectScript","string");
    json.UpdateInt("MySQLSettings.CleanSourceMetadataOnMismatch",123);
    json.UpdateString("MySQLSettings.DatabaseName","string");
    json.UpdateInt("MySQLSettings.EventsPollInterval",123);
    json.UpdateInt("MySQLSettings.MaxFileSize",123);
    json.UpdateInt("MySQLSettings.ParallelLoadThreads",123);
    json.UpdateString("MySQLSettings.Password","string");
    json.UpdateInt("MySQLSettings.Port",123);
    json.UpdateString("MySQLSettings.SecretsManagerAccessRoleArn","string");
    json.UpdateString("MySQLSettings.SecretsManagerSecretId","string");
    json.UpdateString("MySQLSettings.ServerName","string");
    json.UpdateString("MySQLSettings.ServerTimezone","string");
    json.UpdateString("MySQLSettings.TargetDbType","string");
    json.UpdateString("MySQLSettings.Username","string");
    json.UpdateInt("NeptuneSettings.ErrorRetryDuration",123);
    json.UpdateInt("NeptuneSettings.IamAuthEnabled",123);
    json.UpdateInt("NeptuneSettings.MaxFileSize",123);
    json.UpdateInt("NeptuneSettings.MaxRetryCount",123);
    json.UpdateString("NeptuneSettings.S3BucketFolder","string");
    json.UpdateString("NeptuneSettings.S3BucketName","string");
    json.UpdateString("NeptuneSettings.ServiceAccessRoleArn","string");
    json.UpdateInt("OracleSettings.AccessAlternateDirectly",123);
    json.UpdateInt("OracleSettings.AdditionalArchivedLogDestId",123);
    json.UpdateInt("OracleSettings.AddSupplementalLogging",123);
    json.UpdateInt("OracleSettings.AllowSelectNestedTables",123);
    json.UpdateInt("OracleSettings.ArchivedLogDestId",123);
    json.UpdateInt("OracleSettings.ArchivedLogsOnly",123);
    json.UpdateString("OracleSettings.AsmPassword","string");
    json.UpdateString("OracleSettings.AsmServer","string");
    json.UpdateString("OracleSettings.AsmUser","string");
    json.UpdateString("OracleSettings.CharLengthSemantics","string");
    json.UpdateString("OracleSettings.DatabaseName","string");
    json.UpdateInt("OracleSettings.DirectPathNoLog",123);
    json.UpdateInt("OracleSettings.DirectPathParallelLoad",123);
    json.UpdateInt("OracleSettings.EnableHomogenousTablespace",123);
ERROR: Undefined variable(number)
ERROR: Undefined variable(number)
ERROR: Undefined variable(number)
    json.UpdateInt("OracleSettings.ExtraArchivedLogDestIds[0]",number);ERROR: Undefined variable(number)
ERROR: Undefined variable(number)
ERROR: Undefined variable(number)
ERROR: Undefined variable(number)
ERROR: Undefined variable(number)

    json.UpdateInt("OracleSettings.FailTasksOnLobTruncation",123);
    json.UpdateInt("OracleSettings.NumberDatatypeScale",123);
    json.UpdateString("OracleSettings.OraclePathPrefix","string");
    json.UpdateInt("OracleSettings.ParallelAsmReadThreads",123);
    json.UpdateString("OracleSettings.Password","string");
    json.UpdateInt("OracleSettings.Port",123);
    json.UpdateInt("OracleSettings.ReadAheadBlocks",123);
    json.UpdateInt("OracleSettings.ReadTableSpaceName",123);
    json.UpdateInt("OracleSettings.ReplacePathPrefix",123);
    json.UpdateInt("OracleSettings.RetryInterval",123);
    json.UpdateString("OracleSettings.SecretsManagerAccessRoleArn","string");
    json.UpdateString("OracleSettings.SecretsManagerOracleAsmAccessRoleArn","string");
    json.UpdateString("OracleSettings.SecretsManagerOracleAsmSecretId","string");
    json.UpdateString("OracleSettings.SecretsManagerSecretId","string");
    json.UpdateString("OracleSettings.SecurityDbEncryption","string");
    json.UpdateString("OracleSettings.SecurityDbEncryptionName","string");
    json.UpdateString("OracleSettings.ServerName","string");
    json.UpdateString("OracleSettings.SpatialDataOptionToGeoJsonFunctionName","string");
    json.UpdateInt("OracleSettings.StandbyDelayTime",123);
    json.UpdateInt("OracleSettings.UseAlternateFolderForOnline",123);
    json.UpdateInt("OracleSettings.UseBFile",123);
    json.UpdateInt("OracleSettings.UseDirectPathFullLoad",123);
    json.UpdateInt("OracleSettings.UseLogminerReader",123);
    json.UpdateString("OracleSettings.UsePathPrefix","string");
    json.UpdateString("OracleSettings.Username","string");
    json.UpdateString("Password","string");
    json.UpdateInt("Port",123);
    json.UpdateString("PostgreSQLSettings.AfterConnectScript","string");
    json.UpdateInt("PostgreSQLSettings.CaptureDdls",123);
    json.UpdateString("PostgreSQLSettings.DatabaseName","string");
    json.UpdateString("PostgreSQLSettings.DdlArtifactsSchema","string");
    json.UpdateInt("PostgreSQLSettings.ExecuteTimeout",123);
    json.UpdateInt("PostgreSQLSettings.FailTasksOnLobTruncation",123);
    json.UpdateInt("PostgreSQLSettings.HeartbeatEnable",123);
    json.UpdateInt("PostgreSQLSettings.HeartbeatFrequency",123);
    json.UpdateString("PostgreSQLSettings.HeartbeatSchema","string");
    json.UpdateInt("PostgreSQLSettings.MaxFileSize",123);
    json.UpdateString("PostgreSQLSettings.Password","string");
    json.UpdateString("PostgreSQLSettings.PluginName","string");
    json.UpdateInt("PostgreSQLSettings.Port",123);
    json.UpdateString("PostgreSQLSettings.SecretsManagerAccessRoleArn","string");
    json.UpdateString("PostgreSQLSettings.SecretsManagerSecretId","string");
    json.UpdateString("PostgreSQLSettings.ServerName","string");
    json.UpdateString("PostgreSQLSettings.SlotName","string");
    json.UpdateString("PostgreSQLSettings.Username","string");
    json.UpdateString("RedisSettings.AuthPassword","string");
    json.UpdateString("RedisSettings.AuthType","string");
    json.UpdateString("RedisSettings.AuthUserName","string");
    json.UpdateInt("RedisSettings.Port",123);
    json.UpdateString("RedisSettings.ServerName","string");
    json.UpdateString("RedisSettings.SslCaCertificateArn","string");
    json.UpdateString("RedisSettings.SslSecurityProtocol","string");
    json.UpdateInt("RedshiftSettings.AcceptAnyDate",123);
    json.UpdateString("RedshiftSettings.AfterConnectScript","string");
    json.UpdateString("RedshiftSettings.BucketFolder","string");
    json.UpdateString("RedshiftSettings.BucketName","string");
    json.UpdateInt("RedshiftSettings.CaseSensitiveNames",123);
    json.UpdateInt("RedshiftSettings.CompUpdate",123);
    json.UpdateInt("RedshiftSettings.ConnectionTimeout",123);
    json.UpdateString("RedshiftSettings.DatabaseName","string");
    json.UpdateString("RedshiftSettings.DateFormat","string");
    json.UpdateInt("RedshiftSettings.EmptyAsNull",123);
    json.UpdateString("RedshiftSettings.EncryptionMode","string");
    json.UpdateInt("RedshiftSettings.ExplicitIds",123);
    json.UpdateInt("RedshiftSettings.FileTransferUploadStreams",123);
    json.UpdateInt("RedshiftSettings.LoadTimeout",123);
    json.UpdateInt("RedshiftSettings.MaxFileSize",123);
    json.UpdateString("RedshiftSettings.Password","string");
    json.UpdateInt("RedshiftSettings.Port",123);
    json.UpdateInt("RedshiftSettings.RemoveQuotes",123);
    json.UpdateString("RedshiftSettings.ReplaceChars","string");
    json.UpdateString("RedshiftSettings.ReplaceInvalidChars","string");
    json.UpdateString("RedshiftSettings.SecretsManagerAccessRoleArn","string");
    json.UpdateString("RedshiftSettings.SecretsManagerSecretId","string");
    json.UpdateString("RedshiftSettings.ServerName","string");
    json.UpdateString("RedshiftSettings.ServerSideEncryptionKmsKeyId","string");
    json.UpdateString("RedshiftSettings.ServiceAccessRoleArn","string");
    json.UpdateString("RedshiftSettings.TimeFormat","string");
    json.UpdateInt("RedshiftSettings.TrimBlanks",123);
    json.UpdateInt("RedshiftSettings.TruncateColumns",123);
    json.UpdateString("RedshiftSettings.Username","string");
    json.UpdateInt("RedshiftSettings.WriteBufferSize",123);
    json.UpdateString("ResourceIdentifier","string");
    json.UpdateInt("S3Settings.AddColumnName",123);
    json.UpdateString("S3Settings.BucketFolder","string");
    json.UpdateString("S3Settings.BucketName","string");
    json.UpdateString("S3Settings.CannedAclForObjects","string");
    json.UpdateInt("S3Settings.CdcInsertsAndUpdates",123);
    json.UpdateInt("S3Settings.CdcInsertsOnly",123);
    json.UpdateInt("S3Settings.CdcMaxBatchInterval",123);
    json.UpdateInt("S3Settings.CdcMinFileSize",123);
    json.UpdateString("S3Settings.CdcPath","string");
    json.UpdateString("S3Settings.CompressionType","string");
    json.UpdateString("S3Settings.CsvDelimiter","string");
    json.UpdateString("S3Settings.CsvNoSupValue","string");
    json.UpdateString("S3Settings.CsvNullValue","string");
    json.UpdateString("S3Settings.CsvRowDelimiter","string");
    json.UpdateString("S3Settings.DataFormat","string");
    json.UpdateInt("S3Settings.DataPageSize",123);
    json.UpdateString("S3Settings.DatePartitionDelimiter","string");
    json.UpdateInt("S3Settings.DatePartitionEnabled",123);
    json.UpdateString("S3Settings.DatePartitionSequence","string");
    json.UpdateString("S3Settings.DatePartitionTimezone","string");
    json.UpdateInt("S3Settings.DictPageSizeLimit",123);
    json.UpdateInt("S3Settings.EnableStatistics",123);
    json.UpdateString("S3Settings.EncodingType","string");
    json.UpdateString("S3Settings.EncryptionMode","string");
    json.UpdateString("S3Settings.ExternalTableDefinition","string");
    json.UpdateInt("S3Settings.IgnoreHeaderRows",123);
    json.UpdateInt("S3Settings.IncludeOpForFullLoad",123);
    json.UpdateInt("S3Settings.MaxFileSize",123);
    json.UpdateInt("S3Settings.ParquetTimestampInMillisecond",123);
    json.UpdateString("S3Settings.ParquetVersion","string");
    json.UpdateInt("S3Settings.PreserveTransactions",123);
    json.UpdateInt("S3Settings.Rfc4180",123);
    json.UpdateInt("S3Settings.RowGroupLength",123);
    json.UpdateString("S3Settings.ServerSideEncryptionKmsKeyId","string");
    json.UpdateString("S3Settings.ServiceAccessRoleArn","string");
    json.UpdateString("S3Settings.TimestampColumnName","string");
    json.UpdateInt("S3Settings.UseCsvNoSupValue",123);
    json.UpdateInt("S3Settings.UseTaskStartTimeForFullLoadTimestamp",123);
    json.UpdateString("ServerName","string");
    json.UpdateString("ServiceAccessRoleArn","string");
    json.UpdateString("SslMode","string");
    json.UpdateString("SybaseSettings.DatabaseName","string");
    json.UpdateString("SybaseSettings.Password","string");
    json.UpdateInt("SybaseSettings.Port",123);
    json.UpdateString("SybaseSettings.SecretsManagerAccessRoleArn","string");
    json.UpdateString("SybaseSettings.SecretsManagerSecretId","string");
    json.UpdateString("SybaseSettings.ServerName","string");
    json.UpdateString("SybaseSettings.Username","string");
    json.UpdateString("Tags[0].Key","string");
    json.UpdateString("Tags[0].ResourceArn","string");
    json.UpdateString("Tags[0].Value","string");
    json.UpdateString("Username","string");

    // The JSON request body created by the above code:

    // {
    //   "CertificateArn": "string",
    //   "DatabaseName": "string",
    //   "DmsTransferSettings": {
    //     "BucketName": "string",
    //     "ServiceAccessRoleArn": "string"
    //   },
    //   "DocDbSettings": {
    //     "DatabaseName": "string",
    //     "DocsToInvestigate": number,
    //     "ExtractDocId": boolean,
    //     "KmsKeyId": "string",
    //     "NestingLevel": "string",
    //     "Password": "string",
    //     "Port": number,
    //     "SecretsManagerAccessRoleArn": "string",
    //     "SecretsManagerSecretId": "string",
    //     "ServerName": "string",
    //     "Username": "string"
    //   },
    //   "DynamoDbSettings": {
    //     "ServiceAccessRoleArn": "string"
    //   },
    //   "ElasticsearchSettings": {
    //     "EndpointUri": "string",
    //     "ErrorRetryDuration": number,
    //     "FullLoadErrorPercentage": number,
    //     "ServiceAccessRoleArn": "string"
    //   },
    //   "EndpointIdentifier": "string",
    //   "EndpointType": "string",
    //   "EngineName": "string",
    //   "ExternalTableDefinition": "string",
    //   "ExtraConnectionAttributes": "string",
    //   "GcpMySQLSettings": {
    //     "AfterConnectScript": "string",
    //     "CleanSourceMetadataOnMismatch": boolean,
    //     "DatabaseName": "string",
    //     "EventsPollInterval": number,
    //     "MaxFileSize": number,
    //     "ParallelLoadThreads": number,
    //     "Password": "string",
    //     "Port": number,
    //     "SecretsManagerAccessRoleArn": "string",
    //     "SecretsManagerSecretId": "string",
    //     "ServerName": "string",
    //     "ServerTimezone": "string",
    //     "TargetDbType": "string",
    //     "Username": "string"
    //   },
    //   "IBMDb2Settings": {
    //     "CurrentLsn": "string",
    //     "DatabaseName": "string",
    //     "MaxKBytesPerRead": number,
    //     "Password": "string",
    //     "Port": number,
    //     "SecretsManagerAccessRoleArn": "string",
    //     "SecretsManagerSecretId": "string",
    //     "ServerName": "string",
    //     "SetDataCaptureChanges": boolean,
    //     "Username": "string"
    //   },
    //   "KafkaSettings": {
    //     "Broker": "string",
    //     "IncludeControlDetails": boolean,
    //     "IncludeNullAndEmpty": boolean,
    //     "IncludePartitionValue": boolean,
    //     "IncludeTableAlterOperations": boolean,
    //     "IncludeTransactionDetails": boolean,
    //     "MessageFormat": "string",
    //     "MessageMaxBytes": number,
    //     "NoHexPrefix": boolean,
    //     "PartitionIncludeSchemaTable": boolean,
    //     "SaslPassword": "string",
    //     "SaslUsername": "string",
    //     "SecurityProtocol": "string",
    //     "SslCaCertificateArn": "string",
    //     "SslClientCertificateArn": "string",
    //     "SslClientKeyArn": "string",
    //     "SslClientKeyPassword": "string",
    //     "Topic": "string"
    //   },
    //   "KinesisSettings": {
    //     "IncludeControlDetails": boolean,
    //     "IncludeNullAndEmpty": boolean,
    //     "IncludePartitionValue": boolean,
    //     "IncludeTableAlterOperations": boolean,
    //     "IncludeTransactionDetails": boolean,
    //     "MessageFormat": "string",
    //     "NoHexPrefix": boolean,
    //     "PartitionIncludeSchemaTable": boolean,
    //     "ServiceAccessRoleArn": "string",
    //     "StreamArn": "string"
    //   },
    //   "KmsKeyId": "string",
    //   "MicrosoftSQLServerSettings": {
    //     "BcpPacketSize": number,
    //     "ControlTablesFileGroup": "string",
    //     "DatabaseName": "string",
    //     "Password": "string",
    //     "Port": number,
    //     "QuerySingleAlwaysOnNode": boolean,
    //     "ReadBackupOnly": boolean,
    //     "SafeguardPolicy": "string",
    //     "SecretsManagerAccessRoleArn": "string",
    //     "SecretsManagerSecretId": "string",
    //     "ServerName": "string",
    //     "UseBcpFullLoad": boolean,
    //     "Username": "string",
    //     "UseThirdPartyBackupDevice": boolean
    //   },
    //   "MongoDbSettings": {
    //     "AuthMechanism": "string",
    //     "AuthSource": "string",
    //     "AuthType": "string",
    //     "DatabaseName": "string",
    //     "DocsToInvestigate": "string",
    //     "ExtractDocId": "string",
    //     "KmsKeyId": "string",
    //     "NestingLevel": "string",
    //     "Password": "string",
    //     "Port": number,
    //     "SecretsManagerAccessRoleArn": "string",
    //     "SecretsManagerSecretId": "string",
    //     "ServerName": "string",
    //     "Username": "string"
    //   },
    //   "MySQLSettings": {
    //     "AfterConnectScript": "string",
    //     "CleanSourceMetadataOnMismatch": boolean,
    //     "DatabaseName": "string",
    //     "EventsPollInterval": number,
    //     "MaxFileSize": number,
    //     "ParallelLoadThreads": number,
    //     "Password": "string",
    //     "Port": number,
    //     "SecretsManagerAccessRoleArn": "string",
    //     "SecretsManagerSecretId": "string",
    //     "ServerName": "string",
    //     "ServerTimezone": "string",
    //     "TargetDbType": "string",
    //     "Username": "string"
    //   },
    //   "NeptuneSettings": {
    //     "ErrorRetryDuration": number,
    //     "IamAuthEnabled": boolean,
    //     "MaxFileSize": number,
    //     "MaxRetryCount": number,
    //     "S3BucketFolder": "string",
    //     "S3BucketName": "string",
    //     "ServiceAccessRoleArn": "string"
    //   },
    //   "OracleSettings": {
    //     "AccessAlternateDirectly": boolean,
    //     "AdditionalArchivedLogDestId": number,
    //     "AddSupplementalLogging": boolean,
    //     "AllowSelectNestedTables": boolean,
    //     "ArchivedLogDestId": number,
    //     "ArchivedLogsOnly": boolean,
    //     "AsmPassword": "string",
    //     "AsmServer": "string",
    //     "AsmUser": "string",
    //     "CharLengthSemantics": "string",
    //     "DatabaseName": "string",
    //     "DirectPathNoLog": boolean,
    //     "DirectPathParallelLoad": boolean,
    //     "EnableHomogenousTablespace": boolean,
    //     "ExtraArchivedLogDestIds": [
    //       number
    //     ],
    //     "FailTasksOnLobTruncation": boolean,
    //     "NumberDatatypeScale": number,
    //     "OraclePathPrefix": "string",
    //     "ParallelAsmReadThreads": number,
    //     "Password": "string",
    //     "Port": number,
    //     "ReadAheadBlocks": number,
    //     "ReadTableSpaceName": boolean,
    //     "ReplacePathPrefix": boolean,
    //     "RetryInterval": number,
    //     "SecretsManagerAccessRoleArn": "string",
    //     "SecretsManagerOracleAsmAccessRoleArn": "string",
    //     "SecretsManagerOracleAsmSecretId": "string",
    //     "SecretsManagerSecretId": "string",
    //     "SecurityDbEncryption": "string",
    //     "SecurityDbEncryptionName": "string",
    //     "ServerName": "string",
    //     "SpatialDataOptionToGeoJsonFunctionName": "string",
    //     "StandbyDelayTime": number,
    //     "UseAlternateFolderForOnline": boolean,
    //     "UseBFile": boolean,
    //     "UseDirectPathFullLoad": boolean,
    //     "UseLogminerReader": boolean,
    //     "UsePathPrefix": "string",
    //     "Username": "string"
    //   },
    //   "Password": "string",
    //   "Port": number,
    //   "PostgreSQLSettings": {
    //     "AfterConnectScript": "string",
    //     "CaptureDdls": boolean,
    //     "DatabaseName": "string",
    //     "DdlArtifactsSchema": "string",
    //     "ExecuteTimeout": number,
    //     "FailTasksOnLobTruncation": boolean,
    //     "HeartbeatEnable": boolean,
    //     "HeartbeatFrequency": number,
    //     "HeartbeatSchema": "string",
    //     "MaxFileSize": number,
    //     "Password": "string",
    //     "PluginName": "string",
    //     "Port": number,
    //     "SecretsManagerAccessRoleArn": "string",
    //     "SecretsManagerSecretId": "string",
    //     "ServerName": "string",
    //     "SlotName": "string",
    //     "Username": "string"
    //   },
    //   "RedisSettings": {
    //     "AuthPassword": "string",
    //     "AuthType": "string",
    //     "AuthUserName": "string",
    //     "Port": number,
    //     "ServerName": "string",
    //     "SslCaCertificateArn": "string",
    //     "SslSecurityProtocol": "string"
    //   },
    //   "RedshiftSettings": {
    //     "AcceptAnyDate": boolean,
    //     "AfterConnectScript": "string",
    //     "BucketFolder": "string",
    //     "BucketName": "string",
    //     "CaseSensitiveNames": boolean,
    //     "CompUpdate": boolean,
    //     "ConnectionTimeout": number,
    //     "DatabaseName": "string",
    //     "DateFormat": "string",
    //     "EmptyAsNull": boolean,
    //     "EncryptionMode": "string",
    //     "ExplicitIds": boolean,
    //     "FileTransferUploadStreams": number,
    //     "LoadTimeout": number,
    //     "MaxFileSize": number,
    //     "Password": "string",
    //     "Port": number,
    //     "RemoveQuotes": boolean,
    //     "ReplaceChars": "string",
    //     "ReplaceInvalidChars": "string",
    //     "SecretsManagerAccessRoleArn": "string",
    //     "SecretsManagerSecretId": "string",
    //     "ServerName": "string",
    //     "ServerSideEncryptionKmsKeyId": "string",
    //     "ServiceAccessRoleArn": "string",
    //     "TimeFormat": "string",
    //     "TrimBlanks": boolean,
    //     "TruncateColumns": boolean,
    //     "Username": "string",
    //     "WriteBufferSize": number
    //   },
    //   "ResourceIdentifier": "string",
    //   "S3Settings": {
    //     "AddColumnName": boolean,
    //     "BucketFolder": "string",
    //     "BucketName": "string",
    //     "CannedAclForObjects": "string",
    //     "CdcInsertsAndUpdates": boolean,
    //     "CdcInsertsOnly": boolean,
    //     "CdcMaxBatchInterval": number,
    //     "CdcMinFileSize": number,
    //     "CdcPath": "string",
    //     "CompressionType": "string",
    //     "CsvDelimiter": "string",
    //     "CsvNoSupValue": "string",
    //     "CsvNullValue": "string",
    //     "CsvRowDelimiter": "string",
    //     "DataFormat": "string",
    //     "DataPageSize": number,
    //     "DatePartitionDelimiter": "string",
    //     "DatePartitionEnabled": boolean,
    //     "DatePartitionSequence": "string",
    //     "DatePartitionTimezone": "string",
    //     "DictPageSizeLimit": number,
    //     "EnableStatistics": boolean,
    //     "EncodingType": "string",
    //     "EncryptionMode": "string",
    //     "ExternalTableDefinition": "string",
    //     "IgnoreHeaderRows": number,
    //     "IncludeOpForFullLoad": boolean,
    //     "MaxFileSize": number,
    //     "ParquetTimestampInMillisecond": boolean,
    //     "ParquetVersion": "string",
    //     "PreserveTransactions": boolean,
    //     "Rfc4180": boolean,
    //     "RowGroupLength": number,
    //     "ServerSideEncryptionKmsKeyId": "string",
    //     "ServiceAccessRoleArn": "string",
    //     "TimestampColumnName": "string",
    //     "UseCsvNoSupValue": boolean,
    //     "UseTaskStartTimeForFullLoadTimestamp": boolean
    //   },
    //   "ServerName": "string",
    //   "ServiceAccessRoleArn": "string",
    //   "SslMode": "string",
    //   "SybaseSettings": {
    //     "DatabaseName": "string",
    //     "Password": "string",
    //     "Port": number,
    //     "SecretsManagerAccessRoleArn": "string",
    //     "SecretsManagerSecretId": "string",
    //     "ServerName": "string",
    //     "Username": "string"
    //   },
    //   "Tags": [
    //     {
    //       "Key": "string",
    //       "ResourceArn": "string",
    //       "Value": "string"
    //     }
    //   ],
    //   "Username": "string"
    // }

    rest.AddHeader("Content-Type","application/x-amz-json-1.1");
    rest.AddHeader("X-Amz-Target","AmazonDMSv20160101.CreateEndpoint");

    CkStringBuilder sbRequestBody;
    json.EmitSb(sbRequestBody);
    CkStringBuilder sbResponseBody;
    success = rest.FullRequestSb("POST","/",sbRequestBody,sbResponseBody);
    if (success != true) {
        std::cout << rest.lastErrorText() << "\r\n";
        return;
    }

    int respStatusCode = rest.get_ResponseStatusCode();
    std::cout << "response status code = " << respStatusCode << "\r\n";
    if (respStatusCode != 200) {
        std::cout << "Response Header:" << "\r\n";
        std::cout << rest.responseHeader() << "\r\n";
        std::cout << "Response Body:" << "\r\n";
        std::cout << sbResponseBody.getAsString() << "\r\n";
        return;
    }

    CkJsonObject jResp;
    jResp.LoadSb(sbResponseBody);

    // The following code parses the JSON response.
    // A sample JSON response is shown below the sample code.

    // Use this online tool to generate parsing code from sample JSON:
    // Generate Parsing Code from JSON

    // Chilkat functions returning "const char *" return a pointer to temporary internal memory owned and managed by Chilkat.
    // See this example explaining how this memory should be used: const char * functions.

    int intVal;

    const char *CertificateArn = jResp.stringOf("Endpoint.CertificateArn");
    const char *DatabaseName = jResp.stringOf("Endpoint.DatabaseName");
    const char *BucketName = jResp.stringOf("Endpoint.DmsTransferSettings.BucketName");
    const char *ServiceAccessRoleArn = jResp.stringOf("Endpoint.DmsTransferSettings.ServiceAccessRoleArn");
    const char *DocDbSettingsDatabaseName = jResp.stringOf("Endpoint.DocDbSettings.DatabaseName");
    int DocsToInvestigate = jResp.IntOf("Endpoint.DocDbSettings.DocsToInvestigate");
    int ExtractDocId = jResp.IntOf("Endpoint.DocDbSettings.ExtractDocId");
    const char *KmsKeyId = jResp.stringOf("Endpoint.DocDbSettings.KmsKeyId");
    const char *NestingLevel = jResp.stringOf("Endpoint.DocDbSettings.NestingLevel");
    const char *Password = jResp.stringOf("Endpoint.DocDbSettings.Password");
    int Port = jResp.IntOf("Endpoint.DocDbSettings.Port");
    const char *SecretsManagerAccessRoleArn = jResp.stringOf("Endpoint.DocDbSettings.SecretsManagerAccessRoleArn");
    const char *SecretsManagerSecretId = jResp.stringOf("Endpoint.DocDbSettings.SecretsManagerSecretId");
    const char *ServerName = jResp.stringOf("Endpoint.DocDbSettings.ServerName");
    const char *Username = jResp.stringOf("Endpoint.DocDbSettings.Username");
    const char *DynamoDbSettingsServiceAccessRoleArn = jResp.stringOf("Endpoint.DynamoDbSettings.ServiceAccessRoleArn");
    const char *EndpointUri = jResp.stringOf("Endpoint.ElasticsearchSettings.EndpointUri");
    int ErrorRetryDuration = jResp.IntOf("Endpoint.ElasticsearchSettings.ErrorRetryDuration");
    int FullLoadErrorPercentage = jResp.IntOf("Endpoint.ElasticsearchSettings.FullLoadErrorPercentage");
    const char *ElasticsearchSettingsServiceAccessRoleArn = jResp.stringOf("Endpoint.ElasticsearchSettings.ServiceAccessRoleArn");
    const char *EndpointArn = jResp.stringOf("Endpoint.EndpointArn");
    const char *EndpointIdentifier = jResp.stringOf("Endpoint.EndpointIdentifier");
    const char *EndpointType = jResp.stringOf("Endpoint.EndpointType");
    const char *EngineDisplayName = jResp.stringOf("Endpoint.EngineDisplayName");
    const char *EngineName = jResp.stringOf("Endpoint.EngineName");
    const char *ExternalId = jResp.stringOf("Endpoint.ExternalId");
    const char *ExternalTableDefinition = jResp.stringOf("Endpoint.ExternalTableDefinition");
    const char *ExtraConnectionAttributes = jResp.stringOf("Endpoint.ExtraConnectionAttributes");
    const char *AfterConnectScript = jResp.stringOf("Endpoint.GcpMySQLSettings.AfterConnectScript");
    int CleanSourceMetadataOnMismatch = jResp.IntOf("Endpoint.GcpMySQLSettings.CleanSourceMetadataOnMismatch");
    const char *GcpMySQLSettingsDatabaseName = jResp.stringOf("Endpoint.GcpMySQLSettings.DatabaseName");
    int EventsPollInterval = jResp.IntOf("Endpoint.GcpMySQLSettings.EventsPollInterval");
    int MaxFileSize = jResp.IntOf("Endpoint.GcpMySQLSettings.MaxFileSize");
    int ParallelLoadThreads = jResp.IntOf("Endpoint.GcpMySQLSettings.ParallelLoadThreads");
    const char *GcpMySQLSettingsPassword = jResp.stringOf("Endpoint.GcpMySQLSettings.Password");
    int GcpMySQLSettingsPort = jResp.IntOf("Endpoint.GcpMySQLSettings.Port");
    const char *GcpMySQLSettingsSecretsManagerAccessRoleArn = jResp.stringOf("Endpoint.GcpMySQLSettings.SecretsManagerAccessRoleArn");
    const char *GcpMySQLSettingsSecretsManagerSecretId = jResp.stringOf("Endpoint.GcpMySQLSettings.SecretsManagerSecretId");
    const char *GcpMySQLSettingsServerName = jResp.stringOf("Endpoint.GcpMySQLSettings.ServerName");
    const char *ServerTimezone = jResp.stringOf("Endpoint.GcpMySQLSettings.ServerTimezone");
    const char *TargetDbType = jResp.stringOf("Endpoint.GcpMySQLSettings.TargetDbType");
    const char *GcpMySQLSettingsUsername = jResp.stringOf("Endpoint.GcpMySQLSettings.Username");
    const char *CurrentLsn = jResp.stringOf("Endpoint.IBMDb2Settings.CurrentLsn");
    const char *IBMDb2SettingsDatabaseName = jResp.stringOf("Endpoint.IBMDb2Settings.DatabaseName");
    int MaxKBytesPerRead = jResp.IntOf("Endpoint.IBMDb2Settings.MaxKBytesPerRead");
    const char *IBMDb2SettingsPassword = jResp.stringOf("Endpoint.IBMDb2Settings.Password");
    int IBMDb2SettingsPort = jResp.IntOf("Endpoint.IBMDb2Settings.Port");
    const char *IBMDb2SettingsSecretsManagerAccessRoleArn = jResp.stringOf("Endpoint.IBMDb2Settings.SecretsManagerAccessRoleArn");
    const char *IBMDb2SettingsSecretsManagerSecretId = jResp.stringOf("Endpoint.IBMDb2Settings.SecretsManagerSecretId");
    const char *IBMDb2SettingsServerName = jResp.stringOf("Endpoint.IBMDb2Settings.ServerName");
    int SetDataCaptureChanges = jResp.IntOf("Endpoint.IBMDb2Settings.SetDataCaptureChanges");
    const char *IBMDb2SettingsUsername = jResp.stringOf("Endpoint.IBMDb2Settings.Username");
    const char *Broker = jResp.stringOf("Endpoint.KafkaSettings.Broker");
    int IncludeControlDetails = jResp.IntOf("Endpoint.KafkaSettings.IncludeControlDetails");
    int IncludeNullAndEmpty = jResp.IntOf("Endpoint.KafkaSettings.IncludeNullAndEmpty");
    int IncludePartitionValue = jResp.IntOf("Endpoint.KafkaSettings.IncludePartitionValue");
    int IncludeTableAlterOperations = jResp.IntOf("Endpoint.KafkaSettings.IncludeTableAlterOperations");
    int IncludeTransactionDetails = jResp.IntOf("Endpoint.KafkaSettings.IncludeTransactionDetails");
    const char *MessageFormat = jResp.stringOf("Endpoint.KafkaSettings.MessageFormat");
    int MessageMaxBytes = jResp.IntOf("Endpoint.KafkaSettings.MessageMaxBytes");
    int NoHexPrefix = jResp.IntOf("Endpoint.KafkaSettings.NoHexPrefix");
    int PartitionIncludeSchemaTable = jResp.IntOf("Endpoint.KafkaSettings.PartitionIncludeSchemaTable");
    const char *SaslPassword = jResp.stringOf("Endpoint.KafkaSettings.SaslPassword");
    const char *SaslUsername = jResp.stringOf("Endpoint.KafkaSettings.SaslUsername");
    const char *SecurityProtocol = jResp.stringOf("Endpoint.KafkaSettings.SecurityProtocol");
    const char *SslCaCertificateArn = jResp.stringOf("Endpoint.KafkaSettings.SslCaCertificateArn");
    const char *SslClientCertificateArn = jResp.stringOf("Endpoint.KafkaSettings.SslClientCertificateArn");
    const char *SslClientKeyArn = jResp.stringOf("Endpoint.KafkaSettings.SslClientKeyArn");
    const char *SslClientKeyPassword = jResp.stringOf("Endpoint.KafkaSettings.SslClientKeyPassword");
    const char *Topic = jResp.stringOf("Endpoint.KafkaSettings.Topic");
    int KinesisSettingsIncludeControlDetails = jResp.IntOf("Endpoint.KinesisSettings.IncludeControlDetails");
    int KinesisSettingsIncludeNullAndEmpty = jResp.IntOf("Endpoint.KinesisSettings.IncludeNullAndEmpty");
    int KinesisSettingsIncludePartitionValue = jResp.IntOf("Endpoint.KinesisSettings.IncludePartitionValue");
    int KinesisSettingsIncludeTableAlterOperations = jResp.IntOf("Endpoint.KinesisSettings.IncludeTableAlterOperations");
    int KinesisSettingsIncludeTransactionDetails = jResp.IntOf("Endpoint.KinesisSettings.IncludeTransactionDetails");
    const char *KinesisSettingsMessageFormat = jResp.stringOf("Endpoint.KinesisSettings.MessageFormat");
    int KinesisSettingsNoHexPrefix = jResp.IntOf("Endpoint.KinesisSettings.NoHexPrefix");
    int KinesisSettingsPartitionIncludeSchemaTable = jResp.IntOf("Endpoint.KinesisSettings.PartitionIncludeSchemaTable");
    const char *KinesisSettingsServiceAccessRoleArn = jResp.stringOf("Endpoint.KinesisSettings.ServiceAccessRoleArn");
    const char *StreamArn = jResp.stringOf("Endpoint.KinesisSettings.StreamArn");
    const char *EndpointKmsKeyId = jResp.stringOf("Endpoint.KmsKeyId");
    int BcpPacketSize = jResp.IntOf("Endpoint.MicrosoftSQLServerSettings.BcpPacketSize");
    const char *ControlTablesFileGroup = jResp.stringOf("Endpoint.MicrosoftSQLServerSettings.ControlTablesFileGroup");
    const char *MicrosoftSQLServerSettingsDatabaseName = jResp.stringOf("Endpoint.MicrosoftSQLServerSettings.DatabaseName");
    const char *MicrosoftSQLServerSettingsPassword = jResp.stringOf("Endpoint.MicrosoftSQLServerSettings.Password");
    int MicrosoftSQLServerSettingsPort = jResp.IntOf("Endpoint.MicrosoftSQLServerSettings.Port");
    int QuerySingleAlwaysOnNode = jResp.IntOf("Endpoint.MicrosoftSQLServerSettings.QuerySingleAlwaysOnNode");
    int ReadBackupOnly = jResp.IntOf("Endpoint.MicrosoftSQLServerSettings.ReadBackupOnly");
    const char *SafeguardPolicy = jResp.stringOf("Endpoint.MicrosoftSQLServerSettings.SafeguardPolicy");
    const char *MicrosoftSQLServerSettingsSecretsManagerAccessRoleArn = jResp.stringOf("Endpoint.MicrosoftSQLServerSettings.SecretsManagerAccessRoleArn");
    const char *MicrosoftSQLServerSettingsSecretsManagerSecretId = jResp.stringOf("Endpoint.MicrosoftSQLServerSettings.SecretsManagerSecretId");
    const char *MicrosoftSQLServerSettingsServerName = jResp.stringOf("Endpoint.MicrosoftSQLServerSettings.ServerName");
    int UseBcpFullLoad = jResp.IntOf("Endpoint.MicrosoftSQLServerSettings.UseBcpFullLoad");
    const char *MicrosoftSQLServerSettingsUsername = jResp.stringOf("Endpoint.MicrosoftSQLServerSettings.Username");
    int UseThirdPartyBackupDevice = jResp.IntOf("Endpoint.MicrosoftSQLServerSettings.UseThirdPartyBackupDevice");
    const char *AuthMechanism = jResp.stringOf("Endpoint.MongoDbSettings.AuthMechanism");
    const char *AuthSource = jResp.stringOf("Endpoint.MongoDbSettings.AuthSource");
    const char *AuthType = jResp.stringOf("Endpoint.MongoDbSettings.AuthType");
    const char *MongoDbSettingsDatabaseName = jResp.stringOf("Endpoint.MongoDbSettings.DatabaseName");
    const char *MongoDbSettingsDocsToInvestigate = jResp.stringOf("Endpoint.MongoDbSettings.DocsToInvestigate");
    const char *MongoDbSettingsExtractDocId = jResp.stringOf("Endpoint.MongoDbSettings.ExtractDocId");
    const char *MongoDbSettingsKmsKeyId = jResp.stringOf("Endpoint.MongoDbSettings.KmsKeyId");
    const char *MongoDbSettingsNestingLevel = jResp.stringOf("Endpoint.MongoDbSettings.NestingLevel");
    const char *MongoDbSettingsPassword = jResp.stringOf("Endpoint.MongoDbSettings.Password");
    int MongoDbSettingsPort = jResp.IntOf("Endpoint.MongoDbSettings.Port");
    const char *MongoDbSettingsSecretsManagerAccessRoleArn = jResp.stringOf("Endpoint.MongoDbSettings.SecretsManagerAccessRoleArn");
    const char *MongoDbSettingsSecretsManagerSecretId = jResp.stringOf("Endpoint.MongoDbSettings.SecretsManagerSecretId");
    const char *MongoDbSettingsServerName = jResp.stringOf("Endpoint.MongoDbSettings.ServerName");
    const char *MongoDbSettingsUsername = jResp.stringOf("Endpoint.MongoDbSettings.Username");
    const char *MySQLSettingsAfterConnectScript = jResp.stringOf("Endpoint.MySQLSettings.AfterConnectScript");
    int MySQLSettingsCleanSourceMetadataOnMismatch = jResp.IntOf("Endpoint.MySQLSettings.CleanSourceMetadataOnMismatch");
    const char *MySQLSettingsDatabaseName = jResp.stringOf("Endpoint.MySQLSettings.DatabaseName");
    int MySQLSettingsEventsPollInterval = jResp.IntOf("Endpoint.MySQLSettings.EventsPollInterval");
    int MySQLSettingsMaxFileSize = jResp.IntOf("Endpoint.MySQLSettings.MaxFileSize");
    int MySQLSettingsParallelLoadThreads = jResp.IntOf("Endpoint.MySQLSettings.ParallelLoadThreads");
    const char *MySQLSettingsPassword = jResp.stringOf("Endpoint.MySQLSettings.Password");
    int MySQLSettingsPort = jResp.IntOf("Endpoint.MySQLSettings.Port");
    const char *MySQLSettingsSecretsManagerAccessRoleArn = jResp.stringOf("Endpoint.MySQLSettings.SecretsManagerAccessRoleArn");
    const char *MySQLSettingsSecretsManagerSecretId = jResp.stringOf("Endpoint.MySQLSettings.SecretsManagerSecretId");
    const char *MySQLSettingsServerName = jResp.stringOf("Endpoint.MySQLSettings.ServerName");
    const char *MySQLSettingsServerTimezone = jResp.stringOf("Endpoint.MySQLSettings.ServerTimezone");
    const char *MySQLSettingsTargetDbType = jResp.stringOf("Endpoint.MySQLSettings.TargetDbType");
    const char *MySQLSettingsUsername = jResp.stringOf("Endpoint.MySQLSettings.Username");
    int NeptuneSettingsErrorRetryDuration = jResp.IntOf("Endpoint.NeptuneSettings.ErrorRetryDuration");
    int IamAuthEnabled = jResp.IntOf("Endpoint.NeptuneSettings.IamAuthEnabled");
    int NeptuneSettingsMaxFileSize = jResp.IntOf("Endpoint.NeptuneSettings.MaxFileSize");
    int MaxRetryCount = jResp.IntOf("Endpoint.NeptuneSettings.MaxRetryCount");
    const char *S3BucketFolder = jResp.stringOf("Endpoint.NeptuneSettings.S3BucketFolder");
    const char *S3BucketName = jResp.stringOf("Endpoint.NeptuneSettings.S3BucketName");
    const char *NeptuneSettingsServiceAccessRoleArn = jResp.stringOf("Endpoint.NeptuneSettings.ServiceAccessRoleArn");
    int AccessAlternateDirectly = jResp.IntOf("Endpoint.OracleSettings.AccessAlternateDirectly");
    int AdditionalArchivedLogDestId = jResp.IntOf("Endpoint.OracleSettings.AdditionalArchivedLogDestId");
    int AddSupplementalLogging = jResp.IntOf("Endpoint.OracleSettings.AddSupplementalLogging");
    int AllowSelectNestedTables = jResp.IntOf("Endpoint.OracleSettings.AllowSelectNestedTables");
    int ArchivedLogDestId = jResp.IntOf("Endpoint.OracleSettings.ArchivedLogDestId");
    int ArchivedLogsOnly = jResp.IntOf("Endpoint.OracleSettings.ArchivedLogsOnly");
    const char *AsmPassword = jResp.stringOf("Endpoint.OracleSettings.AsmPassword");
    const char *AsmServer = jResp.stringOf("Endpoint.OracleSettings.AsmServer");
    const char *AsmUser = jResp.stringOf("Endpoint.OracleSettings.AsmUser");
    const char *CharLengthSemantics = jResp.stringOf("Endpoint.OracleSettings.CharLengthSemantics");
    const char *OracleSettingsDatabaseName = jResp.stringOf("Endpoint.OracleSettings.DatabaseName");
    int DirectPathNoLog = jResp.IntOf("Endpoint.OracleSettings.DirectPathNoLog");
    int DirectPathParallelLoad = jResp.IntOf("Endpoint.OracleSettings.DirectPathParallelLoad");
    int EnableHomogenousTablespace = jResp.IntOf("Endpoint.OracleSettings.EnableHomogenousTablespace");
    int FailTasksOnLobTruncation = jResp.IntOf("Endpoint.OracleSettings.FailTasksOnLobTruncation");
    int NumberDatatypeScale = jResp.IntOf("Endpoint.OracleSettings.NumberDatatypeScale");
    const char *OraclePathPrefix = jResp.stringOf("Endpoint.OracleSettings.OraclePathPrefix");
    int ParallelAsmReadThreads = jResp.IntOf("Endpoint.OracleSettings.ParallelAsmReadThreads");
    const char *OracleSettingsPassword = jResp.stringOf("Endpoint.OracleSettings.Password");
    int OracleSettingsPort = jResp.IntOf("Endpoint.OracleSettings.Port");
    int ReadAheadBlocks = jResp.IntOf("Endpoint.OracleSettings.ReadAheadBlocks");
    int ReadTableSpaceName = jResp.IntOf("Endpoint.OracleSettings.ReadTableSpaceName");
    int ReplacePathPrefix = jResp.IntOf("Endpoint.OracleSettings.ReplacePathPrefix");
    int RetryInterval = jResp.IntOf("Endpoint.OracleSettings.RetryInterval");
    const char *OracleSettingsSecretsManagerAccessRoleArn = jResp.stringOf("Endpoint.OracleSettings.SecretsManagerAccessRoleArn");
    const char *SecretsManagerOracleAsmAccessRoleArn = jResp.stringOf("Endpoint.OracleSettings.SecretsManagerOracleAsmAccessRoleArn");
    const char *SecretsManagerOracleAsmSecretId = jResp.stringOf("Endpoint.OracleSettings.SecretsManagerOracleAsmSecretId");
    const char *OracleSettingsSecretsManagerSecretId = jResp.stringOf("Endpoint.OracleSettings.SecretsManagerSecretId");
    const char *SecurityDbEncryption = jResp.stringOf("Endpoint.OracleSettings.SecurityDbEncryption");
    const char *SecurityDbEncryptionName = jResp.stringOf("Endpoint.OracleSettings.SecurityDbEncryptionName");
    const char *OracleSettingsServerName = jResp.stringOf("Endpoint.OracleSettings.ServerName");
    const char *SpatialDataOptionToGeoJsonFunctionName = jResp.stringOf("Endpoint.OracleSettings.SpatialDataOptionToGeoJsonFunctionName");
    int StandbyDelayTime = jResp.IntOf("Endpoint.OracleSettings.StandbyDelayTime");
    int UseAlternateFolderForOnline = jResp.IntOf("Endpoint.OracleSettings.UseAlternateFolderForOnline");
    int UseBFile = jResp.IntOf("Endpoint.OracleSettings.UseBFile");
    int UseDirectPathFullLoad = jResp.IntOf("Endpoint.OracleSettings.UseDirectPathFullLoad");
    int UseLogminerReader = jResp.IntOf("Endpoint.OracleSettings.UseLogminerReader");
    const char *UsePathPrefix = jResp.stringOf("Endpoint.OracleSettings.UsePathPrefix");
    const char *OracleSettingsUsername = jResp.stringOf("Endpoint.OracleSettings.Username");
    int EndpointPort = jResp.IntOf("Endpoint.Port");
    const char *PostgreSQLSettingsAfterConnectScript = jResp.stringOf("Endpoint.PostgreSQLSettings.AfterConnectScript");
    int CaptureDdls = jResp.IntOf("Endpoint.PostgreSQLSettings.CaptureDdls");
    const char *PostgreSQLSettingsDatabaseName = jResp.stringOf("Endpoint.PostgreSQLSettings.DatabaseName");
    const char *DdlArtifactsSchema = jResp.stringOf("Endpoint.PostgreSQLSettings.DdlArtifactsSchema");
    int ExecuteTimeout = jResp.IntOf("Endpoint.PostgreSQLSettings.ExecuteTimeout");
    int PostgreSQLSettingsFailTasksOnLobTruncation = jResp.IntOf("Endpoint.PostgreSQLSettings.FailTasksOnLobTruncation");
    int HeartbeatEnable = jResp.IntOf("Endpoint.PostgreSQLSettings.HeartbeatEnable");
    int HeartbeatFrequency = jResp.IntOf("Endpoint.PostgreSQLSettings.HeartbeatFrequency");
    const char *HeartbeatSchema = jResp.stringOf("Endpoint.PostgreSQLSettings.HeartbeatSchema");
    int PostgreSQLSettingsMaxFileSize = jResp.IntOf("Endpoint.PostgreSQLSettings.MaxFileSize");
    const char *PostgreSQLSettingsPassword = jResp.stringOf("Endpoint.PostgreSQLSettings.Password");
    const char *PluginName = jResp.stringOf("Endpoint.PostgreSQLSettings.PluginName");
    int PostgreSQLSettingsPort = jResp.IntOf("Endpoint.PostgreSQLSettings.Port");
    const char *PostgreSQLSettingsSecretsManagerAccessRoleArn = jResp.stringOf("Endpoint.PostgreSQLSettings.SecretsManagerAccessRoleArn");
    const char *PostgreSQLSettingsSecretsManagerSecretId = jResp.stringOf("Endpoint.PostgreSQLSettings.SecretsManagerSecretId");
    const char *PostgreSQLSettingsServerName = jResp.stringOf("Endpoint.PostgreSQLSettings.ServerName");
    const char *SlotName = jResp.stringOf("Endpoint.PostgreSQLSettings.SlotName");
    const char *PostgreSQLSettingsUsername = jResp.stringOf("Endpoint.PostgreSQLSettings.Username");
    const char *AuthPassword = jResp.stringOf("Endpoint.RedisSettings.AuthPassword");
    const char *RedisSettingsAuthType = jResp.stringOf("Endpoint.RedisSettings.AuthType");
    const char *AuthUserName = jResp.stringOf("Endpoint.RedisSettings.AuthUserName");
    int RedisSettingsPort = jResp.IntOf("Endpoint.RedisSettings.Port");
    const char *RedisSettingsServerName = jResp.stringOf("Endpoint.RedisSettings.ServerName");
    const char *RedisSettingsSslCaCertificateArn = jResp.stringOf("Endpoint.RedisSettings.SslCaCertificateArn");
    const char *SslSecurityProtocol = jResp.stringOf("Endpoint.RedisSettings.SslSecurityProtocol");
    int AcceptAnyDate = jResp.IntOf("Endpoint.RedshiftSettings.AcceptAnyDate");
    const char *RedshiftSettingsAfterConnectScript = jResp.stringOf("Endpoint.RedshiftSettings.AfterConnectScript");
    const char *BucketFolder = jResp.stringOf("Endpoint.RedshiftSettings.BucketFolder");
    const char *RedshiftSettingsBucketName = jResp.stringOf("Endpoint.RedshiftSettings.BucketName");
    int CaseSensitiveNames = jResp.IntOf("Endpoint.RedshiftSettings.CaseSensitiveNames");
    int CompUpdate = jResp.IntOf("Endpoint.RedshiftSettings.CompUpdate");
    int ConnectionTimeout = jResp.IntOf("Endpoint.RedshiftSettings.ConnectionTimeout");
    const char *RedshiftSettingsDatabaseName = jResp.stringOf("Endpoint.RedshiftSettings.DatabaseName");
    const char *DateFormat = jResp.stringOf("Endpoint.RedshiftSettings.DateFormat");
    int EmptyAsNull = jResp.IntOf("Endpoint.RedshiftSettings.EmptyAsNull");
    const char *EncryptionMode = jResp.stringOf("Endpoint.RedshiftSettings.EncryptionMode");
    int ExplicitIds = jResp.IntOf("Endpoint.RedshiftSettings.ExplicitIds");
    int FileTransferUploadStreams = jResp.IntOf("Endpoint.RedshiftSettings.FileTransferUploadStreams");
    int LoadTimeout = jResp.IntOf("Endpoint.RedshiftSettings.LoadTimeout");
    int RedshiftSettingsMaxFileSize = jResp.IntOf("Endpoint.RedshiftSettings.MaxFileSize");
    const char *RedshiftSettingsPassword = jResp.stringOf("Endpoint.RedshiftSettings.Password");
    int RedshiftSettingsPort = jResp.IntOf("Endpoint.RedshiftSettings.Port");
    int RemoveQuotes = jResp.IntOf("Endpoint.RedshiftSettings.RemoveQuotes");
    const char *ReplaceChars = jResp.stringOf("Endpoint.RedshiftSettings.ReplaceChars");
    const char *ReplaceInvalidChars = jResp.stringOf("Endpoint.RedshiftSettings.ReplaceInvalidChars");
    const char *RedshiftSettingsSecretsManagerAccessRoleArn = jResp.stringOf("Endpoint.RedshiftSettings.SecretsManagerAccessRoleArn");
    const char *RedshiftSettingsSecretsManagerSecretId = jResp.stringOf("Endpoint.RedshiftSettings.SecretsManagerSecretId");
    const char *RedshiftSettingsServerName = jResp.stringOf("Endpoint.RedshiftSettings.ServerName");
    const char *ServerSideEncryptionKmsKeyId = jResp.stringOf("Endpoint.RedshiftSettings.ServerSideEncryptionKmsKeyId");
    const char *RedshiftSettingsServiceAccessRoleArn = jResp.stringOf("Endpoint.RedshiftSettings.ServiceAccessRoleArn");
    const char *TimeFormat = jResp.stringOf("Endpoint.RedshiftSettings.TimeFormat");
    int TrimBlanks = jResp.IntOf("Endpoint.RedshiftSettings.TrimBlanks");
    int TruncateColumns = jResp.IntOf("Endpoint.RedshiftSettings.TruncateColumns");
    const char *RedshiftSettingsUsername = jResp.stringOf("Endpoint.RedshiftSettings.Username");
    int WriteBufferSize = jResp.IntOf("Endpoint.RedshiftSettings.WriteBufferSize");
    int AddColumnName = jResp.IntOf("Endpoint.S3Settings.AddColumnName");
    const char *S3SettingsBucketFolder = jResp.stringOf("Endpoint.S3Settings.BucketFolder");
    const char *S3SettingsBucketName = jResp.stringOf("Endpoint.S3Settings.BucketName");
    const char *CannedAclForObjects = jResp.stringOf("Endpoint.S3Settings.CannedAclForObjects");
    int CdcInsertsAndUpdates = jResp.IntOf("Endpoint.S3Settings.CdcInsertsAndUpdates");
    int CdcInsertsOnly = jResp.IntOf("Endpoint.S3Settings.CdcInsertsOnly");
    int CdcMaxBatchInterval = jResp.IntOf("Endpoint.S3Settings.CdcMaxBatchInterval");
    int CdcMinFileSize = jResp.IntOf("Endpoint.S3Settings.CdcMinFileSize");
    const char *CdcPath = jResp.stringOf("Endpoint.S3Settings.CdcPath");
    const char *CompressionType = jResp.stringOf("Endpoint.S3Settings.CompressionType");
    const char *CsvDelimiter = jResp.stringOf("Endpoint.S3Settings.CsvDelimiter");
    const char *CsvNoSupValue = jResp.stringOf("Endpoint.S3Settings.CsvNoSupValue");
    const char *CsvNullValue = jResp.stringOf("Endpoint.S3Settings.CsvNullValue");
    const char *CsvRowDelimiter = jResp.stringOf("Endpoint.S3Settings.CsvRowDelimiter");
    const char *DataFormat = jResp.stringOf("Endpoint.S3Settings.DataFormat");
    int DataPageSize = jResp.IntOf("Endpoint.S3Settings.DataPageSize");
    const char *DatePartitionDelimiter = jResp.stringOf("Endpoint.S3Settings.DatePartitionDelimiter");
    int DatePartitionEnabled = jResp.IntOf("Endpoint.S3Settings.DatePartitionEnabled");
    const char *DatePartitionSequence = jResp.stringOf("Endpoint.S3Settings.DatePartitionSequence");
    const char *DatePartitionTimezone = jResp.stringOf("Endpoint.S3Settings.DatePartitionTimezone");
    int DictPageSizeLimit = jResp.IntOf("Endpoint.S3Settings.DictPageSizeLimit");
    int EnableStatistics = jResp.IntOf("Endpoint.S3Settings.EnableStatistics");
    const char *EncodingType = jResp.stringOf("Endpoint.S3Settings.EncodingType");
    const char *S3SettingsEncryptionMode = jResp.stringOf("Endpoint.S3Settings.EncryptionMode");
    const char *S3SettingsExternalTableDefinition = jResp.stringOf("Endpoint.S3Settings.ExternalTableDefinition");
    int IgnoreHeaderRows = jResp.IntOf("Endpoint.S3Settings.IgnoreHeaderRows");
    int IncludeOpForFullLoad = jResp.IntOf("Endpoint.S3Settings.IncludeOpForFullLoad");
    int S3SettingsMaxFileSize = jResp.IntOf("Endpoint.S3Settings.MaxFileSize");
    int ParquetTimestampInMillisecond = jResp.IntOf("Endpoint.S3Settings.ParquetTimestampInMillisecond");
    const char *ParquetVersion = jResp.stringOf("Endpoint.S3Settings.ParquetVersion");
    int PreserveTransactions = jResp.IntOf("Endpoint.S3Settings.PreserveTransactions");
    int Rfc4180 = jResp.IntOf("Endpoint.S3Settings.Rfc4180");
    int RowGroupLength = jResp.IntOf("Endpoint.S3Settings.RowGroupLength");
    const char *S3SettingsServerSideEncryptionKmsKeyId = jResp.stringOf("Endpoint.S3Settings.ServerSideEncryptionKmsKeyId");
    const char *S3SettingsServiceAccessRoleArn = jResp.stringOf("Endpoint.S3Settings.ServiceAccessRoleArn");
    const char *TimestampColumnName = jResp.stringOf("Endpoint.S3Settings.TimestampColumnName");
    int UseCsvNoSupValue = jResp.IntOf("Endpoint.S3Settings.UseCsvNoSupValue");
    int UseTaskStartTimeForFullLoadTimestamp = jResp.IntOf("Endpoint.S3Settings.UseTaskStartTimeForFullLoadTimestamp");
    const char *EndpointServerName = jResp.stringOf("Endpoint.ServerName");
    const char *EndpointServiceAccessRoleArn = jResp.stringOf("Endpoint.ServiceAccessRoleArn");
    const char *SslMode = jResp.stringOf("Endpoint.SslMode");
    const char *Status = jResp.stringOf("Endpoint.Status");
    const char *SybaseSettingsDatabaseName = jResp.stringOf("Endpoint.SybaseSettings.DatabaseName");
    const char *SybaseSettingsPassword = jResp.stringOf("Endpoint.SybaseSettings.Password");
    int SybaseSettingsPort = jResp.IntOf("Endpoint.SybaseSettings.Port");
    const char *SybaseSettingsSecretsManagerAccessRoleArn = jResp.stringOf("Endpoint.SybaseSettings.SecretsManagerAccessRoleArn");
    const char *SybaseSettingsSecretsManagerSecretId = jResp.stringOf("Endpoint.SybaseSettings.SecretsManagerSecretId");
    const char *SybaseSettingsServerName = jResp.stringOf("Endpoint.SybaseSettings.ServerName");
    const char *SybaseSettingsUsername = jResp.stringOf("Endpoint.SybaseSettings.Username");
    const char *EndpointUsername = jResp.stringOf("Endpoint.Username");
    int i = 0;
    int count_i = jResp.SizeOfArray("Endpoint.OracleSettings.ExtraArchivedLogDestIds");
    while (i < count_i) {
        jResp.put_I(i);
        intVal = jResp.IntOf("Endpoint.OracleSettings.ExtraArchivedLogDestIds[i]");
        i = i + 1;
    }

    // A sample JSON response body parsed by the above code:

    // {
    //   "Endpoint": {
    //     "CertificateArn": "string",
    //     "DatabaseName": "string",
    //     "DmsTransferSettings": {
    //       "BucketName": "string",
    //       "ServiceAccessRoleArn": "string"
    //     },
    //     "DocDbSettings": {
    //       "DatabaseName": "string",
    //       "DocsToInvestigate": number,
    //       "ExtractDocId": boolean,
    //       "KmsKeyId": "string",
    //       "NestingLevel": "string",
    //       "Password": "string",
    //       "Port": number,
    //       "SecretsManagerAccessRoleArn": "string",
    //       "SecretsManagerSecretId": "string",
    //       "ServerName": "string",
    //       "Username": "string"
    //     },
    //     "DynamoDbSettings": {
    //       "ServiceAccessRoleArn": "string"
    //     },
    //     "ElasticsearchSettings": {
    //       "EndpointUri": "string",
    //       "ErrorRetryDuration": number,
    //       "FullLoadErrorPercentage": number,
    //       "ServiceAccessRoleArn": "string"
    //     },
    //     "EndpointArn": "string",
    //     "EndpointIdentifier": "string",
    //     "EndpointType": "string",
    //     "EngineDisplayName": "string",
    //     "EngineName": "string",
    //     "ExternalId": "string",
    //     "ExternalTableDefinition": "string",
    //     "ExtraConnectionAttributes": "string",
    //     "GcpMySQLSettings": {
    //       "AfterConnectScript": "string",
    //       "CleanSourceMetadataOnMismatch": boolean,
    //       "DatabaseName": "string",
    //       "EventsPollInterval": number,
    //       "MaxFileSize": number,
    //       "ParallelLoadThreads": number,
    //       "Password": "string",
    //       "Port": number,
    //       "SecretsManagerAccessRoleArn": "string",
    //       "SecretsManagerSecretId": "string",
    //       "ServerName": "string",
    //       "ServerTimezone": "string",
    //       "TargetDbType": "string",
    //       "Username": "string"
    //     },
    //     "IBMDb2Settings": {
    //       "CurrentLsn": "string",
    //       "DatabaseName": "string",
    //       "MaxKBytesPerRead": number,
    //       "Password": "string",
    //       "Port": number,
    //       "SecretsManagerAccessRoleArn": "string",
    //       "SecretsManagerSecretId": "string",
    //       "ServerName": "string",
    //       "SetDataCaptureChanges": boolean,
    //       "Username": "string"
    //     },
    //     "KafkaSettings": {
    //       "Broker": "string",
    //       "IncludeControlDetails": boolean,
    //       "IncludeNullAndEmpty": boolean,
    //       "IncludePartitionValue": boolean,
    //       "IncludeTableAlterOperations": boolean,
    //       "IncludeTransactionDetails": boolean,
    //       "MessageFormat": "string",
    //       "MessageMaxBytes": number,
    //       "NoHexPrefix": boolean,
    //       "PartitionIncludeSchemaTable": boolean,
    //       "SaslPassword": "string",
    //       "SaslUsername": "string",
    //       "SecurityProtocol": "string",
    //       "SslCaCertificateArn": "string",
    //       "SslClientCertificateArn": "string",
    //       "SslClientKeyArn": "string",
    //       "SslClientKeyPassword": "string",
    //       "Topic": "string"
    //     },
    //     "KinesisSettings": {
    //       "IncludeControlDetails": boolean,
    //       "IncludeNullAndEmpty": boolean,
    //       "IncludePartitionValue": boolean,
    //       "IncludeTableAlterOperations": boolean,
    //       "IncludeTransactionDetails": boolean,
    //       "MessageFormat": "string",
    //       "NoHexPrefix": boolean,
    //       "PartitionIncludeSchemaTable": boolean,
    //       "ServiceAccessRoleArn": "string",
    //       "StreamArn": "string"
    //     },
    //     "KmsKeyId": "string",
    //     "MicrosoftSQLServerSettings": {
    //       "BcpPacketSize": number,
    //       "ControlTablesFileGroup": "string",
    //       "DatabaseName": "string",
    //       "Password": "string",
    //       "Port": number,
    //       "QuerySingleAlwaysOnNode": boolean,
    //       "ReadBackupOnly": boolean,
    //       "SafeguardPolicy": "string",
    //       "SecretsManagerAccessRoleArn": "string",
    //       "SecretsManagerSecretId": "string",
    //       "ServerName": "string",
    //       "UseBcpFullLoad": boolean,
    //       "Username": "string",
    //       "UseThirdPartyBackupDevice": boolean
    //     },
    //     "MongoDbSettings": {
    //       "AuthMechanism": "string",
    //       "AuthSource": "string",
    //       "AuthType": "string",
    //       "DatabaseName": "string",
    //       "DocsToInvestigate": "string",
    //       "ExtractDocId": "string",
    //       "KmsKeyId": "string",
    //       "NestingLevel": "string",
    //       "Password": "string",
    //       "Port": number,
    //       "SecretsManagerAccessRoleArn": "string",
    //       "SecretsManagerSecretId": "string",
    //       "ServerName": "string",
    //       "Username": "string"
    //     },
    //     "MySQLSettings": {
    //       "AfterConnectScript": "string",
    //       "CleanSourceMetadataOnMismatch": boolean,
    //       "DatabaseName": "string",
    //       "EventsPollInterval": number,
    //       "MaxFileSize": number,
    //       "ParallelLoadThreads": number,
    //       "Password": "string",
    //       "Port": number,
    //       "SecretsManagerAccessRoleArn": "string",
    //       "SecretsManagerSecretId": "string",
    //       "ServerName": "string",
    //       "ServerTimezone": "string",
    //       "TargetDbType": "string",
    //       "Username": "string"
    //     },
    //     "NeptuneSettings": {
    //       "ErrorRetryDuration": number,
    //       "IamAuthEnabled": boolean,
    //       "MaxFileSize": number,
    //       "MaxRetryCount": number,
    //       "S3BucketFolder": "string",
    //       "S3BucketName": "string",
    //       "ServiceAccessRoleArn": "string"
    //     },
    //     "OracleSettings": {
    //       "AccessAlternateDirectly": boolean,
    //       "AdditionalArchivedLogDestId": number,
    //       "AddSupplementalLogging": boolean,
    //       "AllowSelectNestedTables": boolean,
    //       "ArchivedLogDestId": number,
    //       "ArchivedLogsOnly": boolean,
    //       "AsmPassword": "string",
    //       "AsmServer": "string",
    //       "AsmUser": "string",
    //       "CharLengthSemantics": "string",
    //       "DatabaseName": "string",
    //       "DirectPathNoLog": boolean,
    //       "DirectPathParallelLoad": boolean,
    //       "EnableHomogenousTablespace": boolean,
    //       "ExtraArchivedLogDestIds": [
    //         number
    //       ],
    //       "FailTasksOnLobTruncation": boolean,
    //       "NumberDatatypeScale": number,
    //       "OraclePathPrefix": "string",
    //       "ParallelAsmReadThreads": number,
    //       "Password": "string",
    //       "Port": number,
    //       "ReadAheadBlocks": number,
    //       "ReadTableSpaceName": boolean,
    //       "ReplacePathPrefix": boolean,
    //       "RetryInterval": number,
    //       "SecretsManagerAccessRoleArn": "string",
    //       "SecretsManagerOracleAsmAccessRoleArn": "string",
    //       "SecretsManagerOracleAsmSecretId": "string",
    //       "SecretsManagerSecretId": "string",
    //       "SecurityDbEncryption": "string",
    //       "SecurityDbEncryptionName": "string",
    //       "ServerName": "string",
    //       "SpatialDataOptionToGeoJsonFunctionName": "string",
    //       "StandbyDelayTime": number,
    //       "UseAlternateFolderForOnline": boolean,
    //       "UseBFile": boolean,
    //       "UseDirectPathFullLoad": boolean,
    //       "UseLogminerReader": boolean,
    //       "UsePathPrefix": "string",
    //       "Username": "string"
    //     },
    //     "Port": number,
    //     "PostgreSQLSettings": {
    //       "AfterConnectScript": "string",
    //       "CaptureDdls": boolean,
    //       "DatabaseName": "string",
    //       "DdlArtifactsSchema": "string",
    //       "ExecuteTimeout": number,
    //       "FailTasksOnLobTruncation": boolean,
    //       "HeartbeatEnable": boolean,
    //       "HeartbeatFrequency": number,
    //       "HeartbeatSchema": "string",
    //       "MaxFileSize": number,
    //       "Password": "string",
    //       "PluginName": "string",
    //       "Port": number,
    //       "SecretsManagerAccessRoleArn": "string",
    //       "SecretsManagerSecretId": "string",
    //       "ServerName": "string",
    //       "SlotName": "string",
    //       "Username": "string"
    //     },
    //     "RedisSettings": {
    //       "AuthPassword": "string",
    //       "AuthType": "string",
    //       "AuthUserName": "string",
    //       "Port": number,
    //       "ServerName": "string",
    //       "SslCaCertificateArn": "string",
    //       "SslSecurityProtocol": "string"
    //     },
    //     "RedshiftSettings": {
    //       "AcceptAnyDate": boolean,
    //       "AfterConnectScript": "string",
    //       "BucketFolder": "string",
    //       "BucketName": "string",
    //       "CaseSensitiveNames": boolean,
    //       "CompUpdate": boolean,
    //       "ConnectionTimeout": number,
    //       "DatabaseName": "string",
    //       "DateFormat": "string",
    //       "EmptyAsNull": boolean,
    //       "EncryptionMode": "string",
    //       "ExplicitIds": boolean,
    //       "FileTransferUploadStreams": number,
    //       "LoadTimeout": number,
    //       "MaxFileSize": number,
    //       "Password": "string",
    //       "Port": number,
    //       "RemoveQuotes": boolean,
    //       "ReplaceChars": "string",
    //       "ReplaceInvalidChars": "string",
    //       "SecretsManagerAccessRoleArn": "string",
    //       "SecretsManagerSecretId": "string",
    //       "ServerName": "string",
    //       "ServerSideEncryptionKmsKeyId": "string",
    //       "ServiceAccessRoleArn": "string",
    //       "TimeFormat": "string",
    //       "TrimBlanks": boolean,
    //       "TruncateColumns": boolean,
    //       "Username": "string",
    //       "WriteBufferSize": number
    //     },
    //     "S3Settings": {
    //       "AddColumnName": boolean,
    //       "BucketFolder": "string",
    //       "BucketName": "string",
    //       "CannedAclForObjects": "string",
    //       "CdcInsertsAndUpdates": boolean,
    //       "CdcInsertsOnly": boolean,
    //       "CdcMaxBatchInterval": number,
    //       "CdcMinFileSize": number,
    //       "CdcPath": "string",
    //       "CompressionType": "string",
    //       "CsvDelimiter": "string",
    //       "CsvNoSupValue": "string",
    //       "CsvNullValue": "string",
    //       "CsvRowDelimiter": "string",
    //       "DataFormat": "string",
    //       "DataPageSize": number,
    //       "DatePartitionDelimiter": "string",
    //       "DatePartitionEnabled": boolean,
    //       "DatePartitionSequence": "string",
    //       "DatePartitionTimezone": "string",
    //       "DictPageSizeLimit": number,
    //       "EnableStatistics": boolean,
    //       "EncodingType": "string",
    //       "EncryptionMode": "string",
    //       "ExternalTableDefinition": "string",
    //       "IgnoreHeaderRows": number,
    //       "IncludeOpForFullLoad": boolean,
    //       "MaxFileSize": number,
    //       "ParquetTimestampInMillisecond": boolean,
    //       "ParquetVersion": "string",
    //       "PreserveTransactions": boolean,
    //       "Rfc4180": boolean,
    //       "RowGroupLength": number,
    //       "ServerSideEncryptionKmsKeyId": "string",
    //       "ServiceAccessRoleArn": "string",
    //       "TimestampColumnName": "string",
    //       "UseCsvNoSupValue": boolean,
    //       "UseTaskStartTimeForFullLoadTimestamp": boolean
    //     },
    //     "ServerName": "string",
    //     "ServiceAccessRoleArn": "string",
    //     "SslMode": "string",
    //     "Status": "string",
    //     "SybaseSettings": {
    //       "DatabaseName": "string",
    //       "Password": "string",
    //       "Port": number,
    //       "SecretsManagerAccessRoleArn": "string",
    //       "SecretsManagerSecretId": "string",
    //       "ServerName": "string",
    //       "Username": "string"
    //     },
    //     "Username": "string"
    //   }
    // }
    }