Begin hier

Snelstart

Maak een API-sleutel, verifieer een domein en verstuur een gecontroleerde e-mail met een request dat veilig opnieuw geprobeerd kan worden.

Voordat je begint

Maak een SendHQ-workspace aan en houd het dashboard open. Nieuwe workspaces krijgen een gecontroleerde integratieproefperiode: e-mails kunnen alleen worden afgeleverd bij het e-mailadres van het account of bij een AWS SES-simulatoradres, totdat er een betaald abonnement actief is.

1. Maak een API-sleutel aan

Open API keys in het dashboard, kies een beschrijvende naam zoals Production en kopieer de sleutel zodra die wordt getoond. Bewaar hem server-side in een secretmanager. SendHQ toont de volledige waarde daarna nooit meer.

.env
SENDHQ_API_KEY=re_your_key_here

2. Voeg een verzenddomein toe

Open Domains, voeg een domein toe dat je beheert en publiceer de DKIM-, SPF-, DMARC- en SES-verificatierecords die je terugkrijgt. Cloudflare-gebruikers kunnen een eenmalige DNS-configuratie autoriseren; SendHQ verwijdert het OAuth-token na de callback.

Publiceer geen tweede SPF-beleid.Bestaat er al een SPF-record, voeg dan include:amazonses.com samen met de bestaande v=spf1-waarde.

3. Wacht op de verificatie

Gebruik het dashboard of POST /domains/:id/verify. DNS kan de statussen pending, checking en propagating doorlopen voordat SES de identiteit als verified meldt.

4. Verstuur een gecontroleerd bericht

curl
curl https://sendhq.cc/api/v1/emails \
  -H "Authorization: Bearer $SENDHQ_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: onboarding-user-42" \
  -d '{"from":"Acme <hello@example.com>","to":["owner@example.com"],"subject":"SendHQ is connected","html":"<h1>It works</h1><p>Your first controlled message was accepted.</p>","text":"It works. Your first controlled message was accepted."}'

Een geslaagd request geeft een SendHQ-e-mail-ID, het bericht-ID van de provider en het ID van de conversatiethread terug. Sla het SendHQ-ID op bij het applicatie-event dat de e-mail heeft veroorzaakt.

5. Verwerk de uitkomsten

Een geaccepteerd API-request is niet hetzelfde als aflevering bij de ontvanger. Haal /emails/:id/events op of gebruik het dashboard om bezorg-, bounce-, klacht-, reject-, open- en klikevents te bekijken.