VersionOne,如何将用户添加到V1(rest api或类似方式)

时间:2013-07-02 12:19:42

标签: versionone

我如何将用户添加到版本1? 我想使用rest api或类似方式。

2 个答案:

答案 0 :(得分:2)

您可以通过API添加会员资产。

添加资源为described on the VersionOne Community Site

首先,您必须知道会员资产的所有必需属性。您可以访问VersionOne实例的元数据API端点,以发现需要哪些属性以及从何处获取有效数据。

https://www14.v1host.com/v1sdktesting/meta.v1/?xsl=api.xsl#Member访问我们的测试实例Meta api,我看到属性NameNicknameDefaultRoleNotifyViaEmail和{{1} } 是必要的。我们还需要SendConversationEmailsUsername,以便他们可以登录。

Password是一种关系,因此我们需要知道相关的角色ID。我们访问https://www14.v1host.com/v1sdktesting/rest-1.v1/Data/Role以发现它们,并为我们的会员选择“角色:5”描述为“开发者”。

然后我们可以使用诸如

之类的正文将HTTP POST指向Role
/rest-1.v1/Data/Member

响应正文将返回新创建的资产XML,或报告任何错误。

答案 1 :(得分:0)

当我在版本i中创建项目时,使用应用程序密钥" $ application_key"并在PHP中发布

$post_data = <<<FOO
<Asset>
  <Attribute name="Username" act="set">juser</Attribute>
  <Attribute name="Password" act="set">swordfish</Attribute>
  <Attribute name="Name" act="set">Johnny User</Attribute>
  <Attribute name="Nickname" act="set">Johnny</Attribute>
  <Attribute name="NotifyViaEmail" act="set">true</Attribute>
  <Attribute name="SendConversationEmails" act="set">true</Attribute>
  <Relation name="DefaultRole" act="set">
    <Asset idref="Role:5" />
  </Relation>
</Asset>
FOO;


$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,'https://www14.v1host.com/v1sdktesting/rest-1.v1/Data/Member');
curl_setopt($ch, CURLOPT_POST, 1); // GET // 1 = POST
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);  
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer {$application_key}",
    "Content-Type: application/xml"
]);
$server_output = curl_exec ($ch);
curl_close ($ch);
$simpleXml = simplexml_load_string($server_output);