Przejdź do dokumentacji
API

Utwórz skrzynkę

Wydaje adres i zwraca token, który go czyta. Każde pole jest opcjonalne, łącznie z treścią żądania.

POSTapi.openemail.uk/temp-mail/inboxes

Uruchamia prawdziwe wywołanie na twojej przestrzeni roboczej, twoim własnym kluczem.

POST /temp-mail/inboxes

Wydaje adres i zwraca token, który go czyta. Każde pole jest opcjonalne, łącznie z treścią żądania.

Bez poświadczeń

shell
export OE=https://api.openemail.uk

Nie wysyłaj nagłówka Authorization w ogóle. To jedyny zasób w tym API, który odpowiada bez niego. Jest zarejestrowany powyżej sprawdzania klucza, zamiast mieć własny zakres, bo oferowany jest tu adres dla kogoś, kto żadnego nie ma, a proszenie najpierw o klucz zrobiłoby z tego formularz kontaktowy w przebraniu narzędzia.

Przykład

Puste ciało żądania jest poprawne i jest przypadkiem typowym: wygenerowana część lokalna na domenie wybranej z puli, dzierżawa na godzinę.

curl
curl -X POST "$OE/temp-mail/inboxes" -H "Content-Type: application/json" \  -d '{ "localPart": "octopus-signup", "ttlMinutes": 120 }'
Odpowiedź
{  "object": "temp_inbox",  "id": "tinb_9c2f41ab7d3e4c118a0f5d72",  "address": "[email protected]",  "domain": "freemailaddress.com",  "createdAt": "2026-09-01T10:00:00.000Z",  "expiresAt": "2026-09-01T12:00:00.000Z",  "extensionsLeft": 22,  "messageCount": 0,  "messageLimit": 50,  "lastMessageAt": null,  "token": "oe_inbox_kQ8v…"}

201 i jedyna odpowiedź w całym API, która niesie token. Zapisz go, zanim zrobisz z tym adresem cokolwiek innego.

Wygenerowana część lokalna to dwanaście znaków z alfabetu bez samogłosek i bez znaków mylących, więc nie da się nią nic przeliterować i przeżywa odczytanie z ekranu.

Wszystko, co może zostać odrzucone, jest odrzucane z nazwy, a nie korygowane: 422 unknown_domain, invalid_address, reserved_address albo invalid_parameter dla ttlMinutes spoza zakresu 1–1440; 409 address_taken dla części lokalnej już zajętej; 429 too_many_inboxes przy pułapie wydawania; 503 temp_mail_unavailable na instalacji bez żadnej domeny w puli.

Parametry

Treść żądania

domainstring
Jedna z `GET /temp-mail/domains`. Pomiń ją, a pula wybierze losowo, zamiast zapełniać pierwszą domenę. Jedna domena przyjmująca każdą jednorazową rejestrację w internecie zapracowuje na odpowiadającą temu reputację, a tę reputację dzieli każdy adres na niej. Domena spoza puli jest odrzucana z nazwy (422 `unknown_domain`), a nie po cichu podmieniana, bo adres, o który prosiłeś, byłby już skopiowany.
localPartstring
Część przed @, jeśli chcesz ją wybrać: od 3 do 32 znaków — litery, cyfry, kropki, myślniki i podkreślenia — zaczynająca się i kończąca literą lub cyfrą. Węższe, niż pozwala RFC 5321, bo ten ciąg trafia do ścieżki URL, nagłówka `To:` i strony HTML. `+` jest wykluczony, bo subadresowanie jest zwijane przy wejściu, więc `alice+bob` byłoby nazwą, pod którą i tak nie dałoby się ciebie zastać. Zajęte nazwy odpowiadają 409 `address_taken`, co obejmuje dwa przypadki: trzyma ją inny odwiedzający (albo trzymał w ciągu ostatniego tygodnia, gdy adres wciąż jest wycofany z obiegu) oraz właściciel domeny utworzył ją jako prawdziwy adres, co jest odrzucane tym samym kodem, bo poczta do niego trafia do niego, a nigdy do ciebie. `postmaster` i pozostałe zastrzeżone odpowiadają 422 `reserved_address`.
ttlMinutesnumber
Jak długa ma być dzierżawa, w minutach, od 1 do 1440. Domyślnie 60. Cokolwiek spoza tego zakresu odpowiada 422 `invalid_parameter` ze wskazaniem pola, zamiast zostać po cichu skorygowane. Wygaśnięcie, o które prosiłeś, byłoby już komuś pokazane. Te 24 godziny liczą się od utworzenia, więc każda godzina wzięta z góry to przedłużenie, którego nie da się wydać później: `ttlMinutes: 120` wraca z 22 z nich, a 1440 z zerem.

Odpowiedź: temp_inbox plus token

idstring
Identyfikator skrzynki, `tinb_` i dwadzieścia cztery znaki szesnastkowe. Trafia do ścieżki każdego innego wywołania i nie jest sekretem. Sekretem jest token.
addressstring
Adres do przekazania dalej. Poczta zaadresowana na `that+anything@` też do niego dociera, bo subadresowanie jest zwijane przed wyszukaniem.
domainstring
Domena z puli, na której jest adres, wystawiona osobno, żeby klient nie musiał parsować adresu, by ją pokazać.
createdAtstring
ISO 8601. Limit 24 godzin liczy się od tego, a nie od ostatniego przedłużenia.
expiresAtstring
ISO 8601. Po nim token natychmiast przestaje uwierzytelniać, a sprzątanie usuwa pocztę przy kolejnym przebiegu.
extensionsLeftnumber
Ile razy `extend` faktycznie dokupi jeszcze czas, licząc oba pułapy: 23 przedłużenia, na które pozwala dzierżawa, i 24 godziny od `createdAt`, poza które nigdy nie wyjdzie — zależnie od tego, co nastąpi pierwsze. Skrzynka utworzona z `ttlMinutes: 1440` zgłasza 0, nie wydawszy niczego. Zero oznacza, że wywołanie odpowiedziałoby 409, i na tym klient powinien wygaszać przycisk, zamiast odkrywać to przez naciśnięcie.
messageCountnumber
Wiadomości, które ta skrzynka PRZYJĘŁA, a nie ile ich widać. Nie maleje, gdy którąś usuniesz: pułap liczy przyjścia, więc usuwanie zwalnia miejsce w magazynie, ale nie w limicie.
messageLimitnumber
Pułap, wysyłany przy każdej skrzynce, żeby klient mógł napisać „pełna” bez zaszywania naszej stałej.
lastMessageAtstring | null
Kiedy ostatnio przyszła poczta, ISO 8601, albo null, jeśli żadna nie przyszła. Null na świeżej skrzynce czyta się zupełnie inaczej niż cisza dla kogoś, kto czeka od dwóch minut.
tokenstring
Poświadczenie, w tej odpowiedzi i w żadnej innej. `oe_inbox_` i 43 znaki base64url; wiersz przechowuje tylko kluczowany skrót, więc nie da się go ponownie odczytać ani odzyskać.

Każda inna odpowiedź o skrzynce (pobranie, przedłużenie) to ten sam obiekt bez token.