namespace Amazon.Lambda.SNSEvents
{
using System;
using System.Collections.Generic;
///
/// Simple Notification Service event
/// http://docs.aws.amazon.com/lambda/latest/dg/with-sns.html
/// http://docs.aws.amazon.com/lambda/latest/dg/eventsources.html#eventsources-sns
///
public class SNSEvent
{
///
/// List of SNS records.
///
public IList Records { get; set; }
///
/// An SNS message record.
///
public class SNSRecord
{
///
/// The event source.
///
public string EventSource { get; set; }
///
/// The event subscription ARN.
///
public string EventSubscriptionArn { get; set; }
///
/// The event version.
///
public string EventVersion { get; set; }
///
/// The SNS message.
///
public SNSMessage Sns { get; set; }
}
///
/// An SNS message record.
///
public class SNSMessage
{
///
/// The message.
///
public string Message { get; set; }
///
/// The attributes associated with the message.
///
public IDictionary MessageAttributes { get; set; }
///
/// The message id.
///
public string MessageId { get; set; }
///
/// The message signature.
///
public string Signature { get; set; }
///
/// The signature version used to sign the message.
///
public string SignatureVersion { get; set; }
///
/// The URL for the signing certificate.
///
public string SigningCertUrl { get; set; }
///
/// The subject for the message.
///
public string Subject { get; set; }
///
/// The message time stamp.
///
public DateTime Timestamp { get; set; }
///
/// The topic ARN.
///
public string TopicArn { get; set; }
///
/// The message type.
///
public string Type { get; set; }
///
/// The message unsubscribe URL.
///
public string UnsubscribeUrl { get; set; }
}
///
/// An SNS message attribute.
///
public class MessageAttribute
{
///
/// The attribute type.
///
public string Type { get; set; }
///
/// The attribute value.
///
public string Value { get; set; }
}
}
}