- Strona wyszukiwania
- Spis treści
Interfejs API poczty e-mail
Biblioteki
W tej chwili nie wydaliśmy jeszcze żadnych wrapperów API, ale planujemy to zrobić w najbliższej przyszłości. Wysłać e-maila do api@forwardemail.net jeśli chcesz być powiadamiany o wydaniu wrappera API określonego języka programowania. W międzyczasie możesz użyć tych zalecanych bibliotek żądań HTTP w swojej aplikacji lub po prostu użyć kędzior jak w poniższych przykładach.
Język | Biblioteka |
---|---|
Rubin | Faradaya |
Pyton | upraszanie |
Jawa | OkHttp |
PHP | chlać |
JavaScript | superagent (jesteśmy konserwatorami) |
Node.js | superagent (jesteśmy konserwatorami) |
Udać się | netto / http |
.NET | ResztaSharp |
Podstawowy identyfikator URI
Bieżąca ścieżka podstawowego identyfikatora URI HTTP to: https://api.forwardemail.net
.
Poświadczenie
Wszystkie punkty końcowe wymagają Twojego Klucz API być ustawionym jako wartość „nazwa użytkownika” żądania Podstawowa autoryzacja nagłówek. Nie martw się – poniżej znajdziesz przykłady, jeśli nie masz pewności, co to jest.
Błędy
Jeśli wystąpią jakiekolwiek błędy, treść odpowiedzi żądania API będzie zawierać szczegółowy komunikat o błędzie.
Kod | Imię |
---|---|
200 | OK |
400 | Zła prośba |
401 | Nieautoryzowany |
403 | Zabroniony |
404 | Nie znaleziono |
429 | Zbyt dużo próśb |
500 | Wewnętrzny błąd serwera |
501 | Nie zaimplementowano |
502 | zła Brama |
503 | serwis niedostępny |
504 | Limit czasu bramki |
Lokalizacja
Nasza usługa jest tłumaczona na ponad 25 różnych języków. Wszystkie komunikaty odpowiedzi API są tłumaczone na ostatnie wykryte ustawienia regionalne użytkownika zgłaszającego żądanie API. Możesz to zmienić, przekazując niestandardowy Accept-Language
nagłówek. Wypróbuj go, korzystając z menu rozwijanego języka na dole tej strony.
Paginacja
Jeśli chcesz otrzymać powiadomienie o dostępności stronicowania, napisz e-mail api@forwardemail.net.
Konto
Utwórz konto
POST /v1/account
Parametr ciała | wymagany | Rodzaj | Opis |
---|---|---|---|
email | tak | Ciąg (e-mail) | Adres e-mail |
password | tak | Strunowy | Hasło |
Przykładowe zapytanie:
curl -X POST https://api.forwardemail.net/v1/account \
-u API_TOKEN: \
-d "email=user%40gmail.com"
Odzyskać konto
GET /v1/account
Przykładowe zapytanie:
curl https://api.forwardemail.net/v1/account \
-u API_TOKEN:
Zaktualizuj konto
PUT /v1/account
Parametr ciała | wymagany | Rodzaj | Opis |
---|---|---|---|
email | Nie | Ciąg (e-mail) | Adres e-mail |
given_name | Nie | Strunowy | Imię |
family_name | Nie | Strunowy | Nazwisko |
avatar_url | Nie | Ciąg (URL) | Link do obrazu awatara |
Przykładowe zapytanie:
curl -X PUT https://api.forwardemail.net/v1/account \
-u API_TOKEN: \
-d "email=user%40gmail.com"
e-maile
Upewnij się, że postępujesz zgodnie z instrukcjami konfiguracji dla swojej domeny. Instrukcje te można znaleźć pod adresem Moje konto → Domeny → Ustawienia → Konfiguracja wychodzącego SMTP. Musisz zapewnić konfigurację DKIM, Return-Path i DMARC do wysyłania wychodzącego SMTP w swojej domenie.
Lista e-maili
Pamiętaj, że ten punkt końcowy nie zwraca już utworzonych wiadomości e-mail message
, headers
, accepted
, ani rejectedErrors
nieruchomości.
Aby zwrócić te właściwości i ich wartości, użyj metody Pobierz e-mail punkt końcowy z identyfikatorem e-mail.
Ten punkt końcowy powróci co najwyżej 50
wyniki na raz. Jeśli chcesz zapytać o wiele stron, dołącz ?page=NUMBER
Gdzie NUMBER
jest liczbą całkowitą, np. ?page=1
.
GET /v1/emails
Parametr Querystring | wymagany | Rodzaj | Opis |
---|---|---|---|
q | Nie | Ciąg (obsługiwany RegExp) | Wyszukiwanie e-maili według metadanych |
domain | Nie | Ciąg (obsługiwany RegExp) | Wyszukaj e-maile według nazwy domeny |
page | Nie | Numer | Strona do zwrotu wyników (domyślnie jest to 1 ) |
limit | Nie | Numer | Liczba wyników na stronę do zwrócenia (domyślnie to 50 – jest maks 50 i minimalne jest 10 ) |
Przykładowe zapytanie:
curl https://api.forwardemail.net/v1/emails \
-u API_TOKEN:
Utwórz e-mail
Nasz interfejs API do tworzenia wiadomości e-mail jest inspirowany konfiguracją opcji wiadomości Nodemailera i wykorzystuje ją. Proszę odłożyć na Konfiguracja wiadomości Nodemailer dla wszystkich parametrów ciała poniżej.
Zauważ, że z wyjątkiem envelope
oraz dkim
(ponieważ ustawiliśmy je automatycznie dla Ciebie), obsługujemy wszystkie opcje Nodemailer. Ustawiliśmy automatycznie disableFileAccess
oraz disableUrlAccess
opcje do true
dla celów bezpieczeństwa.
Powinieneś przekazać pojedynczą opcję of raw
z nieprzetworzonym pełnym e-mailem, w tym nagłówkami lub przekaż poniżej poszczególne opcje parametrów ciała.
POST /v1/emails
Parametr ciała | wymagany | Rodzaj | Opis |
---|---|---|---|
from | Nie | Ciąg (e-mail) | Adres e-mail nadawcy (musi istnieć jako alias domeny). |
to | Nie | Łańcuch lub tablica | Lista oddzielona przecinkami lub tablica odbiorców dla nagłówka „Do”. |
cc | Nie | Łańcuch lub tablica | Lista oddzielona przecinkami lub tablica odbiorców dla nagłówka „DW”. |
bcc | Nie | Łańcuch lub tablica | Lista oddzielonych przecinkami lub tablica odbiorców dla nagłówka „UDW”. |
subject | Nie | Strunowy | Temat wiadomości e-mail. |
text | Nie | Ciąg lub bufor | Wersja wiadomości w postaci zwykłego tekstu. |
html | Nie | Ciąg lub bufor | Wersja HTML wiadomości. |
attachments | Nie | Szyk | Tablica obiektów załączników (zob Wspólne pola Nodemailera). |
sender | Nie | Strunowy | Adres e-mail dla nagłówka „Sender” (patrz Bardziej zaawansowane pola Nodemailera). |
replyTo | Nie | Strunowy | Adres e-mail dla nagłówka „Odpowiedz do”. |
inReplyTo | Nie | Strunowy | Message-ID, na który odpowiada wiadomość. |
references | Nie | Łańcuch lub tablica | Lista rozdzielana spacjami lub tablica identyfikatorów komunikatów. |
attachDataUrls | Nie | Boole'a | Jeśli true następnie konwertuje data: obrazy w treści HTML wiadomości do osadzonych załączników. |
watchHtml | Nie | Strunowy | Wersja HTML wiadomości specyficzna dla zegarka Apple Watch (zgodnie z dokumentacją Nodemailera, najnowsze zegarki nie wymagają tego ustawienia). |
amp | Nie | Strunowy | Wersja HTML wiadomości specyficzna dla AMP4EMAIL (patrz Przykład Nodemailera). |
icalEvent | Nie | Obiekt | Zdarzenie iCalendar do wykorzystania jako alternatywna treść wiadomości (patrz Wydarzenia w kalendarzu Nodemailera). |
alternatives | Nie | Szyk | Tablica alternatywnej treści wiadomości (patrz Alternatywna zawartość Nodemailera). |
encoding | Nie | Strunowy | Kodowanie tekstu i ciągów HTML (domyślnie "utf-8" , ale popiera "hex" oraz "base64" również kodowanie wartości). |
raw | Nie | Ciąg lub bufor | Niestandardowo wygenerowana wiadomość w formacie RFC822 do użycia (zamiast wiadomości generowanej przez Nodemailer – patrz Niestandardowe źródło Nodemailera). |
textEncoding | Nie | Strunowy | Kodowanie, którego użycie jest wymuszone dla wartości tekstowych (albo "quoted-printable" lub "base64" ). Wartością domyślną jest najbliższa wykryta wartość (do użytku ASCII "quoted-printable" ). |
priority | Nie | Strunowy | Poziom priorytetu dla wiadomości e-mail (może być dowolny "high" , "normal" (domyślnie) lub "low" ). Zauważ, że wartość "normal" nie ustawia nagłówka priorytetu (jest to zachowanie domyślne). Jeśli wartość "high" lub "low" jest ustawiony, a następnie X-Priority , X-MSMail-Priority , oraz Importance nagłówki zostanie odpowiednio ustawiony. |
headers | Nie | Obiekt lub tablica | Obiekt lub tablica dodatkowych pól nagłówka do ustawienia (patrz Niestandardowe nagłówki Nodemailera). |
messageId | Nie | Strunowy | Opcjonalna wartość Message-ID dla nagłówka „Message-ID” (wartość domyślna zostanie utworzona automatycznie, jeśli nie zostanie ustawiona – należy pamiętać, że wartość powinna stosować się do specyfikacji RFC2822). |
date | Nie | Ciąg lub data | Opcjonalna wartość daty, która zostanie użyta, jeśli po przeanalizowaniu brakuje nagłówka daty. W przeciwnym razie zostanie użyty bieżący ciąg czasu UTC, jeśli nie zostanie ustawiony. Nagłówek daty nie może być większy niż 30 dni przed bieżącą godziną. |
list | Nie | Obiekt | Opcjonalny obiekt List-* nagłówki (zob Nagłówki list Nodemailera). |
Przykładowe zapytanie:
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"
Przykładowe zapytanie:
curl -X POST https://api.forwardemail.net/v1/emails \
-u API_TOKEN: \
-d "raw=`cat file.eml`"
Pobierz e-mail
GET /v1/emails/:id
Przykładowe zapytanie:
curl https://api.forwardemail.net/v1/emails/:id \
-u API_TOKEN:
Usuń e-mail
Usunięcie wiadomości e-mail spowoduje ustawienie stanu na "rejected"
(a następnie nie przetwarzać go w kolejce) wtedy i tylko wtedy, gdy bieżący status to jeden z "pending"
, "queued"
, lub "deferred"
. Możemy usuwać wiadomości e-mail automatycznie po 30 dniach od ich utworzenia i/lub wysłania — dlatego należy przechowywać kopię wychodzących wiadomości e-mail SMTP w swoim kliencie, bazie danych lub aplikacji. W razie potrzeby możesz odwołać się do naszej wartości identyfikatora e-mail w swojej bazie danych — ta wartość jest zwracana z obu Utwórz e-mail oraz Pobierz e-mail punkty końcowe.
DELETE /v1/emails/:id
Przykładowe zapytanie:
curl -X DELETE https://api.forwardemail.net/v1/emails/:id \
-u API_TOKEN:
Domeny
/v1/domains/:domain_name
ponieważ ich ścieżka jest wymienna z identyfikatorem domeny :domain_id
. Oznacza to, że możesz odwoływać się do domeny przez jej name
lub id
wartość.
Lista domen
GET /v1/domains
Parametr Querystring | wymagany | Rodzaj | Opis |
---|---|---|---|
q | Nie | Ciąg (obsługiwany RegExp) | Wyszukaj domeny według nazwy |
name | Nie | Ciąg (obsługiwany RegExp) | Wyszukaj domeny według nazwy |
Przykładowe zapytanie:
curl https://api.forwardemail.net/v1/domains \
-u API_TOKEN:
Utwórz domenę
POST /v1/domains
Parametr ciała | wymagany | Rodzaj | Opis |
---|---|---|---|
domain | tak | Ciąg (FQDN lub IP) | W pełni kwalifikowana nazwa domeny („FQDN”) lub adres IP |
plan | Nie | Ciąg (wyliczalny) | Typ planu (musi być "free" , "enhanced_protection" , lub "team" , domyślnie "free" lub aktualny płatny abonament użytkownika, jeśli na jednym) |
catchall | Nie | Ciąg (rozdzielane adresy e-mail) lub wartość logiczna | Utwórz domyślny alias typu catch-all, domyślnie true (jeśli true użyje adresu e-mail użytkownika API jako odbiorcy, a jeśli false nie zostanie utworzony żaden catch-all). Jeśli zostanie przekazany ciąg, to jest to rozdzielona lista adresów e-mail, które mają być używane jako odbiorcy (oddzielone podziałem wiersza, spacją i/lub przecinkiem) |
has_adult_content_protection | Nie | Boole'a | Czy włączyć w tej domenie ochronę treści dla dorosłych w Skanerze spamu |
has_phishing_protection | Nie | Boole'a | Czy włączyć ochronę przed phishingiem Skanera spamu w tej domenie |
has_executable_protection | Nie | Boole'a | Czy włączyć ochronę plików wykonywalnych Skanera spamu w tej domenie |
has_virus_protection | Nie | Boole'a | Czy włączyć ochronę antywirusową Skanera spamu w tej domenie |
has_recipient_verification | Nie | Boole'a | Domyślna domena globalna określająca, czy wymagać od odbiorców aliasów kliknięcia linku weryfikacyjnego adresu e-mail w celu przepłynięcia wiadomości e-mail |
Przykładowe zapytanie:
curl -X POST https://api.forwardemail.net/v1/domains \
-u API_TOKEN: \
-d domain=example.com \
-d plan=free
Odzyskaj domenę
GET /v1/domains/example.com
Przykładowe zapytanie:
curl https://api.forwardemail.net/v1/domains/example.com \
-u API_TOKEN:
Sprawdź rekordy domeny
GET /v1/domains/example.com/verify-records
Przykładowe zapytanie:
curl https://api.forwardemail.net/v1/domains/example.com/verify-records \
-u API_TOKEN:
Zaktualizuj domenę
PUT /v1/domains/example.com
Parametr ciała | wymagany | Rodzaj | Opis |
---|---|---|---|
smtp_port | Nie | Ciąg lub liczba | Niestandardowy port do skonfigurowania dla przekazywania SMTP (domyślnie "25" ) |
has_adult_content_protection | Nie | Boole'a | Czy włączyć w tej domenie ochronę treści dla dorosłych w Skanerze spamu |
has_phishing_protection | Nie | Boole'a | Czy włączyć ochronę przed phishingiem Skanera spamu w tej domenie |
has_executable_protection | Nie | Boole'a | Czy włączyć ochronę plików wykonywalnych Skanera spamu w tej domenie |
has_virus_protection | Nie | Boole'a | Czy włączyć ochronę antywirusową Skanera spamu w tej domenie |
has_recipient_verification | Nie | Boole'a | Domyślna domena globalna określająca, czy wymagać od odbiorców aliasów kliknięcia linku weryfikacyjnego adresu e-mail w celu przepłynięcia wiadomości e-mail |
Przykładowe zapytanie:
curl -X PUT https://api.forwardemail.net/v1/domains/example.com \
-u API_TOKEN:
Usuń domenę
DELETE /v1/domains/:domain_name
Przykładowe zapytanie:
curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name \
-u API_TOKEN:
Zaprasza
Zaakceptuj zaproszenie do domeny
GET /v1/domains/:domain_name/invites
Przykładowe zapytanie:
curl https://api.forwardemail.net/v1/domains/:domain_name/invites \
-u API_TOKEN:
Utwórz zaproszenie do domeny
POST /v1/domains/example.com/invites
Parametr ciała | wymagany | Rodzaj | Opis |
---|---|---|---|
email | tak | Ciąg (e-mail) | Adres e-mail do zaproszenia na listę członków domeny |
group | tak | Ciąg (wyliczalny) | Grupa do dodania użytkownika do członkostwa w domenie (może być jedną z "admin" lub "user" ) |
Przykładowe zapytanie:
curl -X POST https://api.forwardemail.net/v1/domains/example.com/invites \
-u API_TOKEN: \
-d "email=user%40gmail.com" \
-d group=admin
Usuń zaproszenie do domeny
DELETE /v1/domains/:domain_name/invites
Parametr ciała | wymagany | Rodzaj | Opis |
---|---|---|---|
email | tak | Ciąg (e-mail) | Adres e-mail do usunięcia z listy członków domeny |
Przykładowe zapytanie:
curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name/invites \
-u API_TOKEN:
Członkowie
Zaktualizuj członka domeny
PUT /v1/domains/example.com/members/:member_id
Parametr ciała | wymagany | Rodzaj | Opis |
---|---|---|---|
group | tak | Ciąg (wyliczalny) | Grupa do aktualizacji użytkownika do członkostwa w domenie (może być jedną z "admin" lub "user" ) |
Przykładowe zapytanie:
curl -X PUT https://api.forwardemail.net/v1/domains/example.com/members/:member_id \
-u API_TOKEN:
Usuń członka domeny
DELETE /v1/domains/:domain_name/members/:member_id
Przykładowe zapytanie:
curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name/members/:member_id \
-u API_TOKEN:
Skróty
Wyświetlanie listy aliasów domen
GET /v1/domains/example.com/aliases
Parametr Querystring | wymagany | Rodzaj | Opis |
---|---|---|---|
q | Nie | Ciąg (obsługiwany RegExp) | Wyszukaj aliasy w domenie według nazwy, etykiety lub odbiorcy |
name | Nie | Ciąg (obsługiwany RegExp) | Wyszukaj aliasy w domenie według nazwy |
recipient | Nie | Ciąg (obsługiwany RegExp) | Wyszukaj aliasy w domenie według odbiorcy |
Przykładowe zapytanie:
curl https://api.forwardemail.net/v1/domains/example.com/aliases \
-u API_TOKEN:
Utwórz nowy alias domeny
POST /v1/domains/example.com/aliases
Parametr ciała | wymagany | Rodzaj | Opis |
---|---|---|---|
name | Nie | Strunowy | Nazwa aliasu (jeśli nie została podana lub jest pusta, generowany jest losowy alias) |
recipients | Nie | Łańcuch lub tablica | Lista odbiorców (musi być rozdzielona podziałem wiersza/spacją/przecinkiem Ciąg lub tablica prawidłowych adresów e-mail, w pełni kwalifikowanych nazw domen („FQDN”), adresów IP i/lub adresów URL elementów webhook — a jeśli nie zostały podane lub są puste Array, a następnie adres e-mail użytkownika wysyłający żądanie API zostanie ustawiony jako odbiorca) |
description | Nie | Strunowy | Opis aliasu |
labels | Nie | Łańcuch lub tablica | Lista etykiet (musi być ciągiem lub tablicą z podziałem wiersza / spacją / przecinkiem) |
has_recipient_verification | Nie | Boole'a | Czy włączyć wymaganie od odbiorców kliknięcia linku weryfikacyjnego wiadomości e-mail w celu przepłynięcia wiadomości e-mail (domyślnie jest to ustawienie domeny, jeśli nie zostało to wyraźnie określone w treści żądania) |
is_enabled | Nie | Boole'a | Czy włączyć, aby wyłączyć ten alias (jeśli jest wyłączony, wiadomości e-mail nie będą kierowane donikąd, ale zwracają pomyślne kody statusu). Domyślnie do true , ale jeśli wartość jest przekazywana, jest konwertowana na wartość logiczną za pomocą wartość logiczna) |
Przykładowe zapytanie:
curl -X POST https://api.forwardemail.net/v1/domains/example.com/aliases \
-u API_TOKEN:
Pobierz alias domeny
Możesz pobrać alias domeny przez jego id
lub jego name
wartość.
GET /v1/domains/:domain_name/aliases/:alias_id
Przykładowe zapytanie:
curl https://api.forwardemail.net/v1/domains/:domain_name/aliases/:alias_id \
-u API_TOKEN:
GET /v1/domains/:domain_name/aliases/:alias_name
Przykładowe zapytanie:
curl https://api.forwardemail.net/v1/domains/:domain_name/aliases/:alias_name \
-u API_TOKEN:
Zaktualizuj alias domeny
PUT /v1/domains/example.com/aliases/:alias_id
Parametr ciała | wymagany | Rodzaj | Opis |
---|---|---|---|
name | Nie | Strunowy | Pseudonim |
recipients | tak | Łańcuch lub tablica | Lista adresatów (musi być oddzielona linią / spacją / przecinkiem Ciąg lub tablica prawidłowych adresów e-mail, w pełni kwalifikowanych nazw domen („FQDN”), adresów IP i / lub adresów URL haka internetowego) |
description | Nie | Strunowy | Opis aliasu |
labels | Nie | Łańcuch lub tablica | Lista etykiet (musi być ciągiem lub tablicą z podziałem wiersza / spacją / przecinkiem) |
has_recipient_verification | Nie | Boole'a | Czy włączyć wymaganie od odbiorców kliknięcia linku weryfikacyjnego wiadomości e-mail w celu przepłynięcia wiadomości e-mail (domyślnie jest to ustawienie domeny, jeśli nie zostało to wyraźnie określone w treści żądania) |
is_enabled | Nie | Boole'a | Określa, czy włączyć tę alias (jeśli wyłączona, wiadomości e-mail nie będą kierowane nigdzie, ale zwracają pomyślne kody stanu) |
Przykładowe zapytanie:
curl -X PUT https://api.forwardemail.net/v1/domains/example.com/aliases/:alias_id \
-u API_TOKEN:
Usuń alias domeny
DELETE /v1/domains/:domain_name/aliases/:alias_id
Przykładowe zapytanie:
curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name/aliases/:alias_id \
-u API_TOKEN: