class ActionMailbox::Ingresses::Mandrill::InboundEmailsController
Ingests inbound emails from Mandrill.
Requires a mandrill_events
parameter containing a JSON array of Mandrill inbound email event objects. Each event is expected to have a msg
object containing a full RFC 822 message in its raw_msg
property.
Returns:
-
204 No Content
if an inbound email is successfully recorded and enqueued for routing to the appropriate mailbox -
401 Unauthorized
if the request’s signature could not be validated -
404 Not Found
if Action Mailbox is not configured to accept inbound emails from Mandrill -
422 Unprocessable Entity
if the request is missing required parameters -
500 Server Error
if the Mandrill API key is missing, or one of the Active Record database, the Active Storage service, or the Active Job backend is misconfigured or unavailable
Inherits From
Public instance methods
Source code GitHub
# File actionmailbox/app/controllers/action_mailbox/ingresses/mandrill/inbound_emails_controller.rb, line 20
def create
raw_emails.each { |raw_email| ActionMailbox::InboundEmail.create_and_extract_message_id! raw_email }
head :ok
rescue JSON::ParserError => error
logger.error error.message
head :unprocessable_entity
end
Source code GitHub
# File actionmailbox/app/controllers/action_mailbox/ingresses/mandrill/inbound_emails_controller.rb, line 28
def health_check
head :ok
end