Laravel: classe de serviço Publiq
Encapsule as chamadas ao Publiq numa classe de serviço injetável, mantendo a integração em um só lugar.
Crie app/Services/Publiq.php e injete-o via container do Laravel:
<?php
namespace App\Services;
use Illuminate\Support\Facades\Http;
class Publiq
{
public function send(array $payload): array
{
return Http::withToken(env('PUBLIQ_API_KEY'))
->post('https://api.publiq.digital/v1/emails', $payload)
->throw()
->json();
}
}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 (respeiteRetry-After). - Prefira
templateKeya HTML inline para manter o conteúdo versionado. - Trate os erros pelo campo
error.codeda resposta — veja Erros. - Envie de um domínio verificado — veja Domínios.