E-post API

Akkurat nå har vi ennå ikke gitt ut noen API-innpakninger, men vi planlegger å gjøre det i nær fremtid. Send en e-post til api@forwardemail.net hvis du ønsker å bli varslet når et bestemt programmeringsspråks API-omslag er utgitt. I mellomtiden kan du bruke disse anbefalte HTTP-forespørselsbibliotekene i applikasjonen din, eller ganske enkelt bruke krølle som i eksemplene nedenfor.

SpråkBibliotek
RubinFaraday
Pythonforespørsler
JavaOkHttp
PHPdyse
Javascriptsuperagent (vi er vedlikeholdere)
node.jssuperagent (vi er vedlikeholdere)
net / http
.NETRestSharp

Gjeldende HTTP-base URI-bane er: https://api.forwardemail.net.

Alle endepunkter krever din API-nøkkel settes som "brukernavn"-verdien for forespørselen Grunnleggende autorisasjon Overskrift. Ikke bekymre deg – eksempler er gitt nedenfor for deg hvis du ikke er sikker på hva dette er.

Hvis det oppstår feil, vil svaret på API-forespørselen inneholde en detaljert feilmelding.

KodeNavn
200OK
400Dårlig forespørsel
401uautorisert
403Forbudt
404Ikke funnet
429For mange forespørsler
500intern server feil
501Ikke implementert
502Dårlig gateway
503Tjenesten utilgjengelig
504Gateway Time-out
Tips: Hvis du mottar en 5xx-statuskode (noe som ikke skal skje), vennligst kontakt oss på api@forwardemail.net og vi hjelper deg med å løse problemet umiddelbart.

Tjenesten vår er oversatt til over 25 forskjellige språk. Alle API-svarmeldinger blir oversatt til den siste lokaliteten som ble oppdaget av brukeren som sender API-forespørselen. Du kan overstyre dette ved å sende en egendefinert Accept-Language Overskrift. Prøv den gjerne ved å bruke språkrullegardinmenyen nederst på denne siden.

Hvis du ønsker å bli varslet når paginering er tilgjengelig, vennligst send en e-post api@forwardemail.net.

Hent logger

Vår API programmert lar deg laste ned logger for kontoen din. Ved å sende inn en forespørsel til dette endepunktet vil alle logger for kontoen din behandles og sendes via e-post til deg som et vedlegg (Gzip komprimert CSV regnearkfil) når den er fullført.

Dette lar deg lage bakgrunnsjobber med en Cron jobb eller bruke vår Node.js jobbplanleggingsprogramvare Bree å motta logger når du måtte ønske det. Merk at dette endepunktet er begrenset til 10 forespørsler per dag.

Vedlegget er en liten form av email-deliverability-logs-YYYY-MM-DD-h-mm-A-z.csv.gz og selve e-posten inneholder et kort sammendrag av loggene som er hentet. Du kan også laste ned logger når som helst fra Min konto → Logger

GET /v1/logs/download

Querystring-parameterTypeBeskrivelse
domainNeiString (FQDN)Filtrer logger etter fullt kvalifisert domene ("FQDN"). Hvis du ikke oppgir dette, vil alle logger på tvers av alle domener bli hentet.
qNeistringSøk etter logger etter e-post, domene, aliasnavn, IP-adresse eller dato (M/Y, M/D/YY, M-D, M-D-YY, eller M.D.YY format).

Eksempel forespørsel:

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

Eksempel Cron-jobb (ved midnatt hver dag):

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

Merk at du kan bruke tjenester som f.eks Crontab.guru for å validere syntaksen for cron jobbuttrykk.

Eksempel Cron-jobb (ved midnatt hver dag og med logger for forrige dag):

For 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

For 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

Opprett konto

POST /v1/account

KroppsparameterTypeBeskrivelse
emailJaStreng (e-post)Epostadresse
passwordJastringPassord

Eksempel forespørsel:

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

Hent konto

GET /v1/account

Eksempel forespørsel:

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

Oppdater konto

