Chilkat Online Tools

DescribeEndpoints unicodeC Example

AWS Database Migration Service

#include <C_CkRestW.h>
#include <C_CkAuthAwsW.h>
#include <C_CkJsonObjectW.h>
#include <C_CkStringBuilderW.h>

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

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

    rest = CkRestW_Create();

    authAws = CkAuthAwsW_Create();
    CkAuthAwsW_putAccessKey(authAws,L"AWS_ACCESS_KEY");
    CkAuthAwsW_putSecretKey(authAws,L"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.)
    CkAuthAwsW_putRegion(authAws,L"us-west-2");
    CkAuthAwsW_putServiceName(authAws,L"dms");
    // SetAuthAws causes Chilkat to automatically add the following headers: Authorization, X-Amz-Date
    CkRestW_SetAuthAws(rest,authAws);

    // URL: https://dms.us-west-2.amazonaws.com/
    // Use the same region as specified above.
    success = CkRestW_Connect(rest,L"dms.us-west-2.amazonaws.com",443,TRUE,TRUE);
    if (success != TRUE) {
        wprintf(L"ConnectFailReason: %d\n",CkRestW_getConnectFailReason(rest));
        wprintf(L"%s\n",CkRestW_lastErrorText(rest));
        CkRestW_Dispose(rest);
        CkAuthAwsW_Dispose(authAws);
        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

    json = CkJsonObjectW_Create();
    CkJsonObjectW_UpdateString(json,L"Filters[0].Name",L"string");
    CkJsonObjectW_UpdateString(json,L"Filters[0].Values[0]",L"string");
    CkJsonObjectW_UpdateString(json,L"Marker",L"string");
    CkJsonObjectW_UpdateInt(json,L"MaxRecords",123);

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

    // {
    //   "Filters": [
    //     {
    //       "Name": "string",
    //       "Values": [
    //         "string"
    //       ]
    //     }
    //   ],
    //   "Marker": "string",
    //   "MaxRecords": number
    // }

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

    sbRequestBody = CkStringBuilderW_Create();
    CkJsonObjectW_EmitSb(json,sbRequestBody);
    sbResponseBody = CkStringBuilderW_Create();
    success = CkRestW_FullRequestSb(rest,L"POST",L"/",sbRequestBody,sbResponseBody);
    if (success != TRUE) {
        wprintf(L"%s\n",CkRestW_lastErrorText(rest));
        CkRestW_Dispose(rest);
        CkAuthAwsW_Dispose(authAws);
        CkJsonObjectW_Dispose(json);
        CkStringBuilderW_Dispose(sbRequestBody);
        CkStringBuilderW_Dispose(sbResponseBody);
        return;
    }

    respStatusCode = CkRestW_getResponseStatusCode(rest);
    wprintf(L"response status code = %d\n",respStatusCode);
    if (respStatusCode != 200) {
        wprintf(L"Response Header:\n");
        wprintf(L"%s\n",CkRestW_responseHeader(rest));
        wprintf(L"Response Body:\n");
        wprintf(L"%s\n",CkStringBuilderW_getAsString(sbResponseBody));
        CkRestW_Dispose(rest);
        CkAuthAwsW_Dispose(authAws);
        CkJsonObjectW_Dispose(json);
        CkStringBuilderW_Dispose(sbRequestBody);
        CkStringBuilderW_Dispose(sbResponseBody);
        return;
    }

    jResp = CkJsonObjectW_Create();
    CkJsonObjectW_LoadSb(jResp,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.

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

        i = i + 1;
    }

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

    // {
    //   "Endpoints": [
    //     {
    //       "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"
    //     }
    //   ],
    //   "Marker": "string"
    // }


    CkRestW_Dispose(rest);
    CkAuthAwsW_Dispose(authAws);
    CkJsonObjectW_Dispose(json);
    CkStringBuilderW_Dispose(sbRequestBody);
    CkStringBuilderW_Dispose(sbResponseBody);
    CkJsonObjectW_Dispose(jResp);

    }