The actor automatically sends an email to a specific address. This actor is useful for notifications and reporting. With only 3 lines of javascript code, you'll be on top of your scraping actors and never miss important results or issues.

- Modified
- Users1,578
- Runs633,333
Apify actor to send mail.
This actor is meant to be used as a reporting tool and must not be used to send promotional or spammy emails. Using it as such will lead to the user being banned on the Apify platform.
Input
Example:
{
// Email address of the recipient(s) (e.g. "Apify <info@apify.com>")
// Required
to: String,
// Email CC same format as to
// Required
cc: String
// Email BCC same format as to
bcc: String
// Email subject
// Required
subject: String,
// Text body of Email
// Required
text: String,
// Email attachments
attachments: [Object]
}
Attributes:
to
- Email address of the recipient(s), you can comma-separate multiple addresses (e.g. "Apify info@apify.com" or "info@apify.com, hello@apify.com")cc
- Email CC same format as tobcc
- Email BCC same format as tosubject
- Email subjecttext
- Text body of Emailhtml
- HTML body of EmailreplyTo
- Email address which will be set when recipient will try to reply to mail. (Uses headerReply-To
see doc)attachments
- array of attachments in base64 string, example:
[{
// attachment file name
filename: String,
// attachment content in base64 string
data: String
}]
Limitations
To prevent abuse, the actor limits the number of email recipients:
- Users on the free plan can only send emails to their own email address associated with their Apify account.
- Paying users can send emails to up to 20 different recipients.
Usage
From other Apify actor
await Apify.call('apify/send-mail', {
to: 'test@apify.com',
subject: 'Test from act',
text: "Email text",
attachments: [{
filename: 'test.txt',
data: 'dGVzdCBzZmFzZGFzZGFzZGFzZA'
}]
});
From Apify actor/task webhook
Calling this actor via a webhook is very handy because you can ensure it is sent only after specific event happens. Here is an example setup to send email after failed run.
- Open Webhooks tab of the actor/task that you want to monitor.
- Set Event types to
Run failed
andRun timed out
. - URL is the RUN API endpoint of this actor, just fill your API token - https://api.apify.com/v2/acts/apify~send-mail/runs?token=APIFY_API_TOKEN
- Payload template represents the body that is sent to this actor:
Example of payload that sends run ID in the email text:
{
"to": "test@apify.com",
"subject": "Task Scrape-website run failed",
"text": {{eventData.actorRunId}}
}