Ga naar inhoud

E-mail

Verstuur transactionele e-mails vanuit je app. Beheer afzenderidentiteiten en volg de bezorging via Dashboard > Emails of de SDK.

Elke Proyecta-app kan transactionele e-mail versturen. Verifieer een afzenderidentiteit en verstuur vervolgens vanuit je app-code — geen apart account bij een e-mailprovider nodig.

Open Dashboard > Emails in de builder. Het tabblad heeft twee subtabbladen:

TabbladWaarvoor het dient
IdentitiesVoeg afzender-e-mailadressen of domeinen toe en verifieer ze
SentBekijk verzonden e-mails met bezorgstatus (sent, delivered, bounced, enzovoort)

Je kunt een nieuwe afzenderidentiteit toevoegen en je e-mailbezorggeschiedenis bekijken — allemaal zonder code te schrijven.

  1. Maak een afzenderidentiteit aan en verifieer deze (een e-mailadres of een domein)
  2. Roep proyecta.email.send() aan met het geverifieerde adres in het veld from

De eenvoudigste aanpak is het verifiëren van één enkel e-mailadres.

import Proyecta from '@proyecta-ai/sdk';
const proyecta = new Proyecta({ apiKey: process.env.PROYECTA_API_KEY });
const identity = await proyecta.email.identities.create({
type: 'email',
value: 'hello@myapp.com',
});
// identity.status === 'verified' immediately upon creation

Om de verificatiecontrole opnieuw te starten:

await proyecta.email.identities.verify({ identityId: identity.id });

Voor productie-apps verifieer je het volledige domein, zodat je kunt verzenden vanaf elk adres daarbinnen (hello@, support@, noreply@, enzovoort).

const identity = await proyecta.email.identities.create({
type: 'domain',
value: 'myapp.com',
});
// identity.status === 'verified' immediately upon creation

DNS-gebaseerde domeinverificatie (het genereren en opnieuw controleren van SPF/DKIM-records) is gepland maar nog niet geïmplementeerd.

Zodra je identiteit geverifieerd is, verstuur je met:

await proyecta.email.send({
from: 'Acme <hello@myapp.com>',
to: 'customer@example.com',
subject: 'Your receipt from Acme',
html: '<p>Thanks for your order — here are the details.</p>',
text: 'Thanks for your order — here are the details.',
});

send geeft het volledige verzonden e-mailobject terug (inclusief id, last_event en de berichtvelden), dat je later kunt gebruiken om de bezorgstatus op te zoeken.

Ontvangers. to, cc en bcc accepteren allemaal een enkel adres of een array.

Inhoud. Geef html, text, of allebei op. Voor de beste afleverbaarheid raden we aan een platte-tekstversie mee te sturen.

Reply-to, aangepaste headers, metadata-tags. reply_to wordt ondersteund (het eerste adres wordt gebruikt). Aangepaste headers en metadata-tags worden door de API geaccepteerd, maar worden nog niet doorgestuurd naar de bezorgprovider.

Bekijk verzonden e-mails (gepagineerd) met hun meest recente bezorggebeurtenis:

const { data: emails } = await proyecta.email.list({ limit: 20 });
for (const email of emails) {
console.log(email.subject, '', email.last_event);
// last_event: 'sent' | 'delivered' | 'opened' | 'clicked' | 'bounced' | 'complained'
}

Haal een enkele e-mail op met de volledige HTML/tekst-inhoud:

const full = await proyecta.email.get('email_abc123');
console.log(full.html, full.text, full.last_event);

Je hoeft dit niet zelf te schrijven:

  • "Verify hello@myapp.com as a sending identity."
  • "Send a welcome email with Proyecta Email whenever a new user signs up. Use a nice HTML template."
  • "After a successful checkout, send the customer a receipt using proyecta.email.send."
  • "Show me the last 20 emails we've sent and whether they bounced."
  • Het from-adres moet een geverifieerde identiteit zijn. Verzenden met een niet-geverifieerd adres geeft een foutmelding.
  • Maandelijkse limieten zijn van toepassing op basis van je Proyecta-abonnement.
  • Template-editor — ontwerp transactionele templates visueel in de builder
  • Bulk/batch send endpoint voor massaverzendingen