Chilkat Online Tools

CreateDeliveryStream SQL Server Example

Amazon Kinesis Data Firehose

CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    DECLARE @iTmp0 int
    DECLARE @sTmp0 nvarchar(max)
    -- This example requires the Chilkat API to have been previously unlocked.
    -- See Global Unlock Sample for sample code.

    DECLARE @rest int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.Rest', @rest OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    DECLARE @success int

    DECLARE @authAws int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.AuthAws', @authAws OUT

    EXEC sp_OASetProperty @authAws, 'AccessKey', 'AWS_ACCESS_KEY'
    EXEC sp_OASetProperty @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.)
    EXEC sp_OASetProperty @authAws, 'Region', 'us-west-2'
    EXEC sp_OASetProperty @authAws, 'ServiceName', 'firehose'
    -- SetAuthAws causes Chilkat to automatically add the following headers: Authorization, X-Amz-Date
    EXEC sp_OAMethod @rest, 'SetAuthAws', @success OUT, @authAws

    -- URL: https://firehose.us-west-2.amazonaws.com/
    -- Use the same region as specified above.
    EXEC sp_OAMethod @rest, 'Connect', @success OUT, 'firehose.us-west-2.amazonaws.com', 443, 1, 1
    IF @success <> 1
      BEGIN

        EXEC sp_OAGetProperty @rest, 'ConnectFailReason', @iTmp0 OUT
        PRINT 'ConnectFailReason: ' + @iTmp0
        EXEC sp_OAGetProperty @rest, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @rest
        EXEC @hr = sp_OADestroy @authAws
        RETURN
      END

    -- 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

    DECLARE @json int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.JsonObject', @json OUT

    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.BufferingHints.IntervalInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.BufferingHints.SizeInMBs', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.CloudWatchLoggingOptions.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.CloudWatchLoggingOptions.LogGroupName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.CloudWatchLoggingOptions.LogStreamName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.ClusterEndpoint', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.DomainARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.IndexName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.IndexRotationPeriod', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.ProcessingConfiguration.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.ProcessingConfiguration.Processors[0].Parameters[0].ParameterName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.ProcessingConfiguration.Processors[0].Parameters[0].ParameterValue', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.ProcessingConfiguration.Processors[0].Type', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.RetryOptions.DurationInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.S3BackupMode', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.S3Configuration.BucketARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.S3Configuration.BufferingHints.IntervalInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.S3Configuration.BufferingHints.SizeInMBs', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.S3Configuration.CloudWatchLoggingOptions.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.S3Configuration.CloudWatchLoggingOptions.LogGroupName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.S3Configuration.CloudWatchLoggingOptions.LogStreamName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.S3Configuration.CompressionFormat', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.S3Configuration.EncryptionConfiguration.KMSEncryptionConfig.AWSKMSKeyARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.S3Configuration.EncryptionConfiguration.NoEncryptionConfig', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.S3Configuration.ErrorOutputPrefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.S3Configuration.Prefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.S3Configuration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.TypeName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.VpcConfiguration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.VpcConfiguration.SecurityGroupIds[0]', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'AmazonopensearchserviceDestinationConfiguration.VpcConfiguration.SubnetIds[0]', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'DeliveryStreamEncryptionConfigurationInput.KeyARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'DeliveryStreamEncryptionConfigurationInput.KeyType', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'DeliveryStreamName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'DeliveryStreamType', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ElasticsearchDestinationConfiguration.BufferingHints.IntervalInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ElasticsearchDestinationConfiguration.BufferingHints.SizeInMBs', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ElasticsearchDestinationConfiguration.CloudWatchLoggingOptions.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.CloudWatchLoggingOptions.LogGroupName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.CloudWatchLoggingOptions.LogStreamName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.ClusterEndpoint', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.DomainARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.IndexName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.IndexRotationPeriod', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ElasticsearchDestinationConfiguration.ProcessingConfiguration.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.ProcessingConfiguration.Processors[0].Parameters[0].ParameterName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.ProcessingConfiguration.Processors[0].Parameters[0].ParameterValue', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.ProcessingConfiguration.Processors[0].Type', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ElasticsearchDestinationConfiguration.RetryOptions.DurationInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.S3BackupMode', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.S3Configuration.BucketARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ElasticsearchDestinationConfiguration.S3Configuration.BufferingHints.IntervalInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ElasticsearchDestinationConfiguration.S3Configuration.BufferingHints.SizeInMBs', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ElasticsearchDestinationConfiguration.S3Configuration.CloudWatchLoggingOptions.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.S3Configuration.CloudWatchLoggingOptions.LogGroupName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.S3Configuration.CloudWatchLoggingOptions.LogStreamName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.S3Configuration.CompressionFormat', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.S3Configuration.EncryptionConfiguration.KMSEncryptionConfig.AWSKMSKeyARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.S3Configuration.EncryptionConfiguration.NoEncryptionConfig', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.S3Configuration.ErrorOutputPrefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.S3Configuration.Prefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.S3Configuration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.TypeName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.VpcConfiguration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.VpcConfiguration.SecurityGroupIds[0]', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ElasticsearchDestinationConfiguration.VpcConfiguration.SubnetIds[0]', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.BucketARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.BufferingHints.IntervalInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.BufferingHints.SizeInMBs', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.CloudWatchLoggingOptions.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.CloudWatchLoggingOptions.LogGroupName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.CloudWatchLoggingOptions.LogStreamName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.CompressionFormat', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.InputFormatConfiguration.Deserializer.HiveJsonSerDe.TimestampFormats[0]', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.InputFormatConfiguration.Deserializer.OpenXJsonSerDe.CaseInsensitive', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.InputFormatConfiguration.Deserializer.OpenXJsonSerDe.ColumnToJsonKeyMappings.string', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.InputFormatConfiguration.Deserializer.OpenXJsonSerDe.ConvertDotsInJsonKeysToUnderscores', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.OrcSerDe.BlockSizeBytes', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.OrcSerDe.BloomFilterColumns[0]', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.OrcSerDe.BloomFilterFalsePositiveProbability', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.OrcSerDe.Compression', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.OrcSerDe.DictionaryKeyThreshold', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.OrcSerDe.EnablePadding', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.OrcSerDe.FormatVersion', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.OrcSerDe.PaddingTolerance', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.OrcSerDe.RowIndexStride', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.OrcSerDe.StripeSizeBytes', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.ParquetSerDe.BlockSizeBytes', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.ParquetSerDe.Compression', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.ParquetSerDe.EnableDictionaryCompression', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.ParquetSerDe.MaxPaddingBytes', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.ParquetSerDe.PageSizeBytes', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.OutputFormatConfiguration.Serializer.ParquetSerDe.WriterVersion', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.SchemaConfiguration.CatalogId', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.SchemaConfiguration.DatabaseName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.SchemaConfiguration.Region', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.SchemaConfiguration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.SchemaConfiguration.TableName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.DataFormatConversionConfiguration.SchemaConfiguration.VersionId', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DynamicPartitioningConfiguration.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.DynamicPartitioningConfiguration.RetryOptions.DurationInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.EncryptionConfiguration.KMSEncryptionConfig.AWSKMSKeyARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.EncryptionConfiguration.NoEncryptionConfig', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.ErrorOutputPrefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.Prefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.ProcessingConfiguration.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.ProcessingConfiguration.Processors[0].Parameters[0].ParameterName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.ProcessingConfiguration.Processors[0].Parameters[0].ParameterValue', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.ProcessingConfiguration.Processors[0].Type', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.S3BackupConfiguration.BucketARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.S3BackupConfiguration.BufferingHints.IntervalInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.S3BackupConfiguration.BufferingHints.SizeInMBs', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'ExtendedS3DestinationConfiguration.S3BackupConfiguration.CloudWatchLoggingOptions.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.S3BackupConfiguration.CloudWatchLoggingOptions.LogGroupName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.S3BackupConfiguration.CloudWatchLoggingOptions.LogStreamName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.S3BackupConfiguration.CompressionFormat', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.S3BackupConfiguration.EncryptionConfiguration.KMSEncryptionConfig.AWSKMSKeyARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.S3BackupConfiguration.EncryptionConfiguration.NoEncryptionConfig', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.S3BackupConfiguration.ErrorOutputPrefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.S3BackupConfiguration.Prefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.S3BackupConfiguration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'ExtendedS3DestinationConfiguration.S3BackupMode', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'HttpEndpointDestinationConfiguration.BufferingHints.IntervalInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'HttpEndpointDestinationConfiguration.BufferingHints.SizeInMBs', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'HttpEndpointDestinationConfiguration.CloudWatchLoggingOptions.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.CloudWatchLoggingOptions.LogGroupName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.CloudWatchLoggingOptions.LogStreamName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.EndpointConfiguration.AccessKey', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.EndpointConfiguration.Name', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.EndpointConfiguration.Url', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'HttpEndpointDestinationConfiguration.ProcessingConfiguration.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.ProcessingConfiguration.Processors[0].Parameters[0].ParameterName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.ProcessingConfiguration.Processors[0].Parameters[0].ParameterValue', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.ProcessingConfiguration.Processors[0].Type', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.RequestConfiguration.CommonAttributes[0].AttributeName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.RequestConfiguration.CommonAttributes[0].AttributeValue', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.RequestConfiguration.ContentEncoding', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'HttpEndpointDestinationConfiguration.RetryOptions.DurationInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.S3BackupMode', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.S3Configuration.BucketARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'HttpEndpointDestinationConfiguration.S3Configuration.BufferingHints.IntervalInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'HttpEndpointDestinationConfiguration.S3Configuration.BufferingHints.SizeInMBs', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'HttpEndpointDestinationConfiguration.S3Configuration.CloudWatchLoggingOptions.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.S3Configuration.CloudWatchLoggingOptions.LogGroupName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.S3Configuration.CloudWatchLoggingOptions.LogStreamName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.S3Configuration.CompressionFormat', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.S3Configuration.EncryptionConfiguration.KMSEncryptionConfig.AWSKMSKeyARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.S3Configuration.EncryptionConfiguration.NoEncryptionConfig', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.S3Configuration.ErrorOutputPrefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.S3Configuration.Prefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'HttpEndpointDestinationConfiguration.S3Configuration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'KinesisStreamSourceConfiguration.KinesisStreamARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'KinesisStreamSourceConfiguration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'RedshiftDestinationConfiguration.CloudWatchLoggingOptions.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.CloudWatchLoggingOptions.LogGroupName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.CloudWatchLoggingOptions.LogStreamName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.ClusterJDBCURL', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.CopyCommand.CopyOptions', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.CopyCommand.DataTableColumns', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.CopyCommand.DataTableName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.Password', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'RedshiftDestinationConfiguration.ProcessingConfiguration.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.ProcessingConfiguration.Processors[0].Parameters[0].ParameterName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.ProcessingConfiguration.Processors[0].Parameters[0].ParameterValue', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.ProcessingConfiguration.Processors[0].Type', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'RedshiftDestinationConfiguration.RetryOptions.DurationInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3BackupConfiguration.BucketARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'RedshiftDestinationConfiguration.S3BackupConfiguration.BufferingHints.IntervalInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'RedshiftDestinationConfiguration.S3BackupConfiguration.BufferingHints.SizeInMBs', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'RedshiftDestinationConfiguration.S3BackupConfiguration.CloudWatchLoggingOptions.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3BackupConfiguration.CloudWatchLoggingOptions.LogGroupName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3BackupConfiguration.CloudWatchLoggingOptions.LogStreamName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3BackupConfiguration.CompressionFormat', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3BackupConfiguration.EncryptionConfiguration.KMSEncryptionConfig.AWSKMSKeyARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3BackupConfiguration.EncryptionConfiguration.NoEncryptionConfig', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3BackupConfiguration.ErrorOutputPrefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3BackupConfiguration.Prefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3BackupConfiguration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3BackupMode', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3Configuration.BucketARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'RedshiftDestinationConfiguration.S3Configuration.BufferingHints.IntervalInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'RedshiftDestinationConfiguration.S3Configuration.BufferingHints.SizeInMBs', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'RedshiftDestinationConfiguration.S3Configuration.CloudWatchLoggingOptions.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3Configuration.CloudWatchLoggingOptions.LogGroupName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3Configuration.CloudWatchLoggingOptions.LogStreamName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3Configuration.CompressionFormat', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3Configuration.EncryptionConfiguration.KMSEncryptionConfig.AWSKMSKeyARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3Configuration.EncryptionConfiguration.NoEncryptionConfig', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3Configuration.ErrorOutputPrefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3Configuration.Prefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.S3Configuration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'RedshiftDestinationConfiguration.Username', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'S3DestinationConfiguration.BucketARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'S3DestinationConfiguration.BufferingHints.IntervalInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'S3DestinationConfiguration.BufferingHints.SizeInMBs', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'S3DestinationConfiguration.CloudWatchLoggingOptions.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'S3DestinationConfiguration.CloudWatchLoggingOptions.LogGroupName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'S3DestinationConfiguration.CloudWatchLoggingOptions.LogStreamName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'S3DestinationConfiguration.CompressionFormat', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'S3DestinationConfiguration.EncryptionConfiguration.KMSEncryptionConfig.AWSKMSKeyARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'S3DestinationConfiguration.EncryptionConfiguration.NoEncryptionConfig', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'S3DestinationConfiguration.ErrorOutputPrefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'S3DestinationConfiguration.Prefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'S3DestinationConfiguration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'SplunkDestinationConfiguration.CloudWatchLoggingOptions.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.CloudWatchLoggingOptions.LogGroupName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.CloudWatchLoggingOptions.LogStreamName', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'SplunkDestinationConfiguration.HECAcknowledgmentTimeoutInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.HECEndpoint', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.HECEndpointType', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.HECToken', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'SplunkDestinationConfiguration.ProcessingConfiguration.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.ProcessingConfiguration.Processors[0].Parameters[0].ParameterName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.ProcessingConfiguration.Processors[0].Parameters[0].ParameterValue', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.ProcessingConfiguration.Processors[0].Type', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'SplunkDestinationConfiguration.RetryOptions.DurationInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.S3BackupMode', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.S3Configuration.BucketARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'SplunkDestinationConfiguration.S3Configuration.BufferingHints.IntervalInSeconds', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'SplunkDestinationConfiguration.S3Configuration.BufferingHints.SizeInMBs', 123
    EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'SplunkDestinationConfiguration.S3Configuration.CloudWatchLoggingOptions.Enabled', 123
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.S3Configuration.CloudWatchLoggingOptions.LogGroupName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.S3Configuration.CloudWatchLoggingOptions.LogStreamName', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.S3Configuration.CompressionFormat', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.S3Configuration.EncryptionConfiguration.KMSEncryptionConfig.AWSKMSKeyARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.S3Configuration.EncryptionConfiguration.NoEncryptionConfig', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.S3Configuration.ErrorOutputPrefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.S3Configuration.Prefix', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'SplunkDestinationConfiguration.S3Configuration.RoleARN', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'Tags[0].Key', 'string'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'Tags[0].Value', 'string'

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

    -- {
    --   "AmazonopensearchserviceDestinationConfiguration": {
    --     "BufferingHints": {
    --       "IntervalInSeconds": number,
    --       "SizeInMBs": number
    --     },
    --     "CloudWatchLoggingOptions": {
    --       "Enabled": boolean,
    --       "LogGroupName": "string",
    --       "LogStreamName": "string"
    --     },
    --     "ClusterEndpoint": "string",
    --     "DomainARN": "string",
    --     "IndexName": "string",
    --     "IndexRotationPeriod": "string",
    --     "ProcessingConfiguration": {
    --       "Enabled": boolean,
    --       "Processors": [
    --         {
    --           "Parameters": [
    --             {
    --               "ParameterName": "string",
    --               "ParameterValue": "string"
    --             }
    --           ],
    --           "Type": "string"
    --         }
    --       ]
    --     },
    --     "RetryOptions": {
    --       "DurationInSeconds": number
    --     },
    --     "RoleARN": "string",
    --     "S3BackupMode": "string",
    --     "S3Configuration": {
    --       "BucketARN": "string",
    --       "BufferingHints": {
    --         "IntervalInSeconds": number,
    --         "SizeInMBs": number
    --       },
    --       "CloudWatchLoggingOptions": {
    --         "Enabled": boolean,
    --         "LogGroupName": "string",
    --         "LogStreamName": "string"
    --       },
    --       "CompressionFormat": "string",
    --       "EncryptionConfiguration": {
    --         "KMSEncryptionConfig": {
    --           "AWSKMSKeyARN": "string"
    --         },
    --         "NoEncryptionConfig": "string"
    --       },
    --       "ErrorOutputPrefix": "string",
    --       "Prefix": "string",
    --       "RoleARN": "string"
    --     },
    --     "TypeName": "string",
    --     "VpcConfiguration": {
    --       "RoleARN": "string",
    --       "SecurityGroupIds": [
    --         "string"
    --       ],
    --       "SubnetIds": [
    --         "string"
    --       ]
    --     }
    --   },
    --   "DeliveryStreamEncryptionConfigurationInput": {
    --     "KeyARN": "string",
    --     "KeyType": "string"
    --   },
    --   "DeliveryStreamName": "string",
    --   "DeliveryStreamType": "string",
    --   "ElasticsearchDestinationConfiguration": {
    --     "BufferingHints": {
    --       "IntervalInSeconds": number,
    --       "SizeInMBs": number
    --     },
    --     "CloudWatchLoggingOptions": {
    --       "Enabled": boolean,
    --       "LogGroupName": "string",
    --       "LogStreamName": "string"
    --     },
    --     "ClusterEndpoint": "string",
    --     "DomainARN": "string",
    --     "IndexName": "string",
    --     "IndexRotationPeriod": "string",
    --     "ProcessingConfiguration": {
    --       "Enabled": boolean,
    --       "Processors": [
    --         {
    --           "Parameters": [
    --             {
    --               "ParameterName": "string",
    --               "ParameterValue": "string"
    --             }
    --           ],
    --           "Type": "string"
    --         }
    --       ]
    --     },
    --     "RetryOptions": {
    --       "DurationInSeconds": number
    --     },
    --     "RoleARN": "string",
    --     "S3BackupMode": "string",
    --     "S3Configuration": {
    --       "BucketARN": "string",
    --       "BufferingHints": {
    --         "IntervalInSeconds": number,
    --         "SizeInMBs": number
    --       },
    --       "CloudWatchLoggingOptions": {
    --         "Enabled": boolean,
    --         "LogGroupName": "string",
    --         "LogStreamName": "string"
    --       },
    --       "CompressionFormat": "string",
    --       "EncryptionConfiguration": {
    --         "KMSEncryptionConfig": {
    --           "AWSKMSKeyARN": "string"
    --         },
    --         "NoEncryptionConfig": "string"
    --       },
    --       "ErrorOutputPrefix": "string",
    --       "Prefix": "string",
    --       "RoleARN": "string"
    --     },
    --     "TypeName": "string",
    --     "VpcConfiguration": {
    --       "RoleARN": "string",
    --       "SecurityGroupIds": [
    --         "string"
    --       ],
    --       "SubnetIds": [
    --         "string"
    --       ]
    --     }
    --   },
    --   "ExtendedS3DestinationConfiguration": {
    --     "BucketARN": "string",
    --     "BufferingHints": {
    --       "IntervalInSeconds": number,
    --       "SizeInMBs": number
    --     },
    --     "CloudWatchLoggingOptions": {
    --       "Enabled": boolean,
    --       "LogGroupName": "string",
    --       "LogStreamName": "string"
    --     },
    --     "CompressionFormat": "string",
    --     "DataFormatConversionConfiguration": {
    --       "Enabled": boolean,
    --       "InputFormatConfiguration": {
    --         "Deserializer": {
    --           "HiveJsonSerDe": {
    --             "TimestampFormats": [
    --               "string"
    --             ]
    --           },
    --           "OpenXJsonSerDe": {
    --             "CaseInsensitive": boolean,
    --             "ColumnToJsonKeyMappings": {
    --               "string": "string"
    --             },
    --             "ConvertDotsInJsonKeysToUnderscores": boolean
    --           }
    --         }
    --       },
    --       "OutputFormatConfiguration": {
    --         "Serializer": {
    --           "OrcSerDe": {
    --             "BlockSizeBytes": number,
    --             "BloomFilterColumns": [
    --               "string"
    --             ],
    --             "BloomFilterFalsePositiveProbability": number,
    --             "Compression": "string",
    --             "DictionaryKeyThreshold": number,
    --             "EnablePadding": boolean,
    --             "FormatVersion": "string",
    --             "PaddingTolerance": number,
    --             "RowIndexStride": number,
    --             "StripeSizeBytes": number
    --           },
    --           "ParquetSerDe": {
    --             "BlockSizeBytes": number,
    --             "Compression": "string",
    --             "EnableDictionaryCompression": boolean,
    --             "MaxPaddingBytes": number,
    --             "PageSizeBytes": number,
    --             "WriterVersion": "string"
    --           }
    --         }
    --       },
    --       "SchemaConfiguration": {
    --         "CatalogId": "string",
    --         "DatabaseName": "string",
    --         "Region": "string",
    --         "RoleARN": "string",
    --         "TableName": "string",
    --         "VersionId": "string"
    --       }
    --     },
    --     "DynamicPartitioningConfiguration": {
    --       "Enabled": boolean,
    --       "RetryOptions": {
    --         "DurationInSeconds": number
    --       }
    --     },
    --     "EncryptionConfiguration": {
    --       "KMSEncryptionConfig": {
    --         "AWSKMSKeyARN": "string"
    --       },
    --       "NoEncryptionConfig": "string"
    --     },
    --     "ErrorOutputPrefix": "string",
    --     "Prefix": "string",
    --     "ProcessingConfiguration": {
    --       "Enabled": boolean,
    --       "Processors": [
    --         {
    --           "Parameters": [
    --             {
    --               "ParameterName": "string",
    --               "ParameterValue": "string"
    --             }
    --           ],
    --           "Type": "string"
    --         }
    --       ]
    --     },
    --     "RoleARN": "string",
    --     "S3BackupConfiguration": {
    --       "BucketARN": "string",
    --       "BufferingHints": {
    --         "IntervalInSeconds": number,
    --         "SizeInMBs": number
    --       },
    --       "CloudWatchLoggingOptions": {
    --         "Enabled": boolean,
    --         "LogGroupName": "string",
    --         "LogStreamName": "string"
    --       },
    --       "CompressionFormat": "string",
    --       "EncryptionConfiguration": {
    --         "KMSEncryptionConfig": {
    --           "AWSKMSKeyARN": "string"
    --         },
    --         "NoEncryptionConfig": "string"
    --       },
    --       "ErrorOutputPrefix": "string",
    --       "Prefix": "string",
    --       "RoleARN": "string"
    --     },
    --     "S3BackupMode": "string"
    --   },
    --   "HttpEndpointDestinationConfiguration": {
    --     "BufferingHints": {
    --       "IntervalInSeconds": number,
    --       "SizeInMBs": number
    --     },
    --     "CloudWatchLoggingOptions": {
    --       "Enabled": boolean,
    --       "LogGroupName": "string",
    --       "LogStreamName": "string"
    --     },
    --     "EndpointConfiguration": {
    --       "AccessKey": "string",
    --       "Name": "string",
    --       "Url": "string"
    --     },
    --     "ProcessingConfiguration": {
    --       "Enabled": boolean,
    --       "Processors": [
    --         {
    --           "Parameters": [
    --             {
    --               "ParameterName": "string",
    --               "ParameterValue": "string"
    --             }
    --           ],
    --           "Type": "string"
    --         }
    --       ]
    --     },
    --     "RequestConfiguration": {
    --       "CommonAttributes": [
    --         {
    --           "AttributeName": "string",
    --           "AttributeValue": "string"
    --         }
    --       ],
    --       "ContentEncoding": "string"
    --     },
    --     "RetryOptions": {
    --       "DurationInSeconds": number
    --     },
    --     "RoleARN": "string",
    --     "S3BackupMode": "string",
    --     "S3Configuration": {
    --       "BucketARN": "string",
    --       "BufferingHints": {
    --         "IntervalInSeconds": number,
    --         "SizeInMBs": number
    --       },
    --       "CloudWatchLoggingOptions": {
    --         "Enabled": boolean,
    --         "LogGroupName": "string",
    --         "LogStreamName": "string"
    --       },
    --       "CompressionFormat": "string",
    --       "EncryptionConfiguration": {
    --         "KMSEncryptionConfig": {
    --           "AWSKMSKeyARN": "string"
    --         },
    --         "NoEncryptionConfig": "string"
    --       },
    --       "ErrorOutputPrefix": "string",
    --       "Prefix": "string",
    --       "RoleARN": "string"
    --     }
    --   },
    --   "KinesisStreamSourceConfiguration": {
    --     "KinesisStreamARN": "string",
    --     "RoleARN": "string"
    --   },
    --   "RedshiftDestinationConfiguration": {
    --     "CloudWatchLoggingOptions": {
    --       "Enabled": boolean,
    --       "LogGroupName": "string",
    --       "LogStreamName": "string"
    --     },
    --     "ClusterJDBCURL": "string",
    --     "CopyCommand": {
    --       "CopyOptions": "string",
    --       "DataTableColumns": "string",
    --       "DataTableName": "string"
    --     },
    --     "Password": "string",
    --     "ProcessingConfiguration": {
    --       "Enabled": boolean,
    --       "Processors": [
    --         {
    --           "Parameters": [
    --             {
    --               "ParameterName": "string",
    --               "ParameterValue": "string"
    --             }
    --           ],
    --           "Type": "string"
    --         }
    --       ]
    --     },
    --     "RetryOptions": {
    --       "DurationInSeconds": number
    --     },
    --     "RoleARN": "string",
    --     "S3BackupConfiguration": {
    --       "BucketARN": "string",
    --       "BufferingHints": {
    --         "IntervalInSeconds": number,
    --         "SizeInMBs": number
    --       },
    --       "CloudWatchLoggingOptions": {
    --         "Enabled": boolean,
    --         "LogGroupName": "string",
    --         "LogStreamName": "string"
    --       },
    --       "CompressionFormat": "string",
    --       "EncryptionConfiguration": {
    --         "KMSEncryptionConfig": {
    --           "AWSKMSKeyARN": "string"
    --         },
    --         "NoEncryptionConfig": "string"
    --       },
    --       "ErrorOutputPrefix": "string",
    --       "Prefix": "string",
    --       "RoleARN": "string"
    --     },
    --     "S3BackupMode": "string",
    --     "S3Configuration": {
    --       "BucketARN": "string",
    --       "BufferingHints": {
    --         "IntervalInSeconds": number,
    --         "SizeInMBs": number
    --       },
    --       "CloudWatchLoggingOptions": {
    --         "Enabled": boolean,
    --         "LogGroupName": "string",
    --         "LogStreamName": "string"
    --       },
    --       "CompressionFormat": "string",
    --       "EncryptionConfiguration": {
    --         "KMSEncryptionConfig": {
    --           "AWSKMSKeyARN": "string"
    --         },
    --         "NoEncryptionConfig": "string"
    --       },
    --       "ErrorOutputPrefix": "string",
    --       "Prefix": "string",
    --       "RoleARN": "string"
    --     },
    --     "Username": "string"
    --   },
    --   "S3DestinationConfiguration": {
    --     "BucketARN": "string",
    --     "BufferingHints": {
    --       "IntervalInSeconds": number,
    --       "SizeInMBs": number
    --     },
    --     "CloudWatchLoggingOptions": {
    --       "Enabled": boolean,
    --       "LogGroupName": "string",
    --       "LogStreamName": "string"
    --     },
    --     "CompressionFormat": "string",
    --     "EncryptionConfiguration": {
    --       "KMSEncryptionConfig": {
    --         "AWSKMSKeyARN": "string"
    --       },
    --       "NoEncryptionConfig": "string"
    --     },
    --     "ErrorOutputPrefix": "string",
    --     "Prefix": "string",
    --     "RoleARN": "string"
    --   },
    --   "SplunkDestinationConfiguration": {
    --     "CloudWatchLoggingOptions": {
    --       "Enabled": boolean,
    --       "LogGroupName": "string",
    --       "LogStreamName": "string"
    --     },
    --     "HECAcknowledgmentTimeoutInSeconds": number,
    --     "HECEndpoint": "string",
    --     "HECEndpointType": "string",
    --     "HECToken": "string",
    --     "ProcessingConfiguration": {
    --       "Enabled": boolean,
    --       "Processors": [
    --         {
    --           "Parameters": [
    --             {
    --               "ParameterName": "string",
    --               "ParameterValue": "string"
    --             }
    --           ],
    --           "Type": "string"
    --         }
    --       ]
    --     },
    --     "RetryOptions": {
    --       "DurationInSeconds": number
    --     },
    --     "S3BackupMode": "string",
    --     "S3Configuration": {
    --       "BucketARN": "string",
    --       "BufferingHints": {
    --         "IntervalInSeconds": number,
    --         "SizeInMBs": number
    --       },
    --       "CloudWatchLoggingOptions": {
    --         "Enabled": boolean,
    --         "LogGroupName": "string",
    --         "LogStreamName": "string"
    --       },
    --       "CompressionFormat": "string",
    --       "EncryptionConfiguration": {
    --         "KMSEncryptionConfig": {
    --           "AWSKMSKeyARN": "string"
    --         },
    --         "NoEncryptionConfig": "string"
    --       },
    --       "ErrorOutputPrefix": "string",
    --       "Prefix": "string",
    --       "RoleARN": "string"
    --     }
    --   },
    --   "Tags": [
    --     {
    --       "Key": "string",
    --       "Value": "string"
    --     }
    --   ]
    -- }

    EXEC sp_OAMethod @rest, 'AddHeader', @success OUT, 'Content-Type', 'application/x-amz-json-1.1'
    EXEC sp_OAMethod @rest, 'AddHeader', @success OUT, 'X-Amz-Target', 'Firehose_20150804.CreateDeliveryStream'

    DECLARE @sbRequestBody int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.StringBuilder', @sbRequestBody OUT

    EXEC sp_OAMethod @json, 'EmitSb', @success OUT, @sbRequestBody
    DECLARE @sbResponseBody int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.StringBuilder', @sbResponseBody OUT

    EXEC sp_OAMethod @rest, 'FullRequestSb', @success OUT, 'POST', '/', @sbRequestBody, @sbResponseBody
    IF @success <> 1
      BEGIN
        EXEC sp_OAGetProperty @rest, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @rest
        EXEC @hr = sp_OADestroy @authAws
        EXEC @hr = sp_OADestroy @json
        EXEC @hr = sp_OADestroy @sbRequestBody
        EXEC @hr = sp_OADestroy @sbResponseBody
        RETURN
      END
    DECLARE @respStatusCode int
    EXEC sp_OAGetProperty @rest, 'ResponseStatusCode', @respStatusCode OUT

    PRINT 'response status code = ' + @respStatusCode
    IF @respStatusCode <> 200
      BEGIN

        PRINT 'Response Header:'
        EXEC sp_OAGetProperty @rest, 'ResponseHeader', @sTmp0 OUT
        PRINT @sTmp0

        PRINT 'Response Body:'
        EXEC sp_OAMethod @sbResponseBody, 'GetAsString', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @rest
        EXEC @hr = sp_OADestroy @authAws
        EXEC @hr = sp_OADestroy @json
        EXEC @hr = sp_OADestroy @sbRequestBody
        EXEC @hr = sp_OADestroy @sbResponseBody
        RETURN
      END

    DECLARE @jResp int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.JsonObject', @jResp OUT

    EXEC sp_OAMethod @jResp, 'LoadSb', @success OUT, @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

    DECLARE @DeliveryStreamARN nvarchar(max)
    EXEC sp_OAMethod @jResp, 'StringOf', @DeliveryStreamARN OUT, 'DeliveryStreamARN'

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

    -- {
    --   "DeliveryStreamARN": "string"
    -- }

    EXEC @hr = sp_OADestroy @rest
    EXEC @hr = sp_OADestroy @authAws
    EXEC @hr = sp_OADestroy @json
    EXEC @hr = sp_OADestroy @sbRequestBody
    EXEC @hr = sp_OADestroy @sbResponseBody
    EXEC @hr = sp_OADestroy @jResp


END
GO