github.com/Foodji/aws-lambda-go@v1.20.2/events/firehose.go (about) 1 // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 3 package events 4 5 // KinesisFirehoseEvent represents the input event from Amazon Kinesis Firehose. It is used as the input parameter. 6 type KinesisFirehoseEvent struct { 7 InvocationID string `json:"invocationId"` 8 DeliveryStreamArn string `json:"deliveryStreamArn"` 9 SourceKinesisStreamArn string `json:"sourceKinesisStreamArn"` 10 Region string `json:"region"` 11 Records []KinesisFirehoseEventRecord `json:"records"` 12 } 13 14 type KinesisFirehoseEventRecord struct { 15 RecordID string `json:"recordId"` 16 ApproximateArrivalTimestamp MilliSecondsEpochTime `json:"approximateArrivalTimestamp"` 17 Data []byte `json:"data"` 18 KinesisFirehoseRecordMetadata KinesisFirehoseRecordMetadata `json:"kinesisRecordMetadata"` 19 } 20 21 // Constants used for describing the transformation result 22 const ( 23 KinesisFirehoseTransformedStateOk = "Ok" 24 KinesisFirehoseTransformedStateDropped = "Dropped" 25 KinesisFirehoseTransformedStateProcessingFailed = "ProcessingFailed" 26 ) 27 28 type KinesisFirehoseResponse struct { 29 Records []KinesisFirehoseResponseRecord `json:"records"` 30 } 31 32 type KinesisFirehoseResponseRecord struct { 33 RecordID string `json:"recordId"` 34 Result string `json:"result"` // The status of the transformation. May be TransformedStateOk, TransformedStateDropped or TransformedStateProcessingFailed 35 Data []byte `json:"data"` 36 } 37 38 type KinesisFirehoseRecordMetadata struct { 39 ShardID string `json:"shardId"` 40 PartitionKey string `json:"partitionKey"` 41 SequenceNumber string `json:"sequenceNumber"` 42 SubsequenceNumber int64 `json:"subsequenceNumber"` 43 ApproximateArrivalTimestamp MilliSecondsEpochTime `json:"approximateArrivalTimestamp"` 44 }