Skip to main content

Common Issues

Symptoms: Emails are not being delivered through MailgunChecklist:
  • Verify your Mailgun API key is valid and has full access permissions
  • Check that the Mailgun domain is correct and verified in your Mailgun account
  • Ensure the TPSP is active in SendPost
  • Review the SendPost event logs for errors
  • Confirm your Mailgun account is in good standing
Test Your API Key:
curl -s --user 'api:YOUR_MAILGUN_API_KEY' \
  https://api.mailgun.net/v3/domains
If this returns 401, your API key is invalid.
Symptoms: Emails are sent but opens/clicks/bounces not showingChecklist:
  • Verify webhooks are registered in Mailgun Dashboard
  • Check webhook URLs are correct for each event type
  • Ensure webhook events are enabled
  • Wait a few minutes (events are batched for processing)
Verify Webhooks in Mailgun:
  1. Go to Mailgun → Sending → Webhooks
  2. Confirm webhooks are configured for each event type
  3. Verify URLs show: https://api.sendpost.io/tpsp/mailgun/account/{account-id}
Symptoms: Bounced emails not reflected in analyticsCheck:
  • Review SMTP codes in event details
  • Hard bounces (permanent severity) = permanent failures
  • Soft bounces (temporary severity) = temporary failures
  • Ensure bounce events (failed) are enabled in webhook settings
Error CodeMeaningSolution
401UnauthorizedRegenerate API key in Mailgun
403ForbiddenCheck API key permissions
429Rate limit exceededWait and retry, or increase limits
400Bad RequestCheck payload format, domain, or recipient format
404Not FoundVerify domain is correct
Symptoms: Some or all webhooks not registeredChecklist:
  • Check if webhooks appear in Mailgun dashboard
  • Verify API key has webhook permissions
  • Ensure SendPost API is accessible from Mailgun servers
  • Try recreating the TPSP in SendPost
Note: Mailgun requires a separate webhook for each event type. Some event types may fail to register independently.

Getting Help

If you’re still experiencing issues:
  1. Check Logs: Review detailed event logs in SendPost dashboard
  2. Contact Support: Reach out to SendPost support with:
    • Your account ID
    • TPSP ID
    • Message ID (if available)
    • Error messages
    • Timestamp of the issue

FAQs

Yes! Create a separate TPSP for each Mailgun account. Each will have its own webhooks and configuration.
Yes, all API keys are encrypted at rest and never exposed in logs or API responses.
Yes, SendPost supports intelligent routing. You can configure IP Pools to route specific traffic through Mailgun and the rest through SendPost’s native infrastructure.
Mailgun will retry webhook delivery. Events will be processed once connectivity is restored.
If your Mailgun account is in the EU region, you may need to configure the EU API endpoint. Contact SendPost support for assistance with EU region configuration.
Yes! Use the tpspIppool parameter in your API request to specify a Mailgun IP Pool, or use tpspIp to specify a specific IP address owned by your account.
Yes! You can run both systems in parallel during migration. Configure your SendPost IP Pool to route a percentage of traffic to Mailgun while keeping some on your current system.
Events are typically processed within 1-5 seconds of being received from Mailgun.
SendPost doesn’t impose hard limits, but your Mailgun plan limits still apply. Configure throttling to match your Mailgun limits.
The main difference is that Mailgun requires a separate webhook registration for each event type, while SendGrid and SparkPost use a single webhook for all events. SendPost handles this automatically during setup.