Home/Integrations/SparkPost

SparkPost lifecycle email automation with GetFluxly

A native SparkPost connector is on the GetFluxly roadmap and is not live yet. You can still use SparkPost with GetFluxly today by connecting it as a Custom SMTP relay. This guide shows you how.

GetFluxly captures product events, builds unified customer profiles, and fires automations on the rules you define. SparkPost handles the actual delivery from the verified sending domain you control through the SparkPost SMTP relay. Your sender reputation and domain authentication stay in your SparkPost account.

When to use SparkPost

Reach for SparkPost when you send at high volume and want deep delivery analytics out of the box. SparkPost was built for transactional and lifecycle email at scale and surfaces per-message engagement signals (opens, clicks, bounces, spam complaints) as real-time events you can act on. That signal density is particularly useful when GetFluxly automations need to branch or exit based on how recipients engage with previous sends.

SparkPost is also a strong choice when you need a sending infrastructure with a long public reputation for deliverability. The platform is now part of Bird (formerly MessageBird), and the core infrastructure and SMTP relay remain stable under that brand umbrella.

If you are starting from scratch and want the fastest possible setup, see the Resend guide. For the lowest cost per message at AWS scale, see Amazon SES. For more on choosing the right stack, the email deliverability for SaaS post covers what actually moves inbox placement numbers.

Requirements before connecting

A SparkPost account on any plan, a domain you can publish DNS records on, and an API key with Transmissions permission. On the GetFluxly side: a project, a server token (gflux_secret_live_...), and access to Settings → Email providers.

SparkPost requires at least one verified sending domain before production sending is enabled. New accounts start in a testing mode that allows sending only to the account email address. Complete domain verification before connecting in GetFluxly.

Verify your sending domain

In the SparkPost dashboard, open Configuration → Sending Domains and click Add a Domain. Enter the apex of the domain you want to send from (for example yourdomain.com). SparkPost generates a DKIM TXT record with an auto-generated selector. Publish that record at your DNS provider, then click Verify in the SparkPost dashboard.

Once the DNS record propagates (usually a few minutes to a few hours), SparkPost marks the domain as verified and begins DKIM signing outbound messages automatically. Verifying the apex covers all from addresses under it.

Add SPF, DKIM, and DMARC

These records live on your domain's DNS, not on GetFluxly. They tell receiving mailboxes that SparkPost is allowed to send on your behalf and what to do when alignment checks fail.

SPF

Add a TXT record at the apex that includes SparkPost. If you already have an SPF record, merge the include: rather than publishing a second SPF record on the same name.

Type:   TXT
Host:   yourdomain.com
Value:  v=spf1 include:_spf.sparkpostmail.com -all

DKIM

SparkPost generated a DKIM TXT record when you added the sending domain above. The selector and value are unique to your account. Copy them exactly from the Configuration → Sending Domains screen. A 2048-bit key is strongly recommended over 1024-bit.

Type:   TXT
Host:   <selector>._domainkey.yourdomain.com
Value:  <DKIM public key, copy from SparkPost>

DMARC

DMARC tells receivers what to do if SPF and DKIM alignment both fail. Start with p=none while you confirm legitimate mail passes, then ratchet up to quarantine and eventually reject.

Type:   TXT
Host:   _dmarc.yourdomain.com
Value:  v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com; fo=1
These records protect your domain. Publish them at the DNS for the domain you send from. Nothing goes on getfluxly.com. GetFluxly never appears in your From: header.

Create a SparkPost API key

In the SparkPost dashboard, open Configuration → API Keys and click Create API Key. Give the key a descriptive name (for example GetFluxly Production) and enable Transmissions: Read/Write at minimum. Copy the key immediately; SparkPost only displays it once.

Scope the key tightly. GetFluxly needs only Transmissions permission to send through the SMTP relay. Do not issue an all-access key for production sending. Create one key per environment (dev, staging, production) so revoking one key in SparkPost takes down a single environment without affecting the others.

Connect SparkPost in GetFluxly

Because a native SparkPost connector is not live yet, connect SparkPost through GetFluxly's Custom SMTP connector. Open your GetFluxly project, go to Settings → Email providers, click Add provider, and choose Custom SMTP. Use these SparkPost SMTP settings:

FieldValueNotes
smtp_hostsmtp.sparkpostmail.comSparkPost SMTP relay host.
smtp_port587Use STARTTLS on this port.
smtp_securestarttlsRequired. SparkPost requires STARTTLS on port 587.
usernameSMTP_InjectionLiteral string. This is the required SparkPost SMTP username.
passwordYour SparkPost API keyEncrypted with AES-GCM before storage.
from_emailhello@yourdomain.comMust live on a verified SparkPost sending domain.

Or call the API directly:

