- Söksida
- Innehållsförteckning
E-post API
bibliotek
Just nu har vi ännu inte släppt några API-omslag, men vi planerar att göra det inom en snar framtid. Skicka ett mail till api@forwardemail.net om du vill bli meddelad när ett visst programmeringsspråks API-omslag släpps. Under tiden kan du använda dessa rekommenderade HTTP-förfrågningsbibliotek i din applikation, eller helt enkelt använda ringla som i exemplen nedan.
Språk | Bibliotek |
---|---|
Rubin | Faraday |
Pytonorm | förfrågningar |
Java | OkHttp |
PHP | SUPA |
JavaScript | superagent (vi är underhållare) |
Node.js | superagent (vi är underhållare) |
Gå | net / http |
.NET | RestSharp |
Bas URI
Den aktuella HTTP-bas-URI-sökvägen är: https://api.forwardemail.net
.
autentisering
Alla slutpunkter kräver din API-nyckel ställas in som "användarnamn"-värdet för begäran Grundläggande auktorisation rubrik. Oroa dig inte – exempel ges nedan för dig om du inte är säker på vad detta är.
fel
Om några fel uppstår kommer svarstypen för API-begäran att innehålla ett detaljerat felmeddelande.
Koda | namn |
---|---|
200 | OK |
400 | Dålig förfrågan |
401 | Obehörig |
403 | Förbjuden |
404 | Hittades inte |
429 | För många förfrågningar |
500 | internt serverfel |
501 | Ej implementerad |
502 | Dålig gateway |
503 | Tjänsten är inte tillgänglig |
504 | Gateway Time-out |
Lokalisering
Vår tjänst är översatt till över 25 olika språk. Alla API-svarsmeddelanden översätts till den senast upptäckta lokalen för användaren som gör API-begäran. Du kan åsidosätta detta genom att skicka en anpassad Accept-Language
rubrik. Testa gärna med hjälp av rullgardinsmenyn för språk längst ner på denna sida.
Paginering
Om du vill bli meddelad när paginering är tillgänglig, vänligen maila api@forwardemail.net.
Loggar
Hämta loggar
Vårt API låter dig programmässigt ladda ner loggar för ditt konto. Om du skickar en begäran till denna slutpunkt kommer alla loggar för ditt konto att bearbetas och du skickar dem via e-post som en bilaga (Gzip komprimerad CSV kalkylarksfil) när den är klar.
Detta gör att du kan skapa bakgrundsjobb med en Cron jobb eller använder vår Node.js jobbschemaläggningsprogram Bree att ta emot loggar när du vill. Observera att denna slutpunkt är begränsad till 10
förfrågningar per dag.
Bilagan är en gemen form av email-deliverability-logs-YYYY-MM-DD-h-mm-A-z.csv.gz
och själva e-postmeddelandet innehåller en kort sammanfattning av loggarna som hämtats. Du kan också ladda ner loggar när som helst från Mitt konto → Loggar
GET /v1/logs/download
Querystring-parameter | Nödvändig | Typ | Beskrivning |
---|---|---|---|
domain | Nej | Sträng (FQDN) | Filtrera loggar efter fullständigt kvalificerad domän ("FQDN"). Om du inte anger detta kommer alla loggar över alla domäner att hämtas. |
q | Nej | Sträng | Sök efter loggar efter e-post, domän, aliasnamn, IP-adress eller datum (M/Y , M/D/YY , M-D , M-D-YY , eller M.D.YY formatera). |
Exempelförfrågan:
curl https://api.forwardemail.net/v1/logs/download \
-u API_TOKEN:
Exempel på Cron-jobb (vid midnatt varje dag):
0 0 * * * /usr/bin/curl https://api.forwardemail.net/v1/logs/download -u API_TOKEN: &>/dev/null
Observera att du kan använda tjänster som t.ex Crontab.guru för att validera syntaxen för ditt cron-jobbuttryck.
Exempel på Cron-jobb (vid midnatt varje dag och med loggar för föregående dag):
För MacOS:
0 0 * * * /usr/bin/curl https://api.forwardemail.net/v1/logs/download?q=`date -v-1d -u "+%-m/%-d/%y"` -u API_TOKEN: &>/dev/null
För Linux och Ubuntu:
0 0 * * * /usr/bin/curl https://api.forwardemail.net/v1/logs/download?q=`date --date "-1 days" -u "+%-m/%-d/%y"` -u API_TOKEN: &>/dev/null
konto
Skapa konto
POST /v1/account
Kroppsparameter | Nödvändig | Typ | Beskrivning |
---|---|---|---|
email | Ja | String (e-post) | E-postadress |
password | Ja | Sträng | Lösenord |
Exempelförfrågan:
curl -X POST https://api.forwardemail.net/v1/account \
-u API_TOKEN: \
-d "email=user%40gmail.com"
Hämta konto
GET /v1/account
Exempelförfrågan:
curl https://api.forwardemail.net/v1/account \
-u API_TOKEN:
Uppdatera konto
PUT /v1/account
Kroppsparameter | Nödvändig | Typ | Beskrivning |
---|---|---|---|
email | Nej | String (e-post) | E-postadress |
given_name | Nej | Sträng | Förnamn |
family_name | Nej | Sträng | Efternamn |
avatar_url | Nej | Sträng (URL) | Länk till avatarbild |
Exempelförfrågan:
curl -X PUT https://api.forwardemail.net/v1/account \
-u API_TOKEN: \
-d "email=user%40gmail.com"
E-postmeddelanden
Se till att du har följt installationsinstruktionerna för din domän. Dessa instruktioner finns på Mitt konto → Domäner → Inställningar → Utgående SMTP-konfiguration. Du måste säkerställa installationen av DKIM, Return-Path och DMARC för att skicka utgående SMTP med din domän.
Lista e-postmeddelanden
Observera att denna slutpunkt inte returnerar ett redan skapat e-postmeddelande message
, headers
, accepted
, inte heller rejectedErrors
egenskaper.
För att returnera dessa egenskaper och deras värden, använd Hämta e-post slutpunkt med ett e-post-ID.
Denna slutpunkt kommer som mest tillbaka 50
resultat åt gången. Om du vill fråga efter flera sidor, lägg till ?page=NUMBER
var NUMBER
är ett heltal, t.ex. ?page=1
.
GET /v1/emails
Querystring-parameter | Nödvändig | Typ | Beskrivning |
---|---|---|---|
q | Nej | String (RegExp stöds) | Sök efter e-postmeddelanden med metadata |
domain | Nej | String (RegExp stöds) | Sök efter e-postmeddelanden efter domännamn |
page | Nej | siffra | Sida för att returnera resultat (standard är 1 ) |
`gräns | Nej | siffra | Antal resultat per sida att returnera (standard är 50 – max är 50 och minimum är 10 ) |
Exempelförfrågan:
curl https://api.forwardemail.net/v1/emails \
-u API_TOKEN:
Skapa e-post
Vårt API för att skapa ett e-postmeddelande är inspirerat av och utnyttjar Nodemailers meddelandealternativkonfiguration. Vänligen hänvisa till Nodemailer-meddelandekonfiguration för alla kroppsparametrar nedan.
Observera att med undantag för envelope
och dkim
(eftersom vi ställer in dem automatiskt åt dig) stöder vi alla Nodemailer-alternativ. Vi ställer in automatiskt disableFileAccess
och disableUrlAccess
alternativ till true
av säkerhetsskäl.
Du bör antingen passera det enda alternativet raw
med din råa fullständiga e-post inklusive rubriker eller skicka individuella kroppsparameteralternativ nedan.
POST /v1/emails
Kroppsparameter | Nödvändig | Typ | Beskrivning |
---|---|---|---|
from | Nej | String (e-post) | Avsändarens e-postadress (måste finnas som ett alias för domänen). |
to | Nej | Sträng eller array | Kommaseparerad lista eller en matris med mottagare för "Till"-huvudet. |
cc | Nej | Sträng eller array | Kommaseparerad lista eller en matris med mottagare för "Cc"-huvudet. |
bcc | Nej | Sträng eller array | Kommaseparerad lista eller en matris med mottagare för "Bcc"-huvudet. |
subject | Nej | Sträng | Ämnet för e-postmeddelandet. |
text | Nej | Sträng eller buffert | Klartextversionen av meddelandet. |
html | Nej | Sträng eller buffert | HTML-versionen av meddelandet. |
attachments | Nej | Array | En rad bifogade objekt (se Nodemailers vanliga fält). |
sender | Nej | Sträng | E-postadressen för rubriken "Avsändare" (se Nodemailers mer avancerade fält). |
replyTo | Nej | Sträng | E-postadressen för rubriken "Svara till". |
inReplyTo | Nej | Sträng | Meddelande-id meddelandet är ett svar på. |
references | Nej | Sträng eller array | Mellanrumsseparerad lista eller en uppsättning meddelande-ID:n. |
attachDataUrls | Nej | Boolean | Om true konverterar sedan data: bilder i HTML-innehållet i meddelandet till inbäddade bilagor. |
watchHtml | Nej | Sträng | En Apple Watch-specifik HTML-version av meddelandet (enligt Nodemailer-dokumenten, de senaste klockorna kräver inte att detta ställs in). |
amp | Nej | Sträng | En AMP4EMAIL-specifik HTML-version av meddelandet (se Nodemailers exempel). |
icalEvent | Nej | Objekt | En iCalendar-händelse att använda som ett alternativt meddelandeinnehåll (se Nodemailers kalenderhändelser). |
alternatives | Nej | Array | En mängd alternativt meddelandeinnehåll (se Nodemailers alternativa innehåll). |
encoding | Nej | Sträng | Kodning för text- och HTML-strängar (standard till "utf-8" , men stöder "hex" och "base64" kodningsvärden också). |
raw | Nej | Sträng eller buffert | Ett anpassat genererat RFC822-formaterat meddelande att använda (istället för ett som genereras av Nodemailer – se Nodemailers anpassade källa). |
textEncoding | Nej | Sträng | Kodning som tvingas användas för textvärden (antingen "quoted-printable" eller "base64" ). Standardvärdet är det närmast detekterade värdet (för ASCII-användning "quoted-printable" ). |
priority | Nej | Sträng | Prioritetsnivå för e-postmeddelandet (kan antingen vara "high" , "normal" (standard), eller "low" ). Observera att ett värde på "normal" anger inte en prioritetsrubrik (detta är standardbeteendet). Om ett värde på "high" eller "low" är inställd, sedan X-Priority , X-MSMail-Priority , och Importance rubriker kommer att ställas in därefter. |
headers | Nej | Objekt eller Array | Ett objekt eller en matris med ytterligare rubrikfält att ställa in (se Nodemailers anpassade rubriker). |
messageId | Nej | Sträng | Ett valfritt Message-ID-värde för "Message-ID"-huvudet (ett standardvärde skapas automatiskt om det inte har ställts in – observera att värdet ska följa RFC2822-specifikationen). |
date | Nej | Sträng eller datum | Ett valfritt datumvärde som kommer att användas om datumhuvudet saknas efter analys, annars kommer den aktuella UTC-strängen att användas om den inte har ställts in. Datumhuvudet får inte vara mer än 30 dagar före den aktuella tiden. |
list | Nej | Objekt | Ett valfritt objekt av List-* rubriker (se Nodemailers listrubriker). |
Exempelförfrågan:
curl -X POST https://api.forwardemail.net/v1/emails \
-u API_TOKEN: \
-d "from=alias@example.com" \
-d "to=user%40gmail.com" \
-d "subject=test" \
-d "text=test"
Exempelförfrågan:
curl -X POST https://api.forwardemail.net/v1/emails \
-u API_TOKEN: \
-d "raw=`cat file.eml`"
Hämta e-post
GET /v1/emails/:id
Exempelförfrågan:
curl https://api.forwardemail.net/v1/emails/:id \
-u API_TOKEN:
Ta bort e-post
Radering av e-post kommer att ställa in statusen till "rejected"
(och därefter inte bearbeta det i kön) om och bara om den aktuella statusen är en av "pending"
, "queued"
, eller "deferred"
. Vi kan rensa e-postmeddelanden automatiskt efter 30 dagar efter att de skapades och/eller skickades – därför bör du behålla en kopia av utgående SMTP-e-postmeddelanden i din klient, databas eller applikation. Du kan referera till vårt e-post-ID-värde i din databas om så önskas – detta värde returneras från båda Skapa e-post och Hämta e-post slutpunkter.
DELETE /v1/emails/:id
Exempelförfrågan:
curl -X DELETE https://api.forwardemail.net/v1/emails/:id \
-u API_TOKEN:
domäner
/v1/domains/:domain_name
eftersom deras sökväg är utbytbara med en domäns ID :domain_id
. Detta innebär att du kan referera till domänen med antingen dess name
eller id
värde.
Lista domäner
GET /v1/domains
Querystring-parameter | Nödvändig | Typ | Beskrivning |
---|---|---|---|
q | Nej | String (RegExp stöds) | Sök efter domäner efter namn |
name | Nej | String (RegExp stöds) | Sök efter domäner efter namn |
Exempelförfrågan:
curl https://api.forwardemail.net/v1/domains \
-u API_TOKEN:
Skapa domän
POST /v1/domains
Kroppsparameter | Nödvändig | Typ | Beskrivning |
---|---|---|---|
domain | Ja | String (FQDN eller IP) | Fullt kvalificerat domännamn ("FQDN") eller IP-adress |
plan | Nej | Sträng (många) | Plantyp (måste vara "free" , "enhanced_protection" , eller "team" , har som standard "free" eller användarens nuvarande betalda plan om det finns en) |
catchall | Nej | Sträng (avgränsade e-postadresser) eller boolesk | Skapa ett förvalt catch-all-alias, som standard true (om true den kommer att använda API-användarens e-postadress som mottagare, och om false ingen catch-all kommer att skapas). Om en sträng skickas är det en avgränsad lista med e-postadresser som ska användas som mottagare (avgränsade med radbrytning, mellanslag och/eller komma) |
has_adult_content_protection | Nej | Boolean | Huruvida skydd av barnförbjudet innehåll ska aktiveras av Spam Scanner på den här domänen |
has_phishing_protection | Nej | Boolean | Om du ska aktivera skydd mot nätfiske av skräppostskannern på den här domänen |
has_executable_protection | Nej | Boolean | Om körbart skydd ska aktiveras av Spam Scanner på den här domänen |
has_virus_protection | Nej | Boolean | Om du vill aktivera skräppostscanner-virusskydd på den här domänen |
has_recipient_verification | Nej | Boolean | Global domän standard för om aliasmottagare ska behöva klicka på en e-postverifieringslänk för att e-post ska flöda igenom |
retention_days | Nej | siffra | Heltal mellan 0 och 30 som motsvarar antalet lagringsdagar för att lagra utgående SMTP-e-postmeddelanden när de väl har levererats eller blivit permanenta felaktiga. Standard till 0 , vilket innebär att utgående SMTP-e-postmeddelanden rensas och redigeras omedelbart för din säkerhet. |
Exempelförfrågan:
curl -X POST https://api.forwardemail.net/v1/domains \
-u API_TOKEN: \
-d domain=example.com \
-d plan=free
Hämta domän
GET /v1/domains/example.com
Exempelförfrågan:
curl https://api.forwardemail.net/v1/domains/example.com \
-u API_TOKEN:
Verifiera domänregister
GET /v1/domains/example.com/verify-records
Exempelförfrågan:
curl https://api.forwardemail.net/v1/domains/example.com/verify-records \
-u API_TOKEN:
Uppdatera domän
PUT /v1/domains/example.com
Kroppsparameter | Nödvändig | Typ | Beskrivning |
---|---|---|---|
smtp_port | Nej | Sträng eller nummer | Anpassad port att konfigurera för SMTP-vidarebefordran (standard är "25" ) |
has_adult_content_protection | Nej | Boolean | Huruvida skydd av barnförbjudet innehåll ska aktiveras av Spam Scanner på den här domänen |
has_phishing_protection | Nej | Boolean | Om du ska aktivera skydd mot nätfiske av skräppostskannern på den här domänen |
has_executable_protection | Nej | Boolean | Om körbart skydd ska aktiveras av Spam Scanner på den här domänen |
has_virus_protection | Nej | Boolean | Om du vill aktivera skräppostscanner-virusskydd på den här domänen |
has_recipient_verification | Nej | Boolean | Global domän standard för om aliasmottagare ska behöva klicka på en e-postverifieringslänk för att e-post ska flöda igenom |
retention_days | Nej | siffra | Heltal mellan 0 och 30 som motsvarar antalet lagringsdagar för att lagra utgående SMTP-e-postmeddelanden när de väl har levererats eller blivit permanenta felaktiga. Standard till 0 , vilket innebär att utgående SMTP-e-postmeddelanden rensas och redigeras omedelbart för din säkerhet. |
Exempelförfrågan:
curl -X PUT https://api.forwardemail.net/v1/domains/example.com \
-u API_TOKEN:
Radera domän
DELETE /v1/domains/:domain_name
Exempelförfrågan:
curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name \
-u API_TOKEN:
Inbjudningskort
Acceptera domäninbjudan
GET /v1/domains/:domain_name/invites
Exempelförfrågan:
curl https://api.forwardemail.net/v1/domains/:domain_name/invites \
-u API_TOKEN:
Skapa domäninbjudan
POST /v1/domains/example.com/invites
Kroppsparameter | Nödvändig | Typ | Beskrivning |
---|---|---|---|
email | Ja | String (e-post) | E-postadress för att bjuda in till listan med domänmedlemmar |
group | Ja | Sträng (många) | Grupp att lägga till användaren till domänmedlemskapet med (kan vara en av "admin" eller "user" ) |
Exempelförfrågan:
curl -X POST https://api.forwardemail.net/v1/domains/example.com/invites \
-u API_TOKEN: \
-d "email=user%40gmail.com" \
-d group=admin
Ta bort domäninbjudan
DELETE /v1/domains/:domain_name/invites
Kroppsparameter | Nödvändig | Typ | Beskrivning |
---|---|---|---|
email | Ja | String (e-post) | E-postadress som ska tas bort från listan över domänmedlemmar |
Exempelförfrågan:
curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name/invites \
-u API_TOKEN:
medlemmar
Uppdatera domänmedlem
PUT /v1/domains/example.com/members/:member_id
Kroppsparameter | Nödvändig | Typ | Beskrivning |
---|---|---|---|
group | Ja | Sträng (många) | Grupp att uppdatera användaren till domänmedlemskapet med (kan vara en av "admin" eller "user" ) |
Exempelförfrågan:
curl -X PUT https://api.forwardemail.net/v1/domains/example.com/members/:member_id \
-u API_TOKEN:
Ta bort domänmedlem
DELETE /v1/domains/:domain_name/members/:member_id
Exempelförfrågan:
curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name/members/:member_id \
-u API_TOKEN:
alias
Lista domänalias
GET /v1/domains/example.com/aliases
Querystring-parameter | Nödvändig | Typ | Beskrivning |
---|---|---|---|
q | Nej | String (RegExp stöds) | Sök efter alias i en domän efter namn, etikett eller mottagare |
name | Nej | String (RegExp stöds) | Sök efter alias i en domän efter namn |
recipient | Nej | String (RegExp stöds) | Sök efter alias i en domän efter mottagare |
Exempelförfrågan:
curl https://api.forwardemail.net/v1/domains/example.com/aliases \
-u API_TOKEN:
Skapa nytt domänalias
POST /v1/domains/example.com/aliases
Kroppsparameter | Nödvändig | Typ | Beskrivning |
---|---|---|---|
name | Nej | Sträng | Aliasnamn (om det inte anges eller om det är tomt, genereras ett slumpmässigt alias) |
recipients | Nej | Sträng eller array | Lista över mottagare (måste vara radbrytning/mellanslag/kommaseparerad sträng eller matris med giltiga e-postadresser, fullständigt kvalificerade domännamn ("FQDN"), IP-adresser och/eller webbhook-URL:er – och om de inte anges eller är tomma Array, då ställs användarens e-post som gör API-begäran in som mottagare) |
description | Nej | Sträng | Alias beskrivning |
labels | Nej | Sträng eller array | Lista över etiketter (måste vara radbrytning / mellanslag / kommaseparerad sträng eller array) |
has_recipient_verification | Nej | Boolean | Kräv att mottagarna klickar på en e-postverifieringslänk för att e-post ska flöda igenom (standard för domänens inställning om det inte uttryckligen anges i förfrågans brödtext) |
is_enabled | Nej | Boolean | Om detta alias ska aktiveras eller inaktiveras (om det är inaktiverat kommer e-postmeddelanden att dirigeras ingenstans utan returnera framgångsrika statuskoder). Om ett värde skickas omvandlas det till ett booleskt värde med hjälp av booleskt) |
has_imap | Nej | Boolean | Om IMAP-lagring ska aktiveras eller inaktiveras för detta alias (om det är inaktiverat kommer inkommande e-postmeddelanden inte att lagras i IMAP-lagring. Om ett värde skickas omvandlas det till ett booleskt värde med hjälp av booleskt) |
has_pgp | Nej | Boolean | Om du ska aktivera eller inaktivera OpenPGP-kryptering för IMAP/POP3-krypterad e-postlagring använder aliaset public_key . |
public_key | Nej | Sträng | OpenPGP offentlig nyckel i ASCII Armor-format (klicka här för att se ett exempel; t.ex. GPG-nyckel för support@forwardemail.net ). Detta gäller bara om du har has_pgp satt till true . Läs mer om end-to-end-kryptering i vår FAQ. |
Exempelförfrågan:
curl -X POST https://api.forwardemail.net/v1/domains/example.com/aliases \
-u API_TOKEN:
Hämta domänalias
Du kan hämta ett domänalias med antingen dess id
eller dess name
värde.
GET /v1/domains/:domain_name/aliases/:alias_id
Exempelförfrågan:
curl https://api.forwardemail.net/v1/domains/:domain_name/aliases/:alias_id \
-u API_TOKEN:
GET /v1/domains/:domain_name/aliases/:alias_name
Exempelförfrågan:
curl https://api.forwardemail.net/v1/domains/:domain_name/aliases/:alias_name \
-u API_TOKEN:
Uppdatera domänalias
PUT /v1/domains/example.com/aliases/:alias_id
Kroppsparameter | Nödvändig | Typ | Beskrivning |
---|---|---|---|
name | Nej | Sträng | Alias namn |
recipients | Nej | Sträng eller array | Lista över mottagare (måste vara radbrytning / mellanslag / kommaseparerad sträng eller array med giltiga e-postadresser, fullt kvalificerade domännamn ("FQDN"), IP-adresser och / eller webbhook-webbadresser) |
description | Nej | Sträng | Alias beskrivning |
labels | Nej | Sträng eller array | Lista över etiketter (måste vara radbrytning / mellanslag / kommaseparerad sträng eller array) |
has_recipient_verification | Nej | Boolean | Kräv att mottagarna klickar på en e-postverifieringslänk för att e-post ska flöda igenom (standard för domänens inställning om det inte uttryckligen anges i förfrågans brödtext) |
is_enabled | Nej | Boolean | Om du vill aktivera eller inaktivera detta alias (om det är inaktiverat kommer e-postmeddelanden att dirigeras ingenstans men returnera framgångsrika statuskoder) |
has_imap | Nej | Boolean | Om IMAP-lagring ska aktiveras eller inaktiveras för detta alias (om det är inaktiverat kommer inkommande e-postmeddelanden inte att lagras i IMAP-lagring. Om ett värde skickas omvandlas det till ett booleskt värde med hjälp av booleskt) |
has_pgp | Nej | Boolean | Om du ska aktivera eller inaktivera OpenPGP-kryptering för IMAP/POP3-krypterad e-postlagring använder aliaset public_key . |
public_key | Nej | Sträng | OpenPGP offentlig nyckel i ASCII Armor-format (klicka här för att se ett exempel; t.ex. GPG-nyckel för support@forwardemail.net ). Detta gäller bara om du har has_pgp satt till true . Läs mer om end-to-end-kryptering i vår FAQ. |
Exempelförfrågan:
curl -X PUT https://api.forwardemail.net/v1/domains/example.com/aliases/:alias_id \
-u API_TOKEN:
Radera domänalias
DELETE /v1/domains/:domain_name/aliases/:alias_id
Exempelförfrågan:
curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name/aliases/:alias_id \
-u API_TOKEN: