When creating the API key, I selected:
Send via SMTP
Transmissions: Read-only is not enough.
One likely cause for that 403 error is your API key does not include the permission for “Transmission”.
Before SparkPost will send emails, you need to configure a domain…
The SparkPost domain name must match the domain on the
e.g. If you configure
mail.hatherleigh.info, then your
from address must be email@example.com.
firstname.lastname@example.org will fail).
Log into the SparkPost Configuration, Domains section:
Configure Sending Domains
The page says, “Using a subdomain is recommended e.g. sub.domain.com”, but a subdomain will not work if you want the recipient to reply (see above for “The SparkPost domain name must match the domain on the from address”).
For our most recent customer we setup a Sending domain on the
organisational domain (e.g.
hatherleigh.info) with a
DKIM record, but no
We configured a separate Bounce Domain as
Create a separate bounce subdomain using
bounceas the sub-domain. The SparkPost site will walk you through the steps e.g. create a
bounce.hatherleigh.infoand set the value to
server smtp.sparkpostmail.com user SMTP_Injection password <sparkpost-api-key> port 587 security STARTTLS
Subaccounts look like a nice idea, but they require the Premier plan.
I received this email from SparkPost support in October 2022:
You are currently on the 50K starter plan, which does not include subaccounts. Subaccounts are only available on the 100K Premier and up plans.
Please see the following page for a comparison between the Starter and Premier plans: https://support.sparkpost.com/docs/faq/difference-between-starter-and-premier
You will need to upgrade to a Premier plan if you wish to use subaccounts.