github.com/clerkinc/clerk-sdk-go@v1.49.1/clerk/emails.go (about) 1 package clerk 2 3 import ( 4 "encoding/json" 5 ) 6 7 type EmailService service 8 9 type Email struct { 10 FromEmailName string `json:"from_email_name"` 11 Subject string `json:"subject"` 12 Body string `json:"body"` 13 EmailAddressID string `json:"email_address_id"` 14 } 15 16 type EmailResponse struct { 17 ID string `json:"id"` 18 Object string `json:"object"` 19 Status string `json:"status,omitempty"` 20 ToEmailAddress *string `json:"to_email_address,omitempty"` 21 DeliveredByClerk bool `json:"delivered_by_clerk"` 22 Data json.RawMessage `json:"data"` 23 Email 24 } 25 26 func (s *EmailService) Create(email Email) (*EmailResponse, error) { 27 req, _ := s.client.NewRequest("POST", EmailsUrl, &email) 28 29 var emailResponse EmailResponse 30 _, err := s.client.Do(req, &emailResponse) 31 if err != nil { 32 return nil, err 33 } 34 return &emailResponse, nil 35 }