curl -X POST https://api.getfluxly.com/v1/projects/PROJECT_ID/email-providers \
  -H "Authorization: Bearer gflux_secret_live_REPLACE_ME" \
  -H "Content-Type: application/json" \
  -d '{
    "provider": "smtp",
    "display_name": "SparkPost Production",
    "from_email": "hello@yourdomain.com",
    "from_name": "Acme",
    "smtp_host": "smtp.sparkpostmail.com",
    "smtp_port": 587,
    "smtp_secure": "starttls",
    "username": "SMTP_Injection",
    "password": "YOUR_SPARKPOST_API_KEY"
  }'

Handle bounces and complaints

While sending through the Custom SMTP path, manage suppressions and bounce handling inside your SparkPost dashboard. SparkPost tracks bounces and spam complaints at the account level under Configuration → Suppressions. Use SparkPost's built-in suppression list to keep your sending reputation healthy.

Automatic ingestion of bounce and complaint signals into GetFluxly profiles and suppression lists arrives with the native SparkPost connector when it ships. Until then, periodically export your SparkPost suppression list and remove those contacts from your GetFluxly automations manually. The lifecycle email automation guide covers why a clean suppression loop is non-negotiable for long-term deliverability.

Test your first lifecycle email

The verify endpoint dispatches a one-shot message through your SparkPost connection. Use it to confirm the wiring before pointing an automation at the provider.

curl -X POST https://api.getfluxly.com/v1/email-providers/PROVIDER_ID/test \
  -H "Authorization: Bearer gflux_secret_live_REPLACE_ME" \
  -H "Content-Type: application/json" \
  -d '{ "to": "you@yourdomain.com" }'

For an end-to-end behavior triggered test, set up a one-step automation in GetFluxly: when user fires signed_up send the welcome email through SparkPost, then trigger the event from your staging app. The send appears in GetFluxly's send log within a few seconds. Check pricing for the plan that fits your expected monthly send volume.

Common errors

Authentication failed. The API key is wrong, has been revoked, or lacks Transmissions permission. Also confirm the username is exactly SMTP_Injection (SparkPost requires this literal string, not your account email). Create a fresh key in SparkPost with the correct permission and update the GetFluxly Custom SMTP record.

No sending domain or unverified sending domain error. The from_email address is not on a verified sending domain. Confirm the domain status is verified in SparkPost Configuration → Sending Domains and that DKIM is active.

Mail going to spam despite DKIM passing. Almost always a missing or misconfigured DMARC record, or a brand-new sending domain with no warm-up history. Confirm DMARC is published on _dmarc.yourdomain.com and ramp volume gradually over the first two weeks.

Connection refused on port 587. Some hosting platforms block outbound 587. Try port 2525 if your SparkPost account supports it, or confirm your hosting provider allows outbound SMTP on the standard port.

FAQ

Is there a native SparkPost connector in GetFluxly yet?

Not yet. A native SparkPost connector is on the GetFluxly roadmap. In the meantime, you can use SparkPost with GetFluxly today by connecting it as a Custom SMTP relay using the settings in this guide. When the native connector ships, you will be able to migrate the provider record in place with no automation rewiring required.

Does GetFluxly charge extra to send through SparkPost?

No. GetFluxly does not bill per email. SparkPost pricing applies as if you were sending directly. GetFluxly handles segmentation, automation, unified profiles, and tracking on top of the SparkPost send path at no per-message markup.

SparkPost is now part of Bird. Does that change anything?

SparkPost was acquired by MessageBird, which rebranded to Bird. The underlying email infrastructure and the SparkPost SMTP relay remain unchanged. The developer documentation is still at developers.sparkpost.com and the dashboard is at app.sparkpost.com. The Custom SMTP path in GetFluxly uses smtp.sparkpostmail.com, which continues to work regardless of the Bird parent brand.

What SMTP credentials do I use to connect SparkPost?

Use smtp.sparkpostmail.com as the SMTP host, port 587 with STARTTLS, the literal string SMTP_Injection as the username, and your SparkPost API key as the password. Connect through the Custom SMTP provider in GetFluxly under Settings then Email providers then Add provider then Custom SMTP.

How do I handle SparkPost bounces and complaints with GetFluxly?

While sending through the Custom SMTP path, manage suppressions and bounce handling inside your SparkPost dashboard under Configuration then Suppressions. SparkPost tracks bounces and spam complaints at the account level. Automatic ingestion of those signals into GetFluxly profiles arrives with the native connector when it ships.

What SparkPost API permissions does GetFluxly need?

At minimum, Transmissions: Read and Write to use the SMTP relay. If you want to verify sending domains via the SparkPost API directly, also add Sending Domains: Read and Write. Keep the key scoped to only these permissions; GetFluxly does not need account admin or template management access.