Dokumentasjon › Send e-post med Ruby

Send e-post med Ruby

Send en transaksjonell e-post fra Ruby med en enkelt POST til /v1/email, autentisert med en Bearer API-nøkkel. Det finnes ingen offisiell Ruby-SDK, så du kaller REST-endepunktet direkte. Eksempelet nedenfor bruker bare standardbiblioteket, så det er ingen gem å installere. Se Send e-post via API-et for full feltreferanse.

Forutsetninger

net/http

require 'net/http'
require 'uri'
require 'json'

uri = URI('https://api.mailhuset.com/v1/email')

request = Net::HTTP::Post.new(uri)
request['Authorization'] = "Bearer #{ENV.fetch('MAILHUSET_API_KEY')}"
request['Content-Type']  = 'application/json'
request.body = {
  from:    'Acme <hello@yourdomain.com>',
  to:      ['customer@example.com'],
  subject: 'Your receipt',
  html:    '<p>Thanks for your order.</p>',
  text:    'Thanks for your order.'
}.to_json

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
  http.request(request)
end

if response.is_a?(Net::HTTPSuccess)
  message = JSON.parse(response.body)
  puts "Accepted: #{message['id']}"
else
  # 401 bad/missing key, 403 from-domain not verified, 422 validation error.
  warn "Send failed (#{response.code}): #{response.body}"
end

Felt

Bygg JSON-kroppen med de faktiske feltene: from (Name <address> på et verifisert domene), to (en liste), subject, og innholdet som html og text (send begge når du kan). cc, bcc, replyTo (lister) og idempotencyKey er valgfrie. Hele listen står i Send e-post via API-et.

Svar

En 2xx returnerer den aksepterte meldingen, inkludert id-en dens. Net::HTTPSuccess dekker det området. Feil: 401 feil eller manglende nøkkel, 403 from-domenet er ikke verifisert, 422 en valideringsfeil (svaret sier hvilket felt).

Neste steg

Gjenbruk innhold med Maler, og spor levering med Webhooks. Vil du ha en typet klient? Node og Python har offisielle SDK-er.


Trenger du hjelp? Send e-post til support@mailhuset.com.