我正在尝试使用BOX.net api添加一个组作为文件夹的协作者,但我不能。
添加用户没有任何问题,但我无法添加群组。
我按照他们的说法这样做:{id:“GROUP_ID”}但我得到了“未找到”错误。
我检查了组和文件夹ID,它们都是正确的。
以前有人遇到过这个问题吗?有人可以帮我这个吗?我真的很感激。
提前致谢,
此致
马塞洛
答案 0 :(得分:1)
您必须是Box Enterprise的组管理员才能管理群组。您可能需要让您的Box管理员将您添加为共同管理员,并为您提供“管理组”权限。
答案 1 :(得分:0)
除了“id”:“GROUP_ID”之外,请务必在accessible_by字段中传递“type”:“group”。
这应该很快记录下来。
答案 2 :(得分:0)
以下是将组添加为协作者(PHP)的小示例。这是通过V2 API完成的,如果你正在使用V1 api(看到你提到了box.net的api,这是V1 api)。
function addGroupColaborator($folderId, $groupId, $accessType, $accessToken){
$options = array(
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_VERBOSE => true,
CURLOPT_HEADER => false,
CURLINFO_HEADER_OUT => false,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_FOLLOWLOCATION => false
);
$url = 'https://api.box.com/2.0/collaborations?notify=false';
$options[CURLOPT_HTTPHEADER] = array ("Authorization: Bearer ".$accessToken);
$postf = array(
"item" => array(
"id" => $folderId,
"type" => "folder"
),
"accessible_by" => array(
"id" => $groupId,
"type" => 'group'
),
"role" => $accessType
);
$options[CURLOPT_POST] = true;
$options[CURLOPT_POSTFIELDS] = json_encode($postf);
$ch = curl_init($url);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
curl_close($ch);
return json_decode($result, true);
}