Przejdź do dokumentacji
API

Zaproś członka

Po adresie e-mail, z rolą i opcjonalnie z adresami oraz całymi domenami, które trafiają do nich po akceptacji.

POSTapi.openemail.uk/members

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

POST /members

Po adresie e-mail, z rolą i opcjonalnie z adresami oraz całymi domenami, które trafiają do nich po akceptacji.

Przykład

Wymaga members:write. Zwraca 202 wraz z zaproszeniem. Nikt nie jest w przestrzeni roboczej, dopóki go nie zaakceptuje. access domyślnie ma wartość member i stosuje się do każdego identyfikatora w addressIds i domainIds.

curl
curl -X POST "$OE/members" -H "$AUTH" -H "Content-Type: application/json" \  -d '{    "email": "[email protected]",    "roleId": "role_2b81de079c1f0a4b7e05d386",    "domainIds": ["93542ff8-2baa-4f2f-841d-5ceaa074ab0d"],    "access": "member"  }'
Odpowiedź
{  "object": "invitation",  "id": "winv_6bb640f5b99e47deb758f1f5",  "email": "[email protected]",  "role": {    "id": "role_2b81de079c1f0a4b7e05d386",    "name": "Support",    "builtin": null  },  "addresses": [],  "domains": [    {      "domainId": "93542ff8-2baa-4f2f-841d-5ceaa074ab0d",      "domain": "acme.com",      "access": "member"    }  ],  "expiresAt": "2026-10-02T14:07:31.000Z",  "delivered": true,  "deliveryError": null,  "createdAt": "2026-09-18T14:07:31.000Z"}

ZAPRASZANI SĄ WSZYSCY. Niezależnie od tego, czy adres ma już konto OpenEmail, odpowiedzią jest zaproszenie i 202, nigdy członek. Nikt nie trafia do przestrzeni roboczej bez akceptacji, a ten endpoint trzyma się tej samej reguły co aplikacja. Ktoś, kto już jest w przestrzeni roboczej, zostaje odrzucony z member_is_owner, 422: zamiast tego zmień to, co może robić, przez PATCH /members/{userId} i wywołania nadające uprawnienia.

Zaproszenie niesie rolę, adresy i całe domeny, które podasz, i nadaje dokładnie je w chwili akceptacji. Wcześniej nie jest nadawane nic. Cała domena obejmuje każdy adres w niej, w tym te utworzone po wysłaniu zaproszenia.

POST, a nie PUT na identyfikatorze użytkownika, ponieważ wywołujący nie zna identyfikatora użytkownika i może zapraszać kogoś, kto nie ma jeszcze konta. Zna adres e-mail.

Poproszenie dwa razy w ciągu dziesięciu minut to invitation_too_soon, 409. Po tym czasie odświeża jedno oczekujące zaproszenie, generuje nowy odnośnik i wycofuje stary, zamiast wysyłać drugie.

delivered: false oznacza, że zaproszenie istnieje, ale e-mail nie opuścił serwera pocztowego. deliveryError mówi, co powiedział serwer. Nic do nich nie dotarło, więc wyślij je ponownie z aplikacji, gdy minie okres karencji.

invitedBy jest celowo zostawiane jako null, a nie przypisywane właścicielowi przestrzeni roboczej. Kolumna zapisuje, która OSOBA kogoś zaprosiła, a klucz API nie jest osobą.

Właściciel przestrzeni roboczej zostaje odrzucony z member_is_owner, 422. Nie jest członkiem i nie można go nim uczynić.