Como enviar e-mails com Laravel

Use o HTTP Client do Laravel (facade `Http`) para chamar a API do Publiq — sem SDK. Defina `PUBLIQ_API_KEY` no `.env`.

Chamada direta com o facade Http:

<?php
use Illuminate\Support\Facades\Http;

$response = Http::withToken(env('PUBLIQ_API_KEY'))
    ->post('https://api.publiq.digital/v1/emails', [
        'from' => 'you@yourdomain.com',
        'to' => $user->email,
        'templateKey' => 'welcome-email',
        'variables' => ['first_name' => $user->name],
    ]);

return $response->json();

Encapsule numa classe de serviço (app/Services/Publiq.php) e injete-a onde precisar, mantendo a chamada em um só lugar.

Boas práticas

  • Chame o Publiq sempre do servidor — a API key vai no header Authorization, nunca no cliente.
  • Em 429/5xx, retente com backoff exponencial (respeite Retry-After).
  • Prefira templateKey a HTML inline para manter o conteúdo versionado.
  • Trate os erros pelo campo error.code da resposta — veja Erros.
  • Envie de um domínio verificado — veja Domínios.

Veja também

Como enviar e-mails com Laravel — Publiq Docs