Chilkat Online Tools

DeleteEndpoint PureBasic Example

AWS Database Migration Service

IncludeFile "CkJsonObject.pb"
IncludeFile "CkStringBuilder.pb"
IncludeFile "CkRest.pb"
IncludeFile "CkAuthAws.pb"

Procedure ChilkatExample()

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

    rest.i = CkRest::ckCreate()
    If rest.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    success.i

    authAws.i = CkAuthAws::ckCreate()
    If authAws.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    CkAuthAws::setCkAccessKey(authAws, "AWS_ACCESS_KEY")
    CkAuthAws::setCkSecretKey(authAws, "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.)
    CkAuthAws::setCkRegion(authAws, "us-west-2")
    CkAuthAws::setCkServiceName(authAws, "dms")
    ; SetAuthAws causes Chilkat to automatically add the following headers: Authorization, X-Amz-Date
    CkRest::ckSetAuthAws(rest,authAws)

    ; URL: https://dms.us-west-2.amazonaws.com/
    ; Use the same region as specified above.
    success = CkRest::ckConnect(rest,"dms.us-west-2.amazonaws.com",443,1,1)
    If success <> 1
        Debug "ConnectFailReason: " + Str(CkRest::ckConnectFailReason(rest))
        Debug CkRest::ckLastErrorText(rest)
        CkRest::ckDispose(rest)
        CkAuthAws::ckDispose(authAws)
        ProcedureReturn
    EndIf

    ; 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.i = CkJsonObject::ckCreate()
    If json.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    CkJsonObject::ckUpdateString(json,"EndpointArn","string")

    ; The JSON request body created by the above code:

    ; {
    ;   "EndpointArn": "string"
    ; }

    CkRest::ckAddHeader(rest,"Content-Type","application/x-amz-json-1.1")
    CkRest::ckAddHeader(rest,"X-Amz-Target","AmazonDMSv20160101.DeleteEndpoint")

    sbRequestBody.i = CkStringBuilder::ckCreate()
    If sbRequestBody.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    CkJsonObject::ckEmitSb(json,sbRequestBody)
    sbResponseBody.i = CkStringBuilder::ckCreate()
    If sbResponseBody.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    success = CkRest::ckFullRequestSb(rest,"POST","/",sbRequestBody,sbResponseBody)
    If success <> 1
        Debug CkRest::ckLastErrorText(rest)
        CkRest::ckDispose(rest)
        CkAuthAws::ckDispose(authAws)
        CkJsonObject::ckDispose(json)
        CkStringBuilder::ckDispose(sbRequestBody)
        CkStringBuilder::ckDispose(sbResponseBody)
        ProcedureReturn
    EndIf

    respStatusCode.i = CkRest::ckResponseStatusCode(rest)
    Debug "response status code = " + Str(respStatusCode)
    If respStatusCode <> 200
        Debug "Response Header:"
        Debug CkRest::ckResponseHeader(rest)
        Debug "Response Body:"
        Debug CkStringBuilder::ckGetAsString(sbResponseBody)
        CkRest::ckDispose(rest)
        CkAuthAws::ckDispose(authAws)
        CkJsonObject::ckDispose(json)
        CkStringBuilder::ckDispose(sbRequestBody)
        CkStringBuilder::ckDispose(sbResponseBody)
        ProcedureReturn
    EndIf

    jResp.i = CkJsonObject::ckCreate()
    If jResp.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    CkJsonObject::ckLoadSb(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

    intVal.i

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

    ; 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"
    ;   }
    ; }


    CkRest::ckDispose(rest)
    CkAuthAws::ckDispose(authAws)
    CkJsonObject::ckDispose(json)
    CkStringBuilder::ckDispose(sbRequestBody)
    CkStringBuilder::ckDispose(sbResponseBody)
    CkJsonObject::ckDispose(jResp)


    ProcedureReturn
EndProcedure