Laravel
Laravel の SMTP メーラーは、追加のパッケージなしで SpacePost と連携できます。
MAIL_MAILER=smtpMAIL_SCHEME=smtpMAIL_HOST=smtp.spacepost.devMAIL_PORT=25976MAIL_USERNAME=spacepostMAIL_PASSWORD=sp_live_YOUR_API_KEYMAIL_ENCRYPTION=tlsMAIL_FROM_ADDRESS="hello@acme.com"MAIL_FROM_NAME="Acme"Laravel 11 以降は MAIL_SCHEME=smtp を読み取り、STARTTLS で接続をアップグレードします。Laravel 10 以前は MAIL_ENCRYPTION=tls を読み取ります。両方の行を残しておけば、どのバージョンでも動作します。smtps や ssl は使わないでください。暗黙的 TLS(ポート 465)はまだ提供していません。
通常どおり送信します。
use Illuminate\Support\Facades\Mail;use App\Mail\OrderShipped;
Mail::to($user)->send(new OrderShipped($order));タグとスケジュール
Section titled “タグとスケジュール”Mailable に、SpacePost の制御ヘッダーを追加します。
use Illuminate\Mail\Mailables\Headers;
public function headers(): Headers{ return new Headers(text: [ 'X-SpacePost-Tags' => 'category=order, order_id=' . $this->order->id, ]);}Mail::queue() で送信する Mailable は、通常どおり動作します。キューワーカーが SMTP で SpacePost と通信します。同時に動かすワーカーの数は、レート制限の範囲内に収めてください。