Email API

Lige nu har vi endnu ikke udgivet nogen API-indpakning, men vi planlægger at gøre det i den nærmeste fremtid. Send en mail til api@forwardemail.net hvis du gerne vil have besked, når et bestemt programmeringssprogs API-indpakning frigives. I mellemtiden kan du bruge disse anbefalede HTTP-anmodningsbiblioteker i din applikation eller blot bruge krølle som i nedenstående eksempler.

SprogBibliotek
RubinFaraday
Pythonanmodninger
JavaOkHttp
PHPguzzle
JavaScriptsuperagent (vi er vedligeholdere)
Node.jssuperagent (vi er vedligeholdere)
net/http
.NETRestSharp

Den aktuelle HTTP-basis-URI-sti er: https://api.forwardemail.net.

Alle endepunkter kræver din API nøgle skal indstilles som "brugernavn"-værdien for anmodningens Grundlæggende autorisation header. Bare rolig – eksempler er givet nedenfor til dig, hvis du ikke er sikker på, hvad det er.

Hvis der opstår fejl, vil API-anmodningens svartekst indeholde en detaljeret fejlmeddelelse.

KodeNavn
200OK
400Dårlig anmodning
401Uberettiget
403Forbudt
404Ikke fundet
429For mange anmodninger
500Intern serverfejl
501Ikke implementeret
502Bad Gateway
503Service ikke tilgængelig
504Gateway Time-out
Tip: Hvis du modtager en 5xx statuskode (hvilket ikke burde ske), så kontakt os venligst på api@forwardemail.net og vi hjælper dig med at løse dit problem med det samme.

Vores service er oversat til over 25 forskellige sprog. Alle API-svarmeddelelser oversættes til den sidst registrerede lokalitet for den bruger, der foretager API-anmodningen. Du kan tilsidesætte dette ved at overføre en brugerdefineret Accept-Language header. Du er velkommen til at prøve det ved at bruge sprogrullemenuen nederst på denne side.

Hvis du gerne vil have besked, når paginering er tilgængelig, så send en e-mail api@forwardemail.net.

Hent logfiler

Vores API giver dig programmatisk mulighed for at downloade logfiler til din konto. Indsendelse af en anmodning til dette slutpunkt vil behandle alle logfiler for din konto og e-maile dem til dig som en vedhæftet fil (Gzip komprimeret CSV regnearksfil), når den er fuldført.

Dette giver dig mulighed for at oprette baggrundsjob med en Cron job eller ved at bruge vores Node.js jobplanlægningssoftware Bree at modtage logs, når du ønsker det. Bemærk, at dette endepunkt er begrænset til 10 anmodninger om dagen.

Vedhæftningen er den lille form af email-deliverability-logs-YYYY-MM-DD-h-mm-A-z.csv.gz og selve e-mailen indeholder en kort oversigt over de hentede logfiler. Du kan også downloade logs til enhver tid fra Min konto → Logfiler

GET /v1/logs/download

Forespørgselsstreng-parametrePåkrævetTypeBeskrivelse
domainIngenStreng (FQDN)Filtrer logfiler efter fuldt kvalificeret domæne ("FQDN"). Hvis du ikke angiver dette, vil alle logfiler på alle domæner blive hentet.
qIngenSnorSøg efter logfiler efter e-mail, domæne, aliasnavn, IP-adresse eller dato (M/Y, M/D/YY, M-D, M-D-YY, eller M.D.YY format).

Eksempel på anmodning:

curl https://api.forwardemail.net/v1/logs/download \
  -u API_TOKEN:

Eksempel Cron job (ved midnat hver dag):

0 0 * * * /usr/bin/curl https://api.forwardemail.net/v1/logs/download -u API_TOKEN: &>/dev/null

Bemærk at du kan bruge tjenester som f.eks Crontab.guru for at validere din cron job udtrykssyntaks.

Eksempel Cron job (ved midnat hver dag og med logs for foregående dag):

