沙箱域名发送测试邮件

注册账户后默认会有个测试domain,sanboxXXX.mailgun.org,可以使用这个测试 domain 进行测试

点击domain进入到 Overview,在右侧填写白名单收件邮箱,填写完邮箱后,会发送一封邮件到对应的收件邮箱,需要验证后才能收到邮件。

选择 API 发送,下面列举了不同语言的 demo,我们使用 curl 进行测试

API Key 可以去这里添加 https://app.mailgun.com/settings/api_security,注意添加后 API Key 只会显示一次,所以需要自己保存起来

curl -s --user 'api:YOUR-API-KEY' \
https://api.mailgun.net/v3/sandboxXXXXXXX.mailgun.org/messages \
-F from='Excited User mailgun@sandboxXXXXXXX.mailgun.org' \
-F to=youremail@qq.com \
-F subject='Hello' \
-F text='Testing some Mailgun awesomeness!'
发送成功后返回如下内容

{"id":"20240215051833.d4b171a75110f205@sandboxXXXXXXX.mailgun.org","message":"Queued. Thank you."}

发送失败,返回 Forbidden 的原因可能是因为注册后的账户未激活

账户未激活一般在页面顶部会有提示,可以点击 Resend 按钮重新发送激活邮件,会跳转到手机号验证页面,添加手机号发送验证码,但是中国区的手机号是收不到验证码的,会导致无法激活,不能发邮件。

解决方式可以找一个美国的临时手机号,随意选择一个号,然后查收下短信即可,当然真正线上业务还是建议去买一个手机号

https://jiemahao.com/us/

添加 Domain

在Mailgun中,”Domain”指的是您用来发送电子邮件的域名。当您在Mailgun注册账户并设置您的电子邮件服务时,您需要添加并验证一个域名。这个域名将作为您发送邮件的来源地址的一部分,例如:user@yourdomain.com

Mailgun允许您添加自己的自定义域名,也提供了一个沙箱域名供您在测试环境中使用。自定义域名需要您在域名的DNS设置中添加一些记录,以验证您对该域名的所有权并配置电子邮件发送相关的设置(如SPF和DKIM记录)。

例如,如果您的公司名为“Example”,您可能会在Mailgun中使用一个类似mg.example.com的子域名。在Mailgun的控制面板中,您可以管理您的域名,包括添加新域名、查看域名状态、配置DNS记录等。

添加域名后,需要完成验证过程,才能开始发送邮件

给域名添加 DNS 记录,根据页面上的提示添加域名解析记录即可,添加完成后等待十分钟后,点击这里的验证按钮

显示 Verified,并且收到验证成功的邮件就可以用这个域名进行发送和接受邮件了

邮件统计数据

付费

默认免费账户只能发送到已验证授权的邮箱,只能用于测试,添加授权邮箱,可以到 sanbox 域名里面添加

如果要应用于生产环境,需要购买,也可绑定信用卡,目前的方式只能通过先选择其中一种Plan,然后试用 30 天,到期前取消掉,然后就可以免费获得 5000 封/月的额度,只要不超出就不会计费,如果超出了由于之前绑定了信用卡,就会被直接扣费。

{"message":"Domain mail.ryanzoe.top is not allowed to send: Free accounts are for test purposes only. Please upgrade or add the address to authorized recipients in Account Settings."}

https://app.mailgun.com/app/account/mailgun/upgrade

默认都有 30 天的免费体验

官方文档:

https://help.mailgun.com/hc/en-us/articles/360026833053-Domain-Verification-Walkthrough

https://help.mailgun.com/hc/en-us/articles/217531258-Authorized-Recipients