Invia la Tua Prima Email

Inizia con Tratto in 5 minuti

Segui questi passaggi per inviare la tua prima email usando Tratto.

Step 1: Crea la Tua API Key

Genera una API key per autenticare le richieste.

cURL

curl -X POST https://api.tratto.email/v1/api-keys \
  -H "Authorization: Bearer TUA_KEY_ESISTENTE" \
  -H "Content-Type: application/json" \
  -d '{"name":"quickstart"}'

Node.js

const response = await fetch('https://api.tratto.email/v1/api-keys', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer TUA_KEY_ESISTENTE',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ name: 'quickstart' }),
});
const { data } = await response.json();
const apiKey = data.key; // tratto_live_...

Python

import requests

response = requests.post(
  'https://api.tratto.email/v1/api-keys',
  headers={
    'Authorization': 'Bearer TUA_KEY_ESISTENTE',
    'Content-Type': 'application/json',
  },
  json={'name': 'quickstart'},
)
api_key = response.json()['data']['key']  # tratto_live_...

Salva la tua API key in un luogo sicuro. Viene mostrata solo una volta. Trattala come una password, non esporla mai client-side.

Step 2: Aggiungi e Verifica un Dominio

Le email provengono da un dominio. Aggiungi e verifica il tuo.

cURL

curl -X POST https://api.tratto.email/v1/domains \
  -H "Authorization: Bearer tratto_live_..." \
  -H "Content-Type: application/json" \
  -d '{"domain":"hello.tuodominio.it"}'

Risposta (i valori sono esempi, usa sempre quelli della tua risposta):

{
  "data": {
    "id": "dom_abc123",
    "domain": "hello.tuodominio.it",
    "status": "pending",
    "records": [
      { "type": "CNAME", "host": "token1._domainkey.hello.tuodominio.it", "value": "token1.dkim.amazonses.com", "purpose": "dkim" },
      { "type": "CNAME", "host": "token2._domainkey.hello.tuodominio.it", "value": "token2.dkim.amazonses.com", "purpose": "dkim" },
      { "type": "CNAME", "host": "token3._domainkey.hello.tuodominio.it", "value": "token3.dkim.amazonses.com", "purpose": "dkim" },
      { "type": "TXT", "host": "hello.tuodominio.it", "value": "v=spf1 include:amazonses.com ~all", "purpose": "spf" },
      { "type": "TXT", "host": "_dmarc.hello.tuodominio.it", "value": "v=DMARC1; p=quarantine; rua=mailto:[email protected]", "purpose": "dmarc" }
    ]
  }
}

Aggiungi tutti i record della risposta presso il tuo provider DNS. I tre record CNAME DKIM sono obbligatori per la verifica; SPF e DMARC sono fortemente consigliati per la deliverability.

Se il tuo dominio ha già un record SPF (di Cloudflare Email Routing, Google Workspace, Microsoft 365 e simili), aggiungi include:amazonses.com a quello invece di crearne un secondo, per esempio v=spf1 include:amazonses.com include:_spf.mx.cloudflare.net ~all. Un dominio deve avere esattamente un record v=spf1: con due, SPF si rompe per tutti i mittenti.

Amazon SES indica che le modifiche DNS possono richiedere fino a 72 ore per propagarsi. La verifica avviene anche in automatico: Tratto ricontrolla ogni 10 minuti i domini in attesa.

Verifica quando pronto:

cURL

curl -X POST https://api.tratto.email/v1/domains/dom_abc123/verify \
  -H "Authorization: Bearer tratto_live_..."

Step 3: Invia la Tua Prima Email

Ora invia un'email!

cURL

curl -X POST https://api.tratto.email/v1/emails \
  -H "Authorization: Bearer tratto_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "from": "[email protected]",
    "to": "[email protected]",
    "subject": "Ciao da Tratto!",
    "text": "Se vedi questo, funziona!"
  }'

Node.js

import fetch from 'node-fetch';

const response = await fetch('https://api.tratto.email/v1/emails', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer tratto_live_...',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    from: '[email protected]',
    to: '[email protected]',
    subject: 'Ciao da Tratto!',
    text: 'Se vedi questo, funziona!',
  }),
});
const { data } = await response.json();
console.log('Email ID:', data.id);
console.log('Status:', data.status);

Python

import requests

response = requests.post(
  'https://api.tratto.email/v1/emails',
  headers={
    'Authorization': 'Bearer tratto_live_...',
    'Content-Type': 'application/json',
  },
  json={
    'from': '[email protected]',
    'to': '[email protected]',
    'subject': 'Ciao da Tratto!',
    'text': 'Se vedi questo, funziona!',
  },
)
data = response.json()['data']
print(f"Email ID: {data['id']}")
print(f"Status: {data['status']}")

Risposta:

{
  "data": {
    "id": "email_xyz789",
    "status": "queued",
    "from": "[email protected]",
    "to": "[email protected]",
    "subject": "Ciao da Tratto!",
    "createdAt": "2025-06-30T12:00:00Z"
  }
}

Step 4: Controlla lo Stato dell'Email

Recupera l'email per vedere se è stata consegnata.

cURL

curl https://api.tratto.email/v1/emails/email_xyz789 \
  -H "Authorization: Bearer tratto_live_..."

Cerca status: "delivered".


Prossimi Passi

Bloccato? Controlla Codici di Errore o Autenticazione.


Modifica questa pagina su GitHub

Ultimo aggiornamento