Chilkat Online Tools

DescribeEndpoints Powershell Example

AWS Database Migration Service

Add-Type -Path "C:\chilkat\ChilkatDotNet47-9.5.0-x64\ChilkatDotNet47.dll"

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

$rest = New-Object Chilkat.Rest

$authAws = New-Object Chilkat.AuthAws
$authAws.AccessKey = "AWS_ACCESS_KEY"
$authAws.SecretKey = "AWS_SECRET_KEY"

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

# URL: https://dms.us-west-2.amazonaws.com/
# Use the same region as specified above.
$success = $rest.Connect("dms.us-west-2.amazonaws.com",443,$true,$true)
if ($success -ne $true) {
    $("ConnectFailReason: " + $rest.ConnectFailReason)
    $($rest.LastErrorText)
    exit
}

# 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 = New-Object Chilkat.JsonObject
$json.UpdateString("Filters[0].Name","string")
$json.UpdateString("Filters[0].Values[0]","string")
$json.UpdateString("Marker","string")
$json.UpdateInt("MaxRecords",123)

# The JSON request body created by the above code:

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

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

$sbRequestBody = New-Object Chilkat.StringBuilder
$json.EmitSb($sbRequestBody)
$sbResponseBody = New-Object Chilkat.StringBuilder
$success = $rest.FullRequestSb("POST","/",$sbRequestBody,$sbResponseBody)
if ($success -ne $true) {
    $($rest.LastErrorText)
    exit
}

$respStatusCode = $rest.ResponseStatusCode
$("response status code = " + $respStatusCode)
if ($respStatusCode -ne 200) {
    $("Response Header:")
    $($rest.ResponseHeader)
    $("Response Body:")
    $($sbResponseBody.GetAsString())
    exit
}

$jResp = New-Object Chilkat.JsonObject
$jResp.LoadSb($sbResponseBody)

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

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

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