Til 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

Til Linux og 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

Opret konto

POST /v1/account

KropsparameterPåkrævetTypeBeskrivelse
emailJaStreng (e-mail)Email adresse
passwordJaSnorAdgangskode

Eksempel på anmodning:

curl -X POST https://api.forwardemail.net/v1/account \
  -u API_TOKEN: \
  -d "email=user%40gmail.com"

Hent konto

GET /v1/account

Eksempel på anmodning:

curl https://api.forwardemail.net/v1/account \
  -u API_TOKEN:

Opdater konto

PUT /v1/account

KropsparameterPåkrævetTypeBeskrivelse
emailIngenStreng (e-mail)Email adresse
given_nameIngenSnorFornavn
family_nameIngenSnorEfternavn
avatar_urlIngenStreng (URL)Link til avatarbillede

Eksempel på anmodning:

curl -X PUT https://api.forwardemail.net/v1/account \
  -u API_TOKEN: \
  -d "email=user%40gmail.com"

Sørg for, at du har fulgt opsætningsinstruktionerne for dit domæne. Disse instruktioner kan findes på Min konto → Domæner → Indstillinger → Udgående SMTP-konfiguration. Du skal sikre opsætning af DKIM, Return-Path og DMARC for at sende udgående SMTP med dit domæne.

Liste e-mails

Bemærk, at dette slutpunkt ikke returnerer en allerede oprettet e-mail message, headers, accepted, heller ikke rejectedErrors ejendomme.

For at returnere disse egenskaber og deres værdier skal du bruge Hent e-mail slutpunkt med et e-mail-id.

Dette endepunkt vender højst tilbage 50 resultater ad gangen. Hvis du vil forespørge efter flere sider, skal du tilføje ?page=NUMBER hvor NUMBER er et heltal, f.eks. ?page=1.

GET /v1/emails

