Skip to content

Commit 74731bc

Browse files
committed
Add header to suppress OOO auto-replies (fixes #86)
1 parent 573e664 commit 74731bc

1 file changed

Lines changed: 10 additions & 3 deletions

File tree

services/ses.go

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import (
77
"errors"
88
"fmt"
99
htmlTemplate "html/template"
10+
"maps"
1011
"os"
1112
"strconv"
1213
textTemplate "text/template"
@@ -38,6 +39,10 @@ const (
3839
expiresHeaderName = "X-Expires-At"
3940
)
4041

42+
var defaultEmailHeaders = map[string]string{
43+
"X-Auto-Response-Suppress": "All", // Suppress out-of-office auto-replies
44+
}
45+
4146
type SESService struct {
4247
client *sesv2.Client
4348
verifyHTMLTemplate *htmlTemplate.Template
@@ -198,9 +203,11 @@ func (s *SESService) sendEmail(ctx context.Context, email string, subject string
198203
},
199204
}
200205

201-
if len(headers) > 0 {
202-
message.Headers = make([]types.MessageHeader, 0, len(headers))
203-
for name, value := range headers {
206+
mergedHeaders := maps.Clone(defaultEmailHeaders)
207+
maps.Copy(mergedHeaders, headers)
208+
if len(mergedHeaders) > 0 {
209+
message.Headers = make([]types.MessageHeader, 0, len(mergedHeaders))
210+
for name, value := range mergedHeaders {
204211
message.Headers = append(message.Headers, types.MessageHeader{
205212
Name: &name,
206213
Value: &value,

0 commit comments

Comments
 (0)