作为入职流程的一部分,我们公司使用Trello API向我们的组织添加新用户。我们通过PUT
到/1/organizations/orgId/members
来添加用户,它返回新用户的JSON表示:
{
"id": "521baf66783e22e12f000040",
"confirmed": false,
"fullName": "Bradley Buda",
"memberType": "ghost",
"username": "bradleybuda4",
"email": "bradleybuda@example.com",
}
(某些字段是匿名/删除的)
我们希望将此用户的ID存储在我们的系统中以用于簿记目的(因此我们可以在终止Bradley时删除该帐户)。但是,当"ghost"
用户实际加入组织时(通过单击邀请电子邮件中的链接),此用户记录将替换为全新的用户记录,并使用不同的"id"
:
{
"id": "521bb6b018c2a109450001d7",
"confirmed": true,
"fullName": "Bradley Buda",
"memberType": "normal",
"username": "bradleybuda4"
}
电子邮件地址也未在GET /1/organizations/orgId/members
调用中返回,因此我们无法将其用作主键。我们可以使用"username"
来跟踪我们的Trello用户,但如果用户使用现有的Trello帐户接受邀请(而不是创建新帐户),那么用户名也会发生变化。
是否有任何持久的方式来跟踪API创建的用户的邀请接受?现在,我们必须在接受邀请后手动跟踪Trello帐户,我们希望这个过程完全自动化。我也查看了GET /1/organizations/orgId/memberships
API,但是当ghost用户离开时,这些ID(idMembership
)似乎也会发生变化。据我所知,当鬼用户消失时,没有任何webhook会触发。
答案 0 :(得分:1)
据我所知,你的分析是正确的。没有办法跟踪成员接受你想要的邀请。
如果您愿意合理地频繁地轮询该组织的成员资格(取决于您添加新员工的频率),那么您可以将每个消失的幽灵与同时出现的成员相关联。