通过API创建客户端时,我们如何为其分配Client +角色并将其分配给项目?我创建了一个脚本,根据用户的电子邮件地址将用户重定向到项目。
客户端已创建,但我相信只能分配客户端角色(不存在客户端+角色)。附加客户端和权限来自自定义权限:管理任务,从我在数据库中看到的内容。
当我包含此权限时,永远不会创建客户端。
这是我创建客户端的代码:
$payload = [
"type" => "Client",
"first_name" => $first_name,
"last_name" => $last_name,
"email" => $email,
"password" => $this->rand_string(15),
"company_id" => $company,
];
$result = $this->client->post("/users", $payload);
$result_json = $result->getJson();
$client_id = @$result_json['single']['id'];
$payload = [
"id" => $project,
"members" => array(
$client_id
),
];
$result = $this->client->post("/projects", $payload);
客户端已创建,但没有正确的权限,客户端永远不会添加到项目中(这意味着他们无法对其进行任务)。
答案 0 :(得分:0)
Client +是一个常规客户端实例,具有额外权限。使用custom permissions
属性设置这些额外权限。请注意,仅当应用程序的“附加组件”部分中启用了Client +时,此方法才有效。
显然,发布到/users
API中断,但您可以使用此有效负载在/users/invite
API端点上使用常规邀请路由和POST:
$payload = [
"role" => "Client",
"custom_permissions" => ["can_manage_tasks"],
"email_addresses" => [$email],
"company_id" => $company_id,
"project_ids" : [1, 2, 3],
];
邀请具有客户端+权限的用户。