@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Amazon Simple Email Service
@version 2010-12-01
@auth AWS SigV4
@endpoints 71
@hint download_for_search
@toc root(71)

@endpoint POST /
@required {RuleSetName: str, OriginalRuleSetName: str}

@endpoint POST /
@required {ConfigurationSet: ConfigurationSet}

@endpoint POST /
@required {ConfigurationSetName: str, EventDestination: EventDestination}

@endpoint POST /
@required {ConfigurationSetName: str, TrackingOptions: TrackingOptions}

@endpoint POST /
@required {TemplateName: str, FromEmailAddress: str, TemplateSubject: str, TemplateContent: str, SuccessRedirectionURL: str, FailureRedirectionURL: str}

@endpoint POST /
@required {Filter: ReceiptFilter}

@endpoint POST /
@required {RuleSetName: str, Rule: ReceiptRule}
@optional {After: str}

@endpoint POST /
@required {RuleSetName: str}

@endpoint POST /
@required {Template: Template}

@endpoint POST /
@required {ConfigurationSetName: str}

@endpoint POST /
@required {ConfigurationSetName: str, EventDestinationName: str}

@endpoint POST /
@required {ConfigurationSetName: str}

@endpoint POST /
@required {TemplateName: str}

@endpoint POST /
@required {Identity: str}

@endpoint POST /
@required {Identity: str, PolicyName: str}

@endpoint POST /
@required {FilterName: str}

@endpoint POST /
@required {RuleSetName: str, RuleName: str}

@endpoint POST /
@required {RuleSetName: str}

@endpoint POST /
@required {TemplateName: str}

@endpoint POST /
@required {EmailAddress: str}

@endpoint POST /
@returns(200) {Metadata: ReceiptRuleSetMetadata?{Name: str?, CreatedTimestamp: str(timestamp)?}, Rules: [ReceiptRule]?}

@endpoint POST /
@required {ConfigurationSetName: str}
@optional {ConfigurationSetAttributeNames: [str]}
@returns(200) {ConfigurationSet: ConfigurationSet?{Name: str}, EventDestinations: [EventDestination]?, TrackingOptions: TrackingOptions?{CustomRedirectDomain: str?}, DeliveryOptions: DeliveryOptions?{TlsPolicy: str?}, ReputationOptions: ReputationOptions?{SendingEnabled: bool?, ReputationMetricsEnabled: bool?, LastFreshStart: str(timestamp)?}}

@endpoint POST /
@required {RuleSetName: str, RuleName: str}
@returns(200) {Rule: ReceiptRule?{Name: str, Enabled: bool?, TlsPolicy: str?, Recipients: [str]?, Actions: [ReceiptAction]?, ScanEnabled: bool?}}

@endpoint POST /
@required {RuleSetName: str}
@returns(200) {Metadata: ReceiptRuleSetMetadata?{Name: str?, CreatedTimestamp: str(timestamp)?}, Rules: [ReceiptRule]?}

@endpoint POST /
@returns(200) {Enabled: bool?}

@endpoint POST /
@required {TemplateName: str}
@returns(200) {TemplateName: str?, FromEmailAddress: str?, TemplateSubject: str?, TemplateContent: str?, SuccessRedirectionURL: str?, FailureRedirectionURL: str?}

@endpoint POST /
@required {Identities: [str]}
@returns(200) {DkimAttributes: map<str,IdentityDkimAttributes>}

@endpoint POST /
@required {Identities: [str]}
@returns(200) {MailFromDomainAttributes: map<str,IdentityMailFromDomainAttributes>}

@endpoint POST /
@required {Identities: [str]}
@returns(200) {NotificationAttributes: map<str,IdentityNotificationAttributes>}

@endpoint POST /
@required {Identity: str, PolicyNames: [str]}
@returns(200) {Policies: map<str,str>}

@endpoint POST /
@required {Identities: [str]}
@returns(200) {VerificationAttributes: map<str,IdentityVerificationAttributes>}

@endpoint POST /
@returns(200) {Max24HourSend: num(f64)?, MaxSendRate: num(f64)?, SentLast24Hours: num(f64)?}

@endpoint POST /
@returns(200) {SendDataPoints: [SendDataPoint]?}

@endpoint POST /
@required {TemplateName: str}
@returns(200) {Template: Template?{TemplateName: str, SubjectPart: str?, TextPart: str?, HtmlPart: str?}}

@endpoint POST /
@optional {NextToken: str, MaxItems: int}
@returns(200) {ConfigurationSets: [ConfigurationSet]?, NextToken: str?}

@endpoint POST /
@optional {NextToken: str, MaxResults: int}
@returns(200) {CustomVerificationEmailTemplates: [CustomVerificationEmailTemplate]?, NextToken: str?}

