Пригласить участника
По адресу электронной почты, с ролью и, по желанию, с адресами и целыми доменами, которые выдаются в момент принятия приглашения.
Выполняет настоящий запрос в вашем рабочем пространстве, с вашим собственным ключом.
POST /members
По адресу электронной почты, с ролью и, по желанию, с адресами и целыми доменами, которые выдаются в момент принятия приглашения.
Пример
Требует members:write. Возвращает 202 с приглашением. Пока человек не примет его, в рабочем пространстве его нет. access по умолчанию member и применяется к каждому идентификатору в addressIds и 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"}ПРИГЛАШАЮТСЯ ВСЕ. Независимо от того, есть ли уже у адреса аккаунт OpenEmail, ответом будет приглашение и 202, но никогда не участник. Никого не помещают в рабочее пространство без его согласия, и к этому эндпоинту применяется то же правило, что и к приложению. Тому, кто уже состоит в рабочем пространстве, будет отказано с member_is_owner, 422: меняйте его права через PATCH /members/{userId} и вызовы выдачи доступа.
Приглашение несёт в себе роль, адреса и целые домены, которые вы указали, и выдаёт ровно их в момент принятия. До этого не выдаётся ничего. Целый домен покрывает каждый адрес на нём, включая созданные после отправки приглашения.
POST, а не PUT по идентификатору пользователя, потому что вызывающая сторона не знает идентификатора пользователя и может приглашать того, у кого ещё нет аккаунта. Известен только адрес электронной почты.
Повторный запрос в течение десяти минут — это invitation_too_soon, 409. После этого срока единственное действующее приглашение обновляется: выпускается новая ссылка, а старая выводится из обращения, вместо отправки второго приглашения.
delivered: false означает, что приглашение существует, но письмо не покинуло почтовый сервер. deliveryError сообщает, что именно ответил сервер. До адресата ничего не дошло, поэтому отправьте приглашение заново из приложения, когда истечёт период ожидания.
invitedBy намеренно оставлено null, а не приписано владельцу рабочего пространства. Эта колонка фиксирует, какой ЧЕЛОВЕК кого пригласил, а ключ API — не человек.
Владельцу рабочего пространства будет отказано с member_is_owner, 422. Он не является участником, и сделать его участником нельзя.