PUT /v1/account

KroppsparameterTypeBeskrivelse
emailNeiStreng (e-post)Epostadresse
given_nameNeistringFornavn
family_nameNeistringEtternavn
avatar_urlNeiStreng (URL)Link til avatarbilde

Eksempel forespørsel:

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

Sørg for at du har fulgt oppsettinstruksjonene for domenet ditt. Disse instruksjonene finner du på Min konto → Domener → Innstillinger → Utgående SMTP-konfigurasjon. Du må sørge for oppsett av DKIM, Return-Path og DMARC for å sende utgående SMTP med domenet ditt.

List e-poster

Merk at dette endepunktet ikke returnerer en allerede opprettet e-post message, headers, accepted, eller rejectedErrors egenskaper.

For å returnere disse egenskapene og deres verdier, vennligst bruk Hent e-post endepunkt med en e-post-ID.

Dette endepunktet vil komme tilbake på det meste 50 resultater om gangen. Hvis du vil spørre etter flere sider, legg til ?page=NUMBER hvor NUMBER er et heltall, f.eks. ?page=1.

GET /v1/emails

Querystring-parameterTypeBeskrivelse
qNeiString (RegExp støttes)Søk etter e-poster etter metadata
domainNeiString (RegExp støttes)Søk etter e-poster etter domenenavn
pageNeiAntallSide for å returnere resultater (standard er 1)
`grenseNeiAntallAntall resultater per side som skal returneres (standard er 50 – maks er 50 og minimum er 10)

Eksempel forespørsel:

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

Opprett e-post

Vår API for å lage en e-post er inspirert av og utnytter Nodemailers meldingsalternativkonfigurasjon. Vennligst utsett til Nodemailer-meldingskonfigurasjon for alle kroppsparametere nedenfor.

Merk at med unntak av envelope og dkim (siden vi angir disse automatisk for deg), støtter vi alle Nodemailer-alternativer. Vi setter automatisk disableFileAccess og disableUrlAccess alternativer til true av sikkerhetshensyn.

Du bør enten passere enkeltalternativet raw med hele e-posten din inkludert overskrifter eller passere individuelle kroppsparameteralternativer nedenfor.

POST /v1/emails

KroppsparameterTypeBeskrivelse
fromNeiStreng (e-post)E-postadressen til avsenderen (må eksistere som et alias for domenet).
toNeiString eller ArrayKommaseparert liste eller en rekke mottakere for "Til"-overskriften.
ccNeiString eller ArrayKommaseparert liste eller en rekke mottakere for "Cc"-overskriften.
bccNeiString eller ArrayKommadelt liste eller en rekke mottakere for "Blindkopi"-overskriften.
subjectNeistringEmnet for e-posten.
textNeiString eller bufferKlartekstversjonen av meldingen.
htmlNeiString eller bufferHTML-versjonen av meldingen.
attachmentsNeiArrayEn rekke vedleggsobjekter (se Nodemailers vanlige felt).
senderNeistringE-postadressen for "Avsender"-overskriften (se Nodemailers mer avanserte felt).
replyToNeistringE-postadressen for "Svar til"-overskriften.
inReplyToNeistringMeldings-ID-en meldingen er et svar på.
referencesNeiString eller ArrayMellomromseparert liste eller en rekke meldings-ID-er.
attachDataUrlsNeibooleanHvis true så konverterer data: bilder i HTML-innholdet i meldingen til innebygde vedlegg.
watchHtmlNeistringEn Apple Watch-spesifikk HTML-versjon av meldingen (ifølge Nodemailer-dokumentene, de nyeste klokkene krever ikke at dette stilles inn).
ampNeistringEn AMP4EMAIL-spesifikk HTML-versjon av meldingen (se Nodemailers eksempel).
icalEventNeiGjenstandEn iCalendar-hendelse å bruke som et alternativt meldingsinnhold (se Nodemailers kalenderhendelser).
alternativesNeiArrayEn rekke alternativt meldingsinnhold (se Nodemailers alternative innhold).
encodingNeistringKoding for tekst- og HTML-strengene (standard til "utf-8", men støtter "hex" og "base64" kodingsverdier også).
rawNeiString eller bufferEn tilpasset generert RFC822-formatert melding som skal brukes (i stedet for en som er generert av Nodemailer – se Nodemailers egendefinerte kilde).
textEncodingNeistringKoding som er tvunget til å brukes for tekstverdier (enten "quoted-printable" eller "base64"). Standardverdien er den nærmeste verdien som er oppdaget (for ASCII-bruk "quoted-printable").
priorityNeistringPrioritetsnivå for e-posten (kan enten være "high", "normal" (standard), eller "low"). Merk at en verdi på "normal" angir ikke en prioritert overskrift (dette er standard oppførsel). Hvis en verdi på "high" eller "low" er satt, deretter X-Priority, X-MSMail-Priority, og Importance overskrifter vil bli satt tilsvarende.
headersNeiObjekt eller ArrayEt objekt eller en rekke ekstra overskriftsfelt å angi (se Nodemailers egendefinerte overskrifter).
messageIdNeistringEn valgfri Message-ID-verdi for "Message-ID"-overskriften (en standardverdi opprettes automatisk hvis den ikke er angitt – merk at verdien skal følge RFC2822-spesifikasjonen).
dateNeiString eller datoEn valgfri Dato-verdi som vil bli brukt hvis Date-overskriften mangler etter parsing, ellers vil gjeldende UTC-streng bli brukt hvis den ikke er angitt. Datooverskriften kan ikke være mer enn 30 dager før gjeldende tid.
listNeiGjenstandEt valgfritt objekt av List-* overskrifter (se Nodemailers listeoverskrifter).

Eksempel forespørsel:

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 forespørsel:

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

Hent e-post

GET /v1/emails/:id

Eksempel forespørsel:

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

Slett e-post

Sletting av e-post vil sette statusen til "rejected" (og senere ikke behandle det i køen) hvis og bare hvis gjeldende status er en av "pending", "queued", eller "deferred". Vi kan fjerne e-poster automatisk etter 30 dager etter at de ble opprettet og/eller sendt – derfor bør du beholde en kopi av utgående SMTP-e-poster i klienten, databasen eller applikasjonen din. Du kan referere til vår e-post-ID-verdi i databasen din om ønskelig – denne verdien returneres fra begge Opprett e-post og Hent e-post endepunkter.

DELETE /v1/emails/:id

Eksempel forespørsel:

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

Tips: Domeneendepunkter med et domenenavn /v1/domains/:domain_name siden deres bane kan byttes ut med et domenes ID :domain_id. Dette betyr at du kan referere til domenet ved enten dets name eller id verdi.

Liste domener

GET /v1/domains

Querystring-parameterTypeBeskrivelse
qNeiString (RegExp støttes)Søk etter domener etter navn
nameNeiString (RegExp støttes)Søk etter domener etter navn

Eksempel forespørsel:

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

Opprett domene

POST /v1/domains

KroppsparameterTypeBeskrivelse
domainJaStreng (FQDN eller IP)Fullt kvalifisert domenenavn ("FQDN") eller IP-adresse
planNeiStreng (tallbar)Plantype (må være "free", "enhanced_protection", eller "team", er standard til "free" eller brukerens gjeldende betalte plan hvis på en)
catchallNeiStreng (avgrenset e-postadresse) eller boolskOpprett et standard oppsamlingsalias, standard til true (hvis true den vil bruke API-brukerens e-postadresse som mottaker, og hvis false ingen catch-all vil bli opprettet). Hvis en streng sendes, er det en avgrenset liste over e-postadresser som skal brukes som mottakere (atskilt med linjeskift, mellomrom og/eller komma)
has_adult_content_protectionNeibooleanHvorvidt du skal aktivere Spam Scanner beskyttelse mot voksent innhold på dette domenet
has_phishing_protectionNeibooleanOm du skal aktivere nettfiskingsbeskyttelse for spamskanner på dette domenet
has_executable_protectionNeibooleanHvorvidt du skal aktivere Spam Scanner kjørbar beskyttelse på dette domenet
has_virus_protectionNeibooleanOm du skal aktivere Spam Scanner-virusbeskyttelse på dette domenet
has_recipient_verificationNeibooleanGlobalt domene standard for om aliasmottakere skal kreve å klikke på en e-postbekreftelseslenke for at e-poster skal strømme gjennom
retention_daysNeiAntallHeltall mellom 0 og 30 som tilsvarer antall oppbevaringsdager for å lagre utgående SMTP-e-poster når de er levert eller permanent feil. Standard til 0, som betyr at utgående SMTP-e-poster slettes og fjernes umiddelbart for din sikkerhet.

Eksempel forespørsel:

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

Hent domenet

GET /v1/domains/example.com

Eksempel forespørsel:

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

Bekreft domeneregistreringer

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

Eksempel forespørsel:

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

Oppdater domenet

PUT /v1/domains/example.com

KroppsparameterTypeBeskrivelse
smtp_portNeiStreng eller nummerEgendefinert port for å konfigurere for SMTP-videresending (standard er "25")
has_adult_content_protectionNeibooleanHvorvidt du skal aktivere Spam Scanner beskyttelse mot voksent innhold på dette domenet
has_phishing_protectionNeibooleanOm du skal aktivere nettfiskingsbeskyttelse for spamskanner på dette domenet
has_executable_protectionNeibooleanHvorvidt du skal aktivere Spam Scanner kjørbar beskyttelse på dette domenet
has_virus_protectionNeibooleanOm du skal aktivere Spam Scanner-virusbeskyttelse på dette domenet
has_recipient_verificationNeibooleanGlobalt domene standard for om aliasmottakere skal kreve å klikke på en e-postbekreftelseslenke for at e-poster skal strømme gjennom
retention_daysNeiAntallHeltall mellom 0 og 30 som tilsvarer antall oppbevaringsdager for å lagre utgående SMTP-e-poster når de er levert eller permanent feil. Standard til 0, som betyr at utgående SMTP-e-poster slettes og fjernes umiddelbart for din sikkerhet.

Eksempel forespørsel:

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

Slett domenet

DELETE /v1/domains/:domain_name

Eksempel forespørsel:

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

Godta domeneinvitasjon

GET /v1/domains/:domain_name/invites

Eksempel forespørsel:

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

Opprett domeneinvitasjon

POST /v1/domains/example.com/invites

KroppsparameterTypeBeskrivelse
emailJaStreng (e-post)E-postadresse for å invitere til domenemedlemmelisten
groupJaStreng (tallbar)Gruppe for å legge brukeren til domenemedlemskapet med (kan være en av "admin" eller "user")

Eksempel forespørsel:

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

Fjern domeneinvitasjon

DELETE /v1/domains/:domain_name/invites

KroppsparameterTypeBeskrivelse
emailJaStreng (e-post)E-postadresse du vil fjerne fra listen over domenemedlemmer

Eksempel forespørsel:

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

Oppdater domenemedlem

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

KroppsparameterTypeBeskrivelse
groupJaStreng (tallbar)Gruppe å oppdatere brukeren til domenemedlemskapet med (kan være en av "admin" eller "user")

Eksempel forespørsel:

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

Fjern domenemedlem

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

Eksempel forespørsel:

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

List opp domenealiaser

GET /v1/domains/example.com/aliases

Querystring-parameterTypeBeskrivelse
qNeiString (RegExp støttes)Søk etter aliaser i et domene etter navn, etikett eller mottaker
nameNeiString (RegExp støttes)Søk etter aliaser i et domene etter navn
recipientNeiString (RegExp støttes)Søk etter aliaser i et domene etter mottaker

Eksempel forespørsel:

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

Opprett nytt domenealias

POST /v1/domains/example.com/aliases

KroppsparameterTypeBeskrivelse
nameNeistringAliasnavn (hvis det ikke er oppgitt eller tomt, genereres et tilfeldig alias)
recipientsNeiString eller ArrayListe over mottakere (må være linjeskift/mellomrom/kommaseparert streng eller matrise med gyldige e-postadresser, fullt kvalifiserte domenenavn ("FQDN"), IP-adresser og/eller webhook-URL-er – og hvis de ikke er oppgitt eller er tomme Array, vil brukerens e-post som sender API-forespørselen bli satt som mottaker)
descriptionNeistringAlias beskrivelse
labelsNeiString eller ArrayListe over etiketter (må være linjeskift / mellomrom / komma separert streng eller matrise)
has_recipient_verificationNeibooleanKrev at mottakerne klikker på en e-postbekreftelseslenke for at e-postene skal strømme gjennom (standardinnstillingen for domenet hvis den ikke er eksplisitt angitt i forespørselens tekst)
is_enabledNeibooleanOm dette aliaset skal aktiveres eller deaktiveres (hvis det er deaktivert, vil e-poster ikke bli rutet noe sted, men returnere vellykkede statuskoder). Hvis en verdi passeres, konverteres den til en boolsk vha boolsk)
has_imapNeibooleanOm du skal aktivere eller deaktivere IMAP-lagring for dette aliaset (hvis deaktivert, vil innkommende e-poster som mottas ikke lagres til IMAP-lagring. Hvis en verdi passeres, konverteres den til en boolsk vha boolsk)
has_pgpNeibooleanOm du skal aktivere eller deaktivere OpenPGP-kryptering til IMAP/POP3-kryptert e-postlagring bruker aliaset public_key.
public_keyNeistringOpenPGP offentlig nøkkel i ASCII Armor-format (klikk her for å se et eksempel; f.eks. GPG-nøkkel for support@forwardemail.net). Dette gjelder kun hvis du har has_pgp satt til true. Lær mer om ende-til-ende-kryptering i våre vanlige spørsmål.

Eksempel forespørsel:

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

Hent domenealias

Du kan hente et domenealias ved enten dets id eller dens name verdi.

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

Eksempel forespørsel:

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

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

Eksempel forespørsel:

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

Oppdater domenealias

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

KroppsparameterTypeBeskrivelse
nameNeistringAlias navn
recipientsNeiString eller ArrayListe over mottakere (må være linjeskift / mellomrom / komma-separert streng eller utvalg av gyldige e-postadresser, fullt kvalifiserte domenenavn ("FQDN"), IP-adresser og / eller nettadresser til nettkroken)
descriptionNeistringAlias beskrivelse
labelsNeiString eller ArrayListe over etiketter (må være linjeskift / mellomrom / komma separert streng eller matrise)
has_recipient_verificationNeibooleanKrev at mottakerne klikker på en e-postbekreftelseslenke for at e-postene skal strømme gjennom (standardinnstillingen for domenet hvis den ikke er eksplisitt angitt i forespørselens tekst)
is_enabledNeibooleanOm dette aliaset skal aktiveres eller deaktiveres (hvis det er deaktivert, vil e-poster ikke bli rutet noe sted, men returnere vellykkede statuskoder)
has_imapNeibooleanOm du skal aktivere eller deaktivere IMAP-lagring for dette aliaset (hvis deaktivert, vil innkommende e-poster som mottas ikke lagres til IMAP-lagring. Hvis en verdi passeres, konverteres den til en boolsk vha boolsk)
has_pgpNeibooleanOm du skal aktivere eller deaktivere OpenPGP-kryptering til IMAP/POP3-kryptert e-postlagring bruker aliaset public_key.
public_keyNeistringOpenPGP offentlig nøkkel i ASCII Armor-format (klikk her for å se et eksempel; f.eks. GPG-nøkkel for support@forwardemail.net). Dette gjelder kun hvis du har has_pgp satt til true. Lær mer om ende-til-ende-kryptering i våre vanlige spørsmål.

Eksempel forespørsel:

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

Slett domenealias

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

Eksempel forespørsel:

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