Forespørgselsstreng-parametrePåkrævetTypeBeskrivelse
qIngenString (RegExp understøttet)Søg efter e-mails efter metadata
domainIngenString (RegExp understøttet)Søg efter e-mails efter domænenavn
pageIngenNummerSide for at returnere resultater (standard er 1)
`grænseIngenNummerAntal resultater pr. side, der skal returneres (standard er 50 – max er 50 og minimum er 10)

Eksempel på anmodning:

curl https://api.forwardemail.net/v1/emails \
  -u API_TOKEN:

Opret e-mail

Vores API til at oprette en e-mail er inspireret af og udnytter Nodemailers konfiguration af meddelelsesmuligheder. Henvis venligst til Nodemailer-meddelelseskonfiguration for alle kropsparametre nedenfor.

Bemærk, at med undtagelse af envelope og dkim (da vi indstiller dem automatisk for dig), understøtter vi alle Nodemailer-muligheder. Vi indstiller automatisk disableFileAccess og disableUrlAccess muligheder for at true af sikkerhedsmæssige årsager.

Du bør enten bestå den enkelte mulighed for raw med din rå fulde e-mail inklusive overskrifter eller videregive individuelle kropsparametre nedenfor.

POST /v1/emails

KropsparameterPåkrævetTypeBeskrivelse
fromIngenStreng (e-mail)Afsenderens e-mailadresse (skal eksistere som et alias for domænet).
toIngenString eller ArrayKommasepareret liste eller en række af modtagere for "Til"-headeren.
ccIngenString eller ArrayKommasepareret liste eller en række af modtagere til "Cc"-headeren.
bccIngenString eller ArrayKommasepareret liste eller en række af modtagere til "Bcc"-headeren.
subjectIngenSnorEmnet for e-mailen.
textIngenString eller bufferKlartekstversionen af beskeden.
htmlIngenString eller bufferHTML-versionen af meddelelsen.
attachmentsIngenArrayEn række vedhæftede objekter (se Nodemailers almindelige felter).
senderIngenSnorE-mailadressen for "Afsender"-headeren (se Nodemailers mere avancerede felter).
replyToIngenSnorE-mailadressen for "Svar til"-headeren.
inReplyToIngenSnorDet meddelelses-id, som meddelelsen er som svar på.
referencesIngenString eller ArrayMellemrumssepareret liste eller en række meddelelses-id'er.
attachDataUrlsIngenBooleanHvis true så konverterer data: billeder i HTML-indholdet i meddelelsen til indlejrede vedhæftede filer.
watchHtmlIngenSnorEn Apple Watch-specifik HTML-version af beskeden (ifølge Nodemailer-dokumenterne, de nyeste ure kræver ikke, at dette indstilles).
ampIngenSnorEn AMP4EMAIL-specifik HTML-version af beskeden (se Nodemailers eksempel).
icalEventIngenObjektEn iCalendar-begivenhed til brug som et alternativt beskedindhold (se Nodemailers kalenderbegivenheder).
alternativesIngenArrayEn række af alternativt beskedindhold (se Nodemailers alternative indhold).
encodingIngenSnorKodning for tekst- og HTML-strenge (standard til "utf-8", men understøtter "hex" og "base64" også kodningsværdier).
rawIngenString eller bufferEn brugerdefineret genereret RFC822-formateret besked til brug (i stedet for en, der er genereret af Nodemailer – se Nodemailers tilpassede kilde).
textEncodingIngenSnorKodning, der er tvunget til at blive brugt til tekstværdier (enten "quoted-printable" eller "base64"). Standardværdien er den nærmeste registrerede værdi (til ASCII-brug "quoted-printable").
priorityIngenSnorPrioritetsniveau for e-mailen (kan enten være "high", "normal" (standard), eller "low"). Bemærk, at en værdi på "normal" angiver ikke en prioritetsoverskrift (dette er standardadfærden). Hvis en værdi på "high" eller "low" er indstillet, derefter X-Priority, X-MSMail-Priority, og Importance overskrifter vil blive indstillet i overensstemmelse hermed.
headersIngenObjekt eller ArrayEt objekt eller en række af yderligere overskriftsfelter, der skal angives (se Nodemailers brugerdefinerede overskrifter).
messageIdIngenSnorEn valgfri Message-ID-værdi for "Message-ID"-headeren (en standardværdi oprettes automatisk, hvis den ikke er angivet – bemærk, at værdien skal overholde RFC2822-specifikationen).
dateIngenStreng eller datoEn valgfri Dato-værdi, der vil blive brugt, hvis Date-headeren mangler efter parsing, ellers vil den aktuelle UTC-streng blive brugt, hvis den ikke er angivet. Datooverskriften må ikke være mere end 30 dage før det aktuelle tidspunkt.
listIngenObjektEt valgfrit objekt af List-* overskrifter (se Nodemailers listeoverskrifter).

Eksempel på anmodning:

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"

Eksempel på anmodning:

curl -X POST https://api.forwardemail.net/v1/emails \
  -u API_TOKEN: \
  -d "raw=`cat file.eml`"

Hent e-mail

GET /v1/emails/:id

Eksempel på anmodning:

curl https://api.forwardemail.net/v1/emails/:id \
  -u API_TOKEN:

Slet e-mail

Sletning af e-mail vil sætte status til "rejected" (og efterfølgende ikke behandle det i køen) hvis og kun hvis den aktuelle status er en af "pending", "queued", eller "deferred". Vi kan slette e-mails automatisk efter 30 dage efter de blev oprettet og/eller sendt – derfor bør du opbevare en kopi af udgående SMTP-e-mails i din klient, database eller applikation. Du kan referere til vores e-mail-id-værdi i din database, hvis det ønskes - denne værdi returneres fra begge Opret e-mail og Hent e-mail endepunkter.

DELETE /v1/emails/:id

Eksempel på anmodning:

curl -X DELETE https://api.forwardemail.net/v1/emails/:id \
  -u API_TOKEN:

Tip: Domæneendepunkter med et domænenavn /v1/domains/:domain_name da deres sti kan udskiftes med et domænes ID :domain_id. Det betyder, at du kan henvise til domænet ved enten dets name eller id værdi.

Liste domæner

GET /v1/domains

Forespørgselsstreng-parametrePåkrævetTypeBeskrivelse
qIngenString (RegExp understøttet)Søg efter domæner ved navn
nameIngenString (RegExp understøttet)Søg efter domæner ved navn

Eksempel på anmodning:

curl https://api.forwardemail.net/v1/domains \
  -u API_TOKEN:

Opret domæne

POST /v1/domains

KropsparameterPåkrævetTypeBeskrivelse
domainJaStreng (FQDN eller IP)Fuldt kvalificeret domænenavn ("FQDN") eller IP-adresse
planIngenString (tæller)Plantype (skal være "free", "enhanced_protection", eller "team", er standard til "free" eller brugerens nuværende betalte plan, hvis på en)
catchallIngenString (separerede e-mailadresser) eller BooleanOpret et standard catch-all alias, standard til true (hvis true den vil bruge API-brugerens e-mailadresse som modtager, og hvis false ingen catch-all vil blive oprettet). Hvis en streng er bestået, er det en afgrænset liste over e-mailadresser, der skal bruges som modtagere (adskilt af linjeskift, mellemrum og/eller komma)
has_adult_content_protectionIngenBooleanOm spamscanneren skal aktivere beskyttelse af voksenindhold på dette domæne
has_phishing_protectionIngenBooleanOm spamscannerens phishingbeskyttelse skal aktiveres på dette domæne
has_executable_protectionIngenBooleanOm spamscanner eksekverbar beskyttelse skal aktiveres på dette domæne
has_virus_protectionIngenBooleanOm spamscanner-virusbeskyttelse skal aktiveres på dette domæne
has_recipient_verificationIngenBooleanGlobalt domæne standard for, om der skal kræves, at aliasmodtagere klikker på et e-mailbekræftelseslink, så e-mails kan flyde igennem
retention_daysIngenNummerHeltal mellem 0 og 30 der svarer til antallet af opbevaringsdage til at gemme udgående SMTP-e-mails, når de er leveret med succes eller permanent fejlbehæftet. Standard til 0, hvilket betyder, at udgående SMTP-e-mails slettes og slettes med det samme for din sikkerhed.

Eksempel på anmodning:

curl -X POST https://api.forwardemail.net/v1/domains \
  -u API_TOKEN: \
  -d domain=example.com \
  -d plan=free

Hent domæne

GET /v1/domains/example.com

Eksempel på anmodning:

curl https://api.forwardemail.net/v1/domains/example.com \
  -u API_TOKEN:

Bekræft domæneregistreringer

GET /v1/domains/example.com/verify-records

Eksempel på anmodning:

curl https://api.forwardemail.net/v1/domains/example.com/verify-records \
  -u API_TOKEN:

Opdater domæne

PUT /v1/domains/example.com

KropsparameterPåkrævetTypeBeskrivelse
smtp_portIngenStreng eller talBrugerdefineret port til at konfigurere til SMTP-videresendelse (standard er "25")
has_adult_content_protectionIngenBooleanOm spamscanneren skal aktivere beskyttelse af voksenindhold på dette domæne
has_phishing_protectionIngenBooleanOm spamscannerens phishingbeskyttelse skal aktiveres på dette domæne
has_executable_protectionIngenBooleanOm spamscanner eksekverbar beskyttelse skal aktiveres på dette domæne
has_virus_protectionIngenBooleanOm spamscanner-virusbeskyttelse skal aktiveres på dette domæne
has_recipient_verificationIngenBooleanGlobalt domæne standard for, om der skal kræves, at aliasmodtagere klikker på et e-mailbekræftelseslink, så e-mails kan flyde igennem
retention_daysIngenNummerHeltal mellem 0 og 30 der svarer til antallet af opbevaringsdage til at gemme udgående SMTP-e-mails, når de er leveret med succes eller permanent fejlbehæftet. Standard til 0, hvilket betyder, at udgående SMTP-e-mails slettes og slettes med det samme for din sikkerhed.

Eksempel på anmodning:

curl -X PUT https://api.forwardemail.net/v1/domains/example.com \
  -u API_TOKEN:

Slet domæne

DELETE /v1/domains/:domain_name

Eksempel på anmodning:

curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name \
  -u API_TOKEN:

Accepter domæneinvitation

GET /v1/domains/:domain_name/invites

Eksempel på anmodning:

curl https://api.forwardemail.net/v1/domains/:domain_name/invites \
  -u API_TOKEN:

Opret domæneinvitation

POST /v1/domains/example.com/invites

KropsparameterPåkrævetTypeBeskrivelse
emailJaStreng (e-mail)E-mailadresse for at invitere til domænemedlemsliste
groupJaString (tæller)Gruppe at føje brugeren til domænemedlemskabet med (kan være en af "admin" eller "user")

Eksempel på anmodning:

curl -X POST https://api.forwardemail.net/v1/domains/example.com/invites \
  -u API_TOKEN: \
  -d "email=user%40gmail.com" \
  -d group=admin

Fjern domæneinvitation

DELETE /v1/domains/:domain_name/invites

KropsparameterPåkrævetTypeBeskrivelse
emailJaStreng (e-mail)E-mailadresse, der skal fjernes fra domænets medlemsliste

Eksempel på anmodning:

curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name/invites \
  -u API_TOKEN:

Opdater domænemedlem

PUT /v1/domains/example.com/members/:member_id

KropsparameterPåkrævetTypeBeskrivelse
groupJaString (tæller)Gruppe at opdatere brugeren til domænemedlemskabet med (kan være en af "admin" eller "user")

Eksempel på anmodning:

curl -X PUT https://api.forwardemail.net/v1/domains/example.com/members/:member_id \
  -u API_TOKEN:

Fjern domænemedlem

DELETE /v1/domains/:domain_name/members/:member_id

Eksempel på anmodning:

curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name/members/:member_id \
  -u API_TOKEN:

Liste domænealiasser

GET /v1/domains/example.com/aliases

Forespørgselsstreng-parametrePåkrævetTypeBeskrivelse
qIngenString (RegExp understøttet)Søg efter aliasser i et domæne efter navn, etiket eller modtager
nameIngenString (RegExp understøttet)Søg efter aliasser i et domæne ved navn
recipientIngenString (RegExp understøttet)Søg efter aliaser i et domæne efter modtager

Eksempel på anmodning:

curl https://api.forwardemail.net/v1/domains/example.com/aliases \
  -u API_TOKEN:

Opret nyt domænealias

POST /v1/domains/example.com/aliases

KropsparameterPåkrævetTypeBeskrivelse
nameIngenSnorAliasnavn (hvis det ikke er angivet, eller hvis det er tomt, genereres et tilfældigt alias)
recipientsIngenString eller ArrayListe over modtagere (skal være linjeskift/mellemrum/kommasepareret streng eller matrix af gyldige e-mail-adresser, fuldt kvalificerede domænenavne ("FQDN"), IP-adresser og/eller webhook-URL'er – og hvis de ikke er angivet eller er tomme Array, så vil brugerens e-mail, der foretager API-anmodningen, blive indstillet som modtager)
descriptionIngenSnorAlias beskrivelse
labelsIngenString eller ArrayListe over etiketter (skal være linjeskift/mellemrum/kommasepareret streng eller matrix)
has_recipient_verificationIngenBooleanKræv, at modtagere klikker på et e-mailbekræftelseslink, for at e-mails kan strømme igennem (standardindstillingen for domænet, hvis det ikke udtrykkeligt er angivet i anmodningens brødtekst)
is_enabledIngenBooleanOm dette alias skal aktiveres eller deaktiveres (hvis det er deaktiveret, vil e-mails blive dirigeret ingen steder, men returnere vellykkede statuskoder). Hvis en værdi passeres, konverteres den til en boolesk vha boolesk)
has_imapIngenBooleanOm IMAP-lagring skal aktiveres eller deaktiveres for dette alias (hvis deaktiveret, vil indgående e-mails, der modtages, ikke blive gemt i IMAP-lagring. Hvis en værdi passeres, konverteres den til en boolesk vha boolesk)
has_pgpIngenBooleanOm du skal aktivere eller deaktivere OpenPGP-kryptering til IMAP/POP3-krypteret e-mail-lagring ved hjælp af alias' public_key.
public_keyIngenSnorOpenPGP offentlig nøgle i ASCII Armor-format (klik her for at se et eksempel; f.eks. GPG nøgle til support@forwardemail.net). Dette gælder kun, hvis du har has_pgp indstillet til true. Lær mere om end-to-end-kryptering i vores ofte stillede spørgsmål.

Eksempel på anmodning:

curl -X POST https://api.forwardemail.net/v1/domains/example.com/aliases \
  -u API_TOKEN:

Hent domænealias

Du kan hente et domænealias ved enten dets id eller dens name værdi.

GET /v1/domains/:domain_name/aliases/:alias_id

Eksempel på anmodning:

curl https://api.forwardemail.net/v1/domains/:domain_name/aliases/:alias_id \
  -u API_TOKEN:

GET /v1/domains/:domain_name/aliases/:alias_name

Eksempel på anmodning:

curl https://api.forwardemail.net/v1/domains/:domain_name/aliases/:alias_name \
  -u API_TOKEN:

Opdater domænealias

PUT /v1/domains/example.com/aliases/:alias_id

KropsparameterPåkrævetTypeBeskrivelse
nameIngenSnorAlias navn
recipientsIngenString eller ArrayListe over modtagere (skal være linjeskift/mellemrum/kommasepareret streng eller matrix af gyldige e-mail-adresser, fuldt kvalificerede domænenavne ("FQDN"), IP-adresser og/eller webhook-URL'er)
descriptionIngenSnorAlias beskrivelse
labelsIngenString eller ArrayListe over etiketter (skal være linjeskift/mellemrum/kommasepareret streng eller matrix)
has_recipient_verificationIngenBooleanKræv, at modtagere klikker på et e-mailbekræftelseslink, for at e-mails kan strømme igennem (standardindstillingen for domænet, hvis det ikke udtrykkeligt er angivet i anmodningens brødtekst)
is_enabledIngenBooleanOm dette alias skal aktiveres eller deaktiveres (hvis det er deaktiveret, vil e-mails blive dirigeret ingen steder, men returnere vellykkede statuskoder)
has_imapIngenBooleanOm IMAP-lagring skal aktiveres eller deaktiveres for dette alias (hvis deaktiveret, vil indgående e-mails, der modtages, ikke blive gemt i IMAP-lagring. Hvis en værdi passeres, konverteres den til en boolesk vha boolesk)
has_pgpIngenBooleanOm du skal aktivere eller deaktivere OpenPGP-kryptering til IMAP/POP3-krypteret e-mail-lagring ved hjælp af alias' public_key.
public_keyIngenSnorOpenPGP offentlig nøgle i ASCII Armor-format (klik her for at se et eksempel; f.eks. GPG nøgle til support@forwardemail.net). Dette gælder kun, hvis du har has_pgp indstillet til true. Lær mere om end-to-end-kryptering i vores ofte stillede spørgsmål.

Eksempel på anmodning:

curl -X PUT https://api.forwardemail.net/v1/domains/example.com/aliases/:alias_id \
  -u API_TOKEN:

Slet domænealias

DELETE /v1/domains/:domain_name/aliases/:alias_id

Eksempel på anmodning:

curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name/aliases/:alias_id \
  -u API_TOKEN: