class Salesfly::MailAPI
Constants
- SCHEMA
Public Class Methods
new(rest_client)
click to toggle source
# File lib/salesfly/mail_api.rb, line 106 def initialize(rest_client) @rest_client = rest_client end
Public Instance Methods
send(message)
click to toggle source
# File lib/salesfly/mail_api.rb, line 110 def send(message) # Validate message begin JSON::Validator.validate!(SCHEMA, message, :strict => false) rescue JSON::Schema::ValidationError => e raise ArgumentError.new("Message has missing or invalid attributes") end # Extract files files = [] if message.key?("attachments") files = message["attachments"] message = message.reject { |k,v| k == "attachments" } end multipart = Multipart.new content, headers = multipart.encode(message, files) return @rest_client.post("/v1/mail/send", content, headers) end