Configuring providers
A provider is the account Expeed Relay uses to deliver a notification — your SMTP server, your SendGrid account, your Twilio number. Providers are configured per site, so two websites can use completely different sending accounts without touching each other.
A site with no provider cannot deliver email or WhatsApp. Submissions are still recorded, but every email and WhatsApp delivery job fails immediately with “No active provider config”. Slack and Teams webhooks are the exception — they carry their own URL and need no site provider, so they keep working. Configure at least one email provider before you hand the site to a developer.
Channels and providers
Section titled “Channels and providers”Expeed Relay groups providers by channel — the medium the notification travels over. Each channel offers several providers. Configure one per channel per site — nothing stops you adding a second, but Expeed Relay then picks between them unpredictably, so a duplicate is a misconfiguration rather than a fallback.
| Channel | Providers available | Credentials you will need |
|---|---|---|
| SMTP | Host, Port, Username, Password | |
| SendGrid | API Key | |
| Amazon SES | Region, Access Key ID, Secret Access Key | |
| Mailgun | API Key, Domain | |
| Twilio | Account SID, Auth Token | |
| Meta Cloud API | Phone Number ID, Access Token | |
| Gupshup | API Key, App Name |
Add a provider
Section titled “Add a provider”- Open Sites, click the site you want, and switch to the Providers tab.
- Click Add provider. A four-step wizard opens: Channel, Provider, Credentials, Summary.
- Pick the Channel — Email or WhatsApp.
- Pick the Provider within that channel. The credential fields on the next step change to match what that provider needs.
- On the Credentials step, enter the From address — the sender your recipients will see, like
noreply@example.comfor email — then fill in the credential fields below it. Every field shown is required. - Review the Summary and click Finish. The provider appears in the Providers table immediately.
Getting credentials from each provider
Section titled “Getting credentials from each provider”- SMTP — from whoever runs your mail server. You need the hostname, the port (usually 587 for STARTTLS), and a mailbox username and password. Ask for a dedicated sending account rather than reusing a person’s mailbox.
- SendGrid — Settings → API Keys → Create API Key. Grant it Mail Send permission only.
- Amazon SES — create an IAM user with
ses:SendEmailpermission and generate an access key pair. The Region must match the SES region where your sending domain is verified. - Mailgun — Settings → API Keys for the key, and use your verified sending domain.
- Twilio — the Account SID and Auth Token are on your Twilio console dashboard.
- Meta Cloud API — from the WhatsApp product setup in your Meta app: the Phone Number ID and a system-user access token.
- Gupshup — API key and the app name from your Gupshup dashboard.
Confirming it works
Section titled “Confirming it works”There is no test button. The fastest real check is an end-to-end one:
- Create a form with a single recipient pointing at your own address — see Forms & recipients.
- Submit that form once, either from the website or by asking the developer to fire a test submission.
- Open Jobs and filter to your site. Within seconds you should see a job move to
delivered. - If the job shows
failed, open it — the failure reason is recorded on the job and usually names the exact provider error.
Changing or removing a provider
Section titled “Changing or removing a provider”Reopen the Providers tab on the site. A provider cannot be edited or deactivated from the dashboard — the only action on the row is the delete button, and only admins see it. The Active column is a status badge, not a switch.
That makes rotating a credential a delete-then-re-add: remove the provider and immediately run the Add provider wizard again with the new secret. Deliveries attempted in the gap between the two will fail, so do it when the site is quiet, and have the new credential in hand before you delete the old one.
Because secrets are never shown, there is no way to confirm what the old value was — if you are unsure whether a rotation took effect, run the end-to-end check above.
Related
Section titled “Related”- Creating a site — do this first; providers attach to a site
- Forms & recipients — the form is what actually triggers a delivery
- Submissions & jobs — where delivery failures show up and get retried