Cómo enviar correos con Ruby on Rails
Envía correos desde Ruby/Rails llamando a la API REST de Publiq con la stdlib `net/http`.
No hay SDK oficial — llama a la API REST de Publiq con el cliente HTTP del lenguaje, desde el servidor, con la API key en el header Authorization.
require 'net/http'
require 'json'
def send_welcome(user)
uri = URI('https://api.publiq.digital/v1/emails')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
req = Net::HTTP::Post.new(uri)
req['Authorization'] = "Bearer #{ENV['PUBLIQ_API_KEY']}"
req['Content-Type'] = 'application/json'
req.body = {
from: 'you@yourdomain.com',
to: user.email,
templateKey: 'welcome-email',
variables: { first_name: user.name }
}.to_json
JSON.parse(http.request(req).body)
endBuenas prácticas
- Llama a Publiq siempre desde el servidor — la API key va en el header
Authorization, nunca en el cliente. - En
429/5xx, reintenta con backoff exponencial (respetaRetry-After). - Prefiere
templateKeysobre HTML inline para mantener el contenido versionado. - Maneja los errores por el campo
error.codede la respuesta — ver Errores. - Envía desde un dominio verificado — ver Dominios.