@endpoint POST /
@optional {IdentityType: str, NextToken: str, MaxItems: int}
@returns(200) {Identities: [str], NextToken: str?}

@endpoint POST /
@required {Identity: str}
@returns(200) {PolicyNames: [str]}

@endpoint POST /
@returns(200) {Filters: [ReceiptFilter]?}

@endpoint POST /
@optional {NextToken: str}
@returns(200) {RuleSets: [ReceiptRuleSetMetadata]?, NextToken: str?}

@endpoint POST /
@optional {NextToken: str, MaxItems: int}
@returns(200) {TemplatesMetadata: [TemplateMetadata]?, NextToken: str?}

@endpoint POST /
@returns(200) {VerifiedEmailAddresses: [str]?}

@endpoint POST /
@required {ConfigurationSetName: str}
@optional {DeliveryOptions: DeliveryOptions}

@endpoint POST /
@required {Identity: str, PolicyName: str, Policy: str}

@endpoint POST /
@required {RuleSetName: str, RuleNames: [str]}

@endpoint POST /
@required {OriginalMessageId: str, BounceSender: str, BouncedRecipientInfoList: [BouncedRecipientInfo]}
@optional {Explanation: str, MessageDsn: MessageDsn, BounceSenderArn: str}
@returns(200) {MessageId: str?}

@endpoint POST /
@required {Source: str, Template: str, DefaultTemplateData: str, Destinations: [BulkEmailDestination]}
@optional {SourceArn: str, ReplyToAddresses: [str], ReturnPath: str, ReturnPathArn: str, ConfigurationSetName: str, DefaultTags: [MessageTag], TemplateArn: str}
@returns(200) {Status: [BulkEmailDestinationStatus]}

@endpoint POST /
@required {EmailAddress: str, TemplateName: str}
@optional {ConfigurationSetName: str}
@returns(200) {MessageId: str?}

@endpoint POST /
@required {Source: str, Destination: Destination, Message: Message}
@optional {ReplyToAddresses: [str], ReturnPath: str, SourceArn: str, ReturnPathArn: str, Tags: [MessageTag], ConfigurationSetName: str}
@returns(200) {MessageId: str}

@endpoint POST /
@required {RawMessage: RawMessage}
@optional {Source: str, Destinations: [str], FromArn: str, SourceArn: str, ReturnPathArn: str, Tags: [MessageTag], ConfigurationSetName: str}
@returns(200) {MessageId: str}

@endpoint POST /
@required {Source: str, Destination: Destination, Template: str, TemplateData: str}
@optional {ReplyToAddresses: [str], ReturnPath: str, SourceArn: str, ReturnPathArn: str, Tags: [MessageTag], ConfigurationSetName: str, TemplateArn: str}
@returns(200) {MessageId: str}

@endpoint POST /
@optional {RuleSetName: str}

@endpoint POST /
@required {Identity: str, DkimEnabled: bool}

@endpoint POST /
@required {Identity: str, ForwardingEnabled: bool}

@endpoint POST /
@required {Identity: str, NotificationType: str, Enabled: bool}

@endpoint POST /
@required {Identity: str}
@optional {MailFromDomain: str, BehaviorOnMXFailure: str}

@endpoint POST /
@required {Identity: str, NotificationType: str}
@optional {SnsTopic: str}

@endpoint POST /
@required {RuleSetName: str, RuleName: str}
@optional {After: str}

@endpoint POST /
@required {TemplateName: str, TemplateData: str}
@returns(200) {RenderedTemplate: str?}

@endpoint POST /
@optional {Enabled: bool}

@endpoint POST /
@required {ConfigurationSetName: str, EventDestination: EventDestination}

@endpoint POST /
@required {ConfigurationSetName: str, Enabled: bool}

@endpoint POST /
@required {ConfigurationSetName: str, Enabled: bool}

@endpoint POST /
@required {ConfigurationSetName: str, TrackingOptions: TrackingOptions}

@endpoint POST /
@required {TemplateName: str}
@optional {FromEmailAddress: str, TemplateSubject: str, TemplateContent: str, SuccessRedirectionURL: str, FailureRedirectionURL: str}

@endpoint POST /
@required {RuleSetName: str, Rule: ReceiptRule}

@endpoint POST /
@required {Template: Template}

@endpoint POST /
@required {Domain: str}
@returns(200) {DkimTokens: [str]}

@endpoint POST /
@required {Domain: str}
@returns(200) {VerificationToken: str}

@endpoint POST /
@required {EmailAddress: str}

@endpoint POST /
@required {EmailAddress: str}

@end
