Zaproś członka
Po adresie e-mail, z rolą i opcjonalnie z adresami oraz całymi domenami, które trafiają do nich po akceptacji.
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 -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" }'{ "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ć.