Registration Server API Calls¶
The following is list of all API calls.
getsettings¶
Use this call to retrieve Registration Server and provider settings.
This call is new in Registration Server 4.5.1.
The <settings>
tag must contain a comma separated list of settings
to retrieve. Currently only RegServerName
, ClientSettings
, CLIENT_SETTINGS
,
and PRE_LOGIN_SETTINGS
.
Further settings will be added as required.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>loginuser</command>
<requesttime></requesttime>
<distributor></distributor>
<settings>ClientSettings,CLIENT_SETTINGS,..</settings>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<settings>
<ClientSettings>...</ClientSettings>
<CLIENT_SETTINGS>...</CLIENT_SETTINGS>
...
</settings>
</teamdrive>
A <settings>
block is returned in the reply, containing one tag for each
setting requested, containing the associated value of the setting.
Error Cases¶
Errors returned by this call include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30144: Setting does not exists or, access to setting not permitted
loginuser¶
This call is used to test login for a particular user.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The <tmppassword>
tag is now in Registration Server 4.0. Setting
this field allows you to attempt a login using a temporary password
issued by the Registration Server after a lost password request
(see the sendpassword API call). In this case, <password>
specifies the new password of the user.
In addition, the <sendmail>
tag indicates whether the user receives
a passwd-changed email or not. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
See The <origin> tag for details on the <origin>
tag.
<licensereference>
is optional, and is used if a default license
is created for the user. This is only done if the user has no
default license, and the Provider setting DEFAULT_LICENSEKEY
is empty. This tag was added in version 3.6.3.
The tag <includegroup>
(version 4.0) is optional. The default
value is true
. If the value is true
the <group>
tag will be
included, if the user is a member of a group.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>loginuser</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<password></password>
<tmppassword></tmppassword>
<licensereference></licensereference>
<includegroup>true|false</includegroup>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<userdata>
<userid></userid>
<username></username>
<email></email>
<reference></reference>
<department></department>
<language></language>
<distributor></distributor>
<usercreated></usercreated>
<status></status>
<clientsettings></clientsettings>
<keyrepository>true|false</keyrepository>
<newsletter>true|false</newsletter>
<emailbounced>true|false</emailbounced>
<webportal>true|false</webportal>
<group>
<distributor></distributor>
<groupname></groupname>
<groupreference></groupreference>
<grouptype>provider|user</grouptype>
<manager></manager>
<manageremail></manageremail>
<groupcreated></groupcreated>
<groupmodified></groupmodified>
<groupdepot>
<depotname></depotname>
<depotreference></depotreference>
<hosturl></hosturl>
<depotid></depotid>
<globalid></globalid>
<username></username>
<accountkey></accountkey>
<accountreference></accountreference>
<contractnumber></contractnumber>
<storagelimit></storagelimit>
<transferlimit></transferlimit>
<created></created>
<etl></etl>
<status></status>
<storageused></storageused>
<transferused></transferused>
</groupdepot>
<licensekey></licensekey>
<licensereference></licensereference>
<clientsettings></clientsettings>
</group>
</userdata>
</teamdrive>
On successful login, the Registration Server returns a number of details describing the user.
Description of the <userdata>
fields and values:
<userid>
: The internal user ID of the Registration Server.<username>
: The user’s username. If the name has the format “$<provider-code>-<value”, then it is a so-called “magic username”. Magic usernames are allocated by the Registration Server and are invisible to the end user (see registeruser for more details).<email>
: The user’s registration email address.<reference>
: An optional external reference which may be used to identify the user, if it is unique.<department>
: The name of the user’s department (optional text field).<language>
: The ISO 3166 language code of the user.<usercreated>
: The user creation date, format: “MM/DD/YYYY”.<status>
: Either:todelete
,disabled
,inactive
oractivated
.<clientsettings>
(version 4.0): User-level clients settings ( see registeruser).<keyrepository>
:true
of the user’s Key Repository is enabled.<newsletter>
:true
if the user wishes to receive the TeamDrive newsletter.<emailbounced>
: true` if the user’s email address has bounced.<webportal>
:true
if the user is permitted to access the TeamDrive Web Portal. This tag was added in version 3.6.0.<group>
(version 4.0): This tag is included if<includegroup>
istrue
, and the user is a member of a group. The<group>
tag fields are described in the getgroupdata call. A<memberlist>
block is is only included in the<group>
tag returned by the “getgroupdata” call.
Note that if the Provider setting ALLOW_WEB_PORTAL_ACCESS
is set to permit
or deny
,
the the value returned in the <webportal>
tag will reflect this setting, not the value of
the user’s Web Portal Access capability bit.
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30101: Wrong password
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30137: Too many failed login attempts
Redirect due to user belonging to another Provider¶
If the Provider setting API/API_REDIRECT
(see API_REDIRECT) is set for
the user’s Provider, and the user is accessed by another Provider, then the Registration
Server returns a -30004 exception. The <message>
tag contains the URL specified by
API_REDIRECT
.
The caller is expected to re-direct the user to the specified Web-page. Note that
this error is always retuned if API_REDIRECT
is set, even if the caller is
the Default Provider.
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<exception>
<primarycode>-30004</primarycode>
<secondarycode></secondarycode>
<message>[URL]</message>
</exception>
</teamdrive>
tdnslookup¶
This API call will do a lookup at the TeamDrive Name Service to find the Registration Server where the user or email is registered. It is usefull if a system using the API is required to communicate with more than one Registration Server.
Any Registration Server connected to the TDNS can process this API call.
This function is available since version 3.5.0.
In the case of a user name lookup, the reply includes the Registration Server name, the domain and the Provider Code of the user. If the user is not found the API will raise a -30100 error.
The <useroremail>
can be used to search by username or email
address. This tag was added in version 3.6.0.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>tdnslookup</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<password></password>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<regserver>
<distributor></distributor>
<servername></servername>
<domain></domain>
</regserver>
</teamdrive>
A request to lookup and email, or a username may be made using
the <useroremail>
tag. In this case the <username>
tag must be
omitted. In this case the API will return a list of Registration
Servers. If the username or email is not found, the list will be
empty, and <count>
is set to zero.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>tdnslookup</command>
<requesttime></requesttime>
<distributor></distributor>
<useroremail></useroremail>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<regserverlist>
<count></count>
<regserver>
<distributor></distributor>
<servername></servername>
</regserver>
<regserver>
<distributor></distributor>
<servername></servername>
</regserver>
<regserverlist>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
searchuser¶
Search for a user.
Warning
This function is for internal usage only. Do not allow public access.
The user may be identified using one or more of the following tags:
<username>
, <email>
, <reference>
or <authid>
(see Identifying Users for details).
<username>
and <email>
may include the “wildcard” character “*”.
For example, setting <username>
to “abc*” will find all
users starting with “abc...”, “abc” will find all data ending
with ”...abc”, and “*abc” will find all data that contains
”...abc...”.
If you search without the wildcard, the server will perform an exact match for the string. A minimum of 3 characters (excluding wildcards) is required.
The tags <distributor>`, <reference>
and <authid>
were added in
version 3.6.0. These tags can be used in addition to or in place of other search
tags. The “*” search wildcard is not recognised which searching for these values.
You can limit the search to your own users (specified by the <distributor>
tag) by using <onlyownusers>true</onlyownusers>
. Note that when searching
by <authid>
and <reference>
, <distributor>
will be automatically be
added to the search conditions.
Note that setting <distributor>
to a value other than your own Provider code
is only permitted if you are the Default Provider.
To retrieve a list of all of your users, leave <username>
, <email>
,
<reference>
and <authid>
empty.
Currently, the reply will contain a maximum of 50 users. This maximum value
might change in the future. The current maximum value is included within the
reply’s <maximum>
tag.
<current>
is the number of users returned in the result, and <total>
is the total number of users that match the input parameters (see below
for more details).
If <current>
is less than <total>
, there may be more records
available than returned in the reply. To retrieve the next set of records,
resend the same request and put the highest user ID from the last reply
into the <startid>
field. For the first search request you can set
<startid>
to 0, or omit it entirely.
If a user does not belong to the calling Provider then <email>
in the
reply will be empty.
The <devicelist>
block in the reply is only be returned if you send
<showdevice>true</showdevice>
in the request.
If <showlicense>
is set to true
, then this function returns license data
relating to the user. This includes information about the license the user
has in use, and a list of licenses belonging to the user. This feature
was added in version 3.5.9.
<licensereference>
(version 3.5.9) is optional, and is used if a default license
is created for the user. This is only done if the user has no default license, and
the Provider setting DEFAULT_LICENSEKEY
is empty, and <showlicense>
was set
to true
.
The tag <includegroup>
(version 4.0) is optional. The default
value is false
. If the value is true
then the <group>
tag
is included in the <user>
block, if the user is a member of a group. In addition,
the <licenselist>
block will also include the user’s group license.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>searchuser</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<email></email>
<reference></reference>
<authid></authid>
<startid></startid>
<showdevice>true/false</showdevice>
<showlicense>true/false</showlicense>
<onlyownusers>true/false</onlyownusers>
<licensereference></licensereference>
<includegroup>true|false</includegroup>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<searchresult>
<current></current>
<maximum></maximum>
<total></total>
</searchresult>
<userlist>
<user>
<userid></userid>
<username></username>
<email></email>
<reference></reference>
<department></department>
<language></language>
<distributor></distributor>
<usercreated></usercreated>
<status></status>
<clientsettings></clientsettings>
<keyrepository>true|false</keyrepository>
<newsletter>true|false</newsletter>
<emailbounced>true|false</emailbounced>
<webportal>true|false</webportal>
<licensekey></licensekey>
<licensereference></licensereference>
<featurevalue></featurevalue>
<licensestatus></licensestatus>
<group>
<distributor></distributor>
<groupname></groupname>
<groupreference></groupreference>
<grouptype>provider|user</grouptype>
<manager></manager>
<manageremail></manageremail>
<groupcreated></groupcreated>
<groupmodified></groupmodified>
<groupdepot>
<depotname></depotname>
<depotreference></depotreference>
<hosturl></hosturl>
<depotid></depotid>
<globalid></globalid>
<username></username>
<accountkey></accountkey>
<accountreference></accountreference>
<contractnumber></contractnumber>
<storagelimit></storagelimit>
<transferlimit></transferlimit>
<created></created>
<etl></etl>
<status></status>
<storageused></storageused>
<transferused></transferused>
</groupdepot>
<licensekey></licensekey>
<licensereference></licensereference>
<clientsettings></clientsettings>
</group>
<licenselist>
<license>
<created></created>
<productid></productid>
<productname></productname>
<type></type>
<licensekey></licensekey>
<licensereference></licensereference>
<featurevalue></featurevalue>
<featuretext></featuretext>
<validuntil></validuntil>
<limit></limit>
<used></used>
<status></status>
<isdefault>true|false</isdefault>
<isgroup>true|false</isgroup>
<licenseemail></licenseemail>
</license>
<license>...</license>
...
</licenselist>
<devicelist>
<device>
<deviceid></deviceid>
<status></status>
<devicecreated></devicecreated>
<deviceactive></deviceactive>
<version></version>
<platform></platform>
</device>
<device>...</device>
...
<amount></amount>
</devicelist>
</user>
<user>
...
</user>
</userlist>
</teamdrive>
The <searchresult>
block contains statistical information about the found
records:
<current>
: The number of users in this reply. Before version 3.6.4 this returned the number of records in the reply, which counted the number of devices when<showdevice>
was set totrue
.<total>
: Total number of records. If<startid>
is specified then the total returned will be the total number of records after the specified user ID. Note that prior to version 3.6.4 this value was not always set correctly when <showdevice>` was set totrue
.<maximum>
: Maximum number of users the server will return in a reply. Before version 3.6.4 this specified the maximum number of device records when<showdevice>
was set totrue
.
If no records are found, <current>
and <total>
will be 0. In this case,
the <userlist>
block will not be returned.
The <group>
tag (version 4.0) is included if <includegroup>
is true
, and
the user is a member of a group. The <group>
tag fields are described in the
getgroupdata call. A <memberlist>
block is is only included in the <group>
tag returned by the “getgroupdata” call.
The tags <licensekey>
(version 3.5.10), <licensereference>
(version 3.6.3),
<featurevalue>
and <licensestatus>
(version 3.5.9) return details of
the license the user has in use.
The <licenselist>
block is a list of licenses belonging to the user (version
3.5.9). The <license>
blocks are identical to those returned by the
getlicensedata call (except <userlist>
tag is not included).
The <licensekey>
tag in the <license>
block is new in version 3.5.10. The <number>
tag was previously used to return the license key number. This tag is still present, but is
deprecated and will be removed in a future version of the Registration Server.
Fields such as <userid>
and <keyrepository>
are identical to those returned by
the loginuser call.
The <isgroup>
tag in the <license>
block is new in version 4.0. This indicates
if the license belongs to the user’s group. Group licenses are only included if
<includegroup>
is set to true
.
In version 4.0, the <licensekey>
, <licensereference>
(added in version 3.6.3)
and <feature>
tags in the <device>
block are deprecated and will be removed in a future version.
Error Cases¶
Errors that may occur, include the following:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30116: Username too short or invalid email
getuserdata¶
Get the data associated with a user.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
, <authid>
or
<activationcode>
(see Identifying Users for details).
<licensereference>
is optional, and is used if a default license
is created for the user. This is only done if the user has no
default license, and the Provider setting DEFAULT_LICENSEKEY
is empty.
Use the optional <settings>
tag to retrieve Registration Server and
provider settings, by specifying a comma separated list of settings names
(Registration Server 4.5.1 or later). If included the result will contains
a <settings>
block with the names (as tags) and values of the settings
(see getsettings for further details).
The <includeaccounts>
and <includegroups>
tag were added in version 4.0. Both are
optional, and are set to true
by default.
If <includeaccounts>
is true
then the accounts that the user belongs to are
included in the <accountdata>
block.
If <includegroups>
is true
then the <group>
tag is included in the
<userdata>
block, if the user is a member of a group. In this case, the user’s
license and depot associated with the user’s group will also be included in the
<licensedata>
and <depotdata>
blocks. All the groups the user belongs
to are also included in the <groupdata>
. <includegroups>
also effects the
license returned in the <license>
block in <userdata>
(see the description
of the <license>
block below.
The tags <includeinusedepots>
, <includeowneddepots>
and <includegroupdepot>
,
indicate what depots of the user should be returned. If <includeinusedepots>
is
set to true
(which is the default), then all depots that are in use by the user
are returned. If <includeowneddepots>
is set to true
(false
by default),
then the result includes all depots owned by the user. If <includegroupdepot>
is
set to true
(which is the default), then the result will include the user’s
account and group depots, if there are any.
These tags are new to Registration Server version 4.0. Previously this call automatically returned all depots in use by the user. There were no options to change this behaviour.
The <sendmail>
(new in version 4.0) tag indicates whether the user receives
an email or not. If the user’s depot configuration changes due to this call, then
the user will be sent a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>getuserdata</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<activationcode></activationcode>
<licensereference></licensereference>
<settings>RegServerName,ClientSettings,CLIENT_SETTINGS,..</settings>
<includeaccounts>true|false</includeaccounts>
<includegroups>true|false</includegroups>
<includeinusedepots>true|false</includeinusedepots>
<includeowneddepots>true|false</includeowneddepots>
<includegroupdepot>true|false</includegroupdepot>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<settings>
<RegServerName>...</RegServerName>
<ClientSettings>...</ClientSettings>
<CLIENT_SETTINGS>...</CLIENT_SETTINGS>
...
</settings>
<userdata>
<userid></userid>
<username></username>
<email></email>
<reference></reference>
<department></department>
<language></language>
<distributor></distributor>
<usercreated></usercreated>
<status></status>
<clientsettings></clientsettings>
<keyrepository>true|false</keyrepository>
<newsletter>true|false</newsletter>
<emailbounced>true|false</emailbounced>
<webportal>true|false</webportal>
<license>
<created></created>
<productid></productid>
<productname></productname>
<type></type>
<licensekey></licensekey>
<licensereference></licensereference>
<featurevalue></featurevalue>
<featuretext></featuretext>
<validuntil></validuntil>
<limit></limit>
<used></used>
<status></status>
<isdefault></isdefault>
<isgroup></isgroup>
<licenseemail></licenseemail>
<language></language>
</license>
<group>
<distributor></distributor>
<groupname></groupname>
<groupreference></groupreference>
<grouptype>provider|user</grouptype>
<manager></manager>
<manageremail></manageremail>
<groupcreated></groupcreated>
<groupmodified></groupmodified>
<groupdepot>
<depotname></depotname>
<depotreference></depotreference>
<hosturl></hosturl>
<depotid></depotid>
<globalid></globalid>
<username></username>
<accountkey></accountkey>
<accountreference></accountreference>
<contractnumber></contractnumber>
<storagelimit></storagelimit>
<transferlimit></transferlimit>
<created></created>
<etl></etl>
<status></status>
<storageused></storageused>
<transferused></transferused>
</groupdepot>
<licensekey></licensekey>
<licensereference></licensereference>
<clientsettings></clientsettings>
</group>
</userdata>
<accountdata>
<account>
<distributor></distributor>
<accountkey></accountkey>
<accountreference></accountreference>
<created></created>
<clientsettings></clientsettings>
<privileges></privileges>
<jointime></jointime>
</account>
<account>...</account>
...
</accountdata>
<licensedata>
<license>
<created></created>
<productid></productid>
<productname></productname>
<type></type>
<licensekey></licensekey>
<licensereference></licensereference>
<featurevalue></featurevalue>
<featuretext></featuretext>
<validuntil></validuntil>
<limit></limit>
<used></used>
<status></status>
<isdefault></isdefault>
<isgroup></isgroup>
<licenseemail></licenseemail>
</license>
<license>...</license>
...
</licensedata>
<depotdata>
<count></count>
<depot>
<depotname></depotname>
<depotreference></depotreference>
<hosturl></hosturl>
<depotid></depotid>
<globalid></globalid>
<username></username>
<accountkey></accountkey>
<accountreference></accountreference>
<contractnumber></contractnumber>
<storagelimit></storagelimit>
<transferlimit></transferlimit>
<created></created>
<etl></etl>
<status></status>
<storageused></storageused>
<transferused></transferused>
<isowner></isowner>
<isdefault></isdefault>
<iscloud></iscloud>
<isaccount></isaccount>
<isgroup></isgroup>
</depot>
<depot>...</depot>
...
</depotdata>
<groupdata>
<group>
<groupname></groupname>
<groupreference></groupreference>
<memberstate></memberstate>
<manager></manager>
<manageremail></manageremail>
</group>
<group>...</group>
...
</groupdata>
</teamdrive>
The <userdata>
block is identical to that returned by the loginuser call.
The <license>
block in <userdata>
was added in Registration Server version 4.0.
It contains the details of the license assigned to the user. This will be the group license
if the user is a member of a group with an assigned license, and <includegroups>
is true
.
In this case <isgroup>
will be set to true
.
Note that this license may not be one of the licenses listed in the <licensedata>
block,
which contains all the licenses owned by the user.
The <license>
blocks in <userdata>
and <licensedata>
is identical to that returned
by the getlicensedata call (except <userlist>
tag is not included).
The valid values for <status>
in <userdata>
include: todelete
, disabled
,
inactive
and activated
.
The <group>
tag (version 4.0) is included if <includegroups>
is true
, and
the user is a member of a group. The <group>
tag fields are described in the
getgroupdata call. A <memberlist>
block is is only included in the <group>
tag returned by the “getgroupdata” call.
The <licensekey>
tag in the <license>
block is new in version 3.5.10. The <number>
tag was previously used to return the license key number. This tag is still present, but is
deprecated and will be removed in a future version of the Registration Server.
The <isgroup>
tag in the <license>
block is new in version 4.0. This tag has the
value true
if the license belongs to the user’s group. If <includegroups>
is false
then group licenses will not be returned in the result.
The <depotdata>
block contain a number of <depot>
blocks. The number of of depots
in the block is specified in the <count>
tag.
In this block, <isowner>
(version 4.0) is set to true
if the user is the
owner of the depot.
In addition, the <isdefault>
tag is set to true
if the depot is the user’s
default depot. There can only be one default depot. The default depot is the depot
that was created or assigned to the user automatically when the user is first
registered.
<iscloud>
(version 4.0) in the <depotdata>
block is set to true
if this is
the user’s “selected depot”. In general this is the user’s group gepot if the user
is a member of group with a depot, or the account level selected depot if this
exists. Otherwise this is the depot that has been selected on the user level.
If the user has no selected depot, then the user’s default depot is selected.
<isaccount>
(version 4.0) in the <depotdata>
block is set to true
if this is
the depot selected at the account level. If <includegroups>
is false
then
account depots will not be returned in the result.
<isgroup>
(version 4.0) in the <depotdata>
block is set to true
if this is
the user’s Group Depot, which means the depot belongs to the user’s group. If <includegroups>
is false
then group depot will not be returned in the result.
The <status>
tag contains one of the following: to-be-deleted
, deleted
,
delete-on-server
, enabled ``, ``disabled
.
The <accountdata>
block is new in version 4.0. This block is only
included if <includeaccounts>
is true
. It contains a list of <account>
blocks
with the following fields:
<distributor>
: The provider code of the account.<accountkey>
: The unique account identifier.<accountreference>
: A unique external reference to the account. This field may be empty.<created>
: The time the account was created.<clientsettings>
: The client settings at the account level.<privileges>
: The privilege level and status of the user in the account. This is a comma separated list of the following:member
: the user is regular member of the account.manager
: the user is a manager of the account.
<jointime>
: The time the user became a member of the account.
The <groupdata>
block is new in version 4.0. This block is only
included if <includegroups>
is true
. It contains
a list of <group>
blocks with the following fields:
<groupname>
: The name or title of the group. The name is not unique and is used for display purposes.<groupreference>
: The Registration Server wide unique identifier of the group.<memberstate>
: This is the state of the user’s membership in the group:member
: the user is a member of the groupinvited-as-member
: the user has been invited to join the group as a membermembership-rejected
: the user has refused membership of the groupfriend
: the user is a friend of the groupinvited-as-friend
: the user has been invited to join the group as a friendfriendship-rejected
: the user has refused friendship of the groupmanager
: the user is the manager of the group
<manager>
: The username of the manager of the group.<manageremail>
: The email address of the manager of the group.Note that this field is a comma separated list of states because a number of state combinations are possible, for example: “member,manager” and “friend,invited-as-member”.
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30106: Activation code is invalid
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30127: License with reference already exists
registeruser¶
Create a new user.
The Provider setting API/REG_NAME_COMPLEXITY
(see
REG_NAME_COMPLEXITY) determines
which characters may be used in the username.
The global settings ClientPasswordLength
and ClientUsernameLength
specify the minimum length of these values.
If <username>
is not provided, or is set to $
then the email address
will be used to identify the user. As documented in
USER_IDENTIFICATION_METHOD. In this
case a “magic username” is generated. This value is returned in the reply
to this call, and can be used to reference the user in subsequent calls.
However, you can also use the email address or the <reference>
specified in the request, if it is unique.
A password must be specified using the <setpassword>
tag unless
<setpassword>true</setpassword>
is used, see below.
The <newsletter>``specifies if the user wishes to receive the TeamDrive
newsletter. This value is ``false
by default.
The user will get an activation email sent to their email address. You can
change this behaviour using the <sendmail>
tag as described below.
The user will be assigned to a provider. The Provider is
determined by either the IP address of the request sender or the
<distributor>
tag in the request. Only the Default Provider may
specify a different Provider.
Since version 3.6.2 you can specify a license to assign to the newly
created user, using the <licensekey>
or <licensereference>
tag.
The <licensereference>
tag will only be used to find an existing
license if the Provider setting LICENSE/EXT_LICENCE_REF_UNIQUE
(see
EXT_LICENCE_REF_UNIQUE)
is set to True
.
If <licensekey>
is set, then the license must exist ot an error
will be generated.
If the license does not exists, the user will be assigned the license
specified by the LICENSE/DEFAULT_LICENSEKEY
setting. If
LICENSE/DEFAULT_LICENSEKEY
is empty, then a default license will
be automatically created. If <licensereference>
contains a value, this
will be assigned to the newly created default license.
The <featurevalue>
tag is optional (added in version 4.0). If specified
the features are added to the default license of the user, if the default license does
not already exist.
<featurevalue>
is a comma separated list of the following values:
webdavs
, personal
, professional
, restricted
, banner
,
secureoffice
, inbox
and agent
. The integer values of the features added
together may be specified in place of the text values.
If <featurevalue>
is not specified, then a default license will be
generated with the features specified by LICENSE/DEFAULT_ACCOUNT_FEATURE
if an account has been specified for the user (see <accountkey>
or <accountreference>
below), otherwise the LICENSE/DEFAULT_FREE_FEATURE
determines the
features of the license (see DEFAULT_FREE_FEATURE for details).
The <accountkey>
or <accountreference>``tags (version 4.0 or later)
specify that the user must be added to an account. In this case, the
``<accountprivileges>
tag determines the privilege level of the user
in the account. This can be either member
or manager
.
The <groupreference>
tag (version 4.0 or later) allows you to add the
user to a group on creation. The details of the group are then returned
in <group>
tag in the reply.
In version 4.0 or later you can specify user-level client settings
in the <clientsettings>
tag. These settings are appended to the user’
Client Settings as specified by the CLIENT_SETTINGS
Provider Setting (see
CLIENT_SETTINGS). The user-level Client Settings take priority over
group-level settings (see creategroup API call) and the Provider
values.
The <activate>
, <setpassword>
, <sendmail>
and <origin>
tag
are all new in Registration Server version 4.0.
The <activate>
tag indicates whether the new
user should be activated automatically or not. If true
the user is
automatically activated, if false
the user must be activated
manually. If the tag is omitted the default value depends on the
value of the <sendmail>
tag. If <sendmail>
is false
(or false
by default) then the user is automatically activated.
If the <setpassword>
tag (default is false
) is set to true
then
the values of <activate>
and <sendmail>
are both ignored. In this case
the users account is not automatically activated, and an email using the
activationsetpassword template is sent to the user. This email
contains a link to the set-password HTML template, which allows
the user to set his password, and activate their user account.
The <changeuser>
tag (new in version 4.0) specified the username of the
user that is making the change. Note that this change is required if the
[[ORIGIN-*]]
email variables are to be valid (not empty).
The <sendmail>
tag indicates whether the user receives
an email due to registration or not. If the user was automatically
activated, then the user will be sent a registrationnotify email. If the
user is required to activate manually a activationlink email will be sent.
If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
See The <origin> tag for details on the <origin>
tag.
The <messagetext>
tag was added in Registration Server version 4.5.
When specified, the [[MESSAGE-TEXT]]
template variable can be used
in any email sent by this API call. An example of this is available in the
web-activationsetpassword
template.
The <sendcc>
tag (new in version 4.5), indicates whether the email sent
should be “CC’ed” the user making the change (set by the <changeuser>
tag).
By default this value is false
.
Starting with Registration Server 4.5 you can assign a depot to a user when the user is registered. You can also elect to prevent the addition of a default depot to the user.
The <nodepot>
, when set to true
indicates that no default depot should
be created or assigned to the user. By default this value is false
, which
means the settings PROVIDER_DEPOT
, HAS_DEFAULT_DEPOT
,
API_CREATE_DEFAULT_DEPOT
and the default depot setting on the account
level determine whether the user is assigned a depot on registration.
As another alternative to a default depot is so specify a particular depot
to be assigned to the user. In this case the depot is identified using
the <hosturl>
and <depotid>
tags. If the depot is unknown to the
Registration Server it will be fetched from the Host Server.
If the depot provided is new to the Registration Server, then <depotreference>
is set as external reference to the depot.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>registeruser</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useremail></useremail>
<password></password>
<language></language>
<reference></reference>
<department></department>
<newsletter></newsletter>
<licensekey></licensekey>
<licensereference></licensereference>
<featurevalue></featurevalue>
<accountkey></accountkey>
<accountreference></accountreference>
<accountprivileges>member|manager</accountprivileges>
<groupreference></groupreference>
<clientsettings></clientsettings>
<activate>true|false</activate>
<setpassword>true|false</setpassword>
<changeuser></changeuser>
<sendmail>true|false</sendmail>
<origin></origin>
<messagetext></messagetext>
<sendcc>true|false</sendcc>
<nodepot>true|false</nodepot>
<hosturl></hosturl>
<depotid></depotid>
<depotreference></depotreference>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<userdata>
<userid></userid>
<username></username>
<email></email>
<reference></reference>
<department></department>
<language></language>
<distributor></distributor>
<usercreated></usercreated>
<status></status>
<clientsettings></clientsettings>
<keyrepository>true|false</keyrepository>
<newsletter>true|false</newsletter>
<emailbounced>true|false</emailbounced>
<webportal>true|false</webportal>
<group>
<distributor></distributor>
<groupname></groupname>
<groupreference></groupreference>
<grouptype>provider|user</grouptype>
<manager></manager>
<manageremail></manageremail>
<groupcreated></groupcreated>
<groupmodified></groupmodified>
<groupdepot>
<depotname></depotname>
<depotreference></depotreference>
<hosturl></hosturl>
<depotid></depotid>
<globalid></globalid>
<username></username>
<accountkey></accountkey>
<accountreference></accountreference>
<contractnumber></contractnumber>
<storagelimit></storagelimit>
<transferlimit></transferlimit>
<created></created>
<etl></etl>
<status></status>
<storageused></storageused>
<transferused></transferused>
</groupdepot>
<licensekey></licensekey>
<licensereference></licensereference>
<clientsettings></clientsettings>
</group>
</userdata>
<intresult>0</intresult>
</teamdrive>
The <userdata>
block (version 3.6.0) contains details of the created users,
and is identical to that returned by the loginuser call.
The <userdata>
block replaces the <username>
tag (in the
<teamdrive>
block) which was returned since version 3.5.3. The
<username>
tag is still returned but has been deprecated and will be
removed in a future version of the Registration Server.
The <group>
block is new in version 4.0 and is included if the
user is a member of a group. The <group>
tag fields are described in the
getgroupdata call. A <memberlist>
block is is only included in the <group>
tag returned by the “getgroupdata” call.
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30108: Username invalid
- -30109: Password invalid
- -30110: Email invalid
- -30103: Username already exists
- -30104: Email already exists
- -30127: User with given reference already exists
- -30004: Redirect to Registration Server Download Page
- -30201: Unknown license
- -30214: License deleted
- -30213: License disabled
- -30212: License has expired
- -30211: License exceeded permitted usage
- -30130: Unknown group, Group unknown to this provider
- -30132: Account unknown to this provider
Redirect to Registration Server Download Page¶
If the user you are trying to create already exists on a remote
Registration Server, then you will receive a -30004 error. The
<message>
is set to the download URL of the Registration Server
of the user. Here the user should be able to Download a TeamDrive
Client which will enable him to login as the specified user.
The caller is expected to re-direct the user to the download page provided.
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<exception>
<primarycode>-30004</primarycode>
<secondarycode></secondarycode>
<message>[URL]</message>
</exception>
</teamdrive>
resendactivation¶
Will resend the activation mail to the user.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
, <authid>
or
<activationcode>
(see Identifying Users for details).
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>resendactivation</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<activationcode></activationcode>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30118: User already activated
activateuser¶
Activate a user.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The <activationcode>
tag is required and must match the activation
code sent to the user the activation email.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>activateuser</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<activationcode></activationcode>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30106: Wrong activation code
deactivateuser¶
Reset a user’s activation state.
This function is available since version 3.5.0.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>deactivateuser</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
disableuser¶
Disable the user. This function is available since version 3.5.0.
When disabled, a user is no longer able to access user information using the TeamDrive client or the Registration Server API. The user cannot re-enable himself. Re-enabling the user can only be performed using the “enableuser” API function.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>disableuser</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
enableuser¶
Enable a disabled user.
This function is available since version 3.5.0.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>enableuser</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
activateclient¶
Activate a TeamDrive Client installation.
If a user registers using the TeamDrive client, they will be sent a client activation email. The activation link from that email will normally lead back to the Registration Server. However, if the link does not directly point to the Registration Server, the following API call can be used to activate the client.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>activateclient</command>
<requesttime></requesttime>
<distributor></distributor>
<activationcode></activationcode>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30106: Wrong activation code
- -30117: Activation code not found
sendpassword¶
This call generates a temporary password which is sent to the user via email. The temporary password needs to be provided in order to change the existing password (e.g. via the “changepassword” API request).
The user receives the same temporary password for every consecutive “sendpassword” API request or when a new request is triggered by a Client. The generated temporary password remains active and unchanged until the user’s password has been changed via the changepassword API call or via the user’s Client.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>sendpassword</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
resetpassword¶
Resetting a user’s password will set it to a random value. This function causes all TeamDrive Clients to automatically logout.
If the user is using an external authentication service, the user is required to login again.
If the user is not using an external authentication service then user will be forced to set a new password.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The <sendmail>
(new in version 4.0) tag indicates whether the user receives
an email or not. If the user is using external authentication then he will be sent
a passwd-reset email, otherwise a passwd-invalidated email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>resetpassword</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
changepassword¶
Change a user’s password.
<tmppassword>
must contain the temporary password that was emailed to the
after the sendpassword API call. The <password>
contains the new
password chosen by the user.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The <sendmail>
(new in version 4.0) tag indicates whether the user receives
a passwd-changed email or not. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>changepassword</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<tmppassword></tmppassword>
<password></password>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30105: Temporary password does not match
- -30109: Password invalid
- -30137: Too many failed login attempts
Error -30105 (Temporary password does not match) is returned if the last call to sendpassword (or the last request from a TeamDrive Client for a temporary password) was more than 10 minutes ago. In this case, a new temporary password must be requested.
The new password is invalid if the length is less than the global
setting ClientPasswordLength
.
updatepassword¶
Update a user password.
Note
A user should only be allowed to change their password if they have already been authenticated.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The <sendmail>
(new in version 4.0) tag indicates whether the user receives
a passwd-changed email or not. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>updatepassword</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<newpassword></newpassword>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30109: Password invalid
setreference¶
Set the external reference for a user.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setreference</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<newreference></newreference>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30127: User with reference already exists
The error -30127 will only be returned if the Provider setting
EXT_USER_REFERENCE_UNIQUE
has been set to True
.
setdepartment¶
Set the department reference of a user.
This function is available since version 3.5.0.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<command>setdepartment</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<department></department>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
setemail¶
Set registration email address of a user.
This command will change the email for the user directly without sending a confirmation email to the user like the changeemail call does.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setemail</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<newemail></newemail>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30110: Email invalid
- -30104: Email already exists
changeemail¶
The call does not change the user’s registration email immediately. It first sends a confirmation email to the user with a verification link that contains an “activation code”.
Until the user has confirmed the new email address, the old email address remains active and is displayed in the TeamDrive Client.
The change of the email is confirmed with the confirmnewemail call (see below).
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>changeemail</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<newemail>true|false</newemail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30110: Email invalid
- -30104: Email already exists
confirmnewemail¶
Confirm the change of email requested by the changeemail call.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The <activationcode>
tag is required and must match
the activation code sent in the
email, which was sent to confirm the new email address.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>confirmnewemail</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<activationcode></activationcode>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30106: Wrong activation code
- -30104: Email already exists
changelanguage¶
Change the user’s default language.
Languages fields use valid ISO 3166 language codes (see http://en.wikipedia.org/wiki/ISO_3166-1).
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
If <newlanguage>
is set to the empty string, then the language
of the user will be set to the value of the EMAIL_DEFAULT_LANG
setting.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>changelanguage</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<newlanguage></newlanguage>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30115: Invalid language
updateuser¶
Update various user related fields. This function was added in version 4.0 of the Registration Server.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The tags <newreference>
, <newlanguage>
, <newdepartment>
,
<newauthid>
or <clientsettings>
are used to change the
corresponding user values.
In version 4.0, only <clientsettings>
is optional, and will not be
updated if omitted. Omitting any of the other fields when using version
4.0, will remove the current value.
In version 4.1.1 or later of the Registration Server, omitted fields will not be changed.
If <newlanguage>
is specified as empty, then the language
of the user will be set to the value of the EMAIL_DEFAULT_LANG
setting.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>updateuser</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<newreference></newreference>
<newlanguage></newlanguage>
<newdepartment></newdepartment>
<newauthid></newauthid>
<clientsettings></clientsettings>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30127: User with external reference or authentication ID already exists
The error -30127 will only be returned when changing the
external reference, if the Provider setting EXT_USER_REFERENCE_UNIQUE
has
been set to True
.
The external authentication ID must always be unique.
removeuser¶
This call will delete the user immediately (as opposed to deleteuser which requires user confirmation).
<password>
is optional. If specified, it must match the user’s
password. This can be used as an additional security check if required
(this option is new in version 3.6.3).
Set <deletelicense>
to true
if you would like to delete the
user’s license as well.
Set <deletedepot>
to true
if you would like to delete the
user’s storage depot as well.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>removeuser</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<password></password>
<deletelicense>true|false</deletelicense>
<deletedepot>true|false</deletedepot>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30101: Wrong password
- -30137: Too many failed login attempts
removedevice¶
This call deletes a user’s device. The ID of the device must specified in the request.
The list of devices a user posses can be retrieved using searchuser.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>removedevice</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<deviceid></deviceid>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30121: Device not found
deleteuser¶
This call does not delete a user immediately, instead it sends a confirmation email with an “activation code”.
When the user clicks on the link in the email, you are required to call confirmuserdelete in order to actually delete the user.
The removeuser call can be used to delete a user without confirmation.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>deleteuser</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
confirmuserdelete¶
Complete the deletion of a user that was initiated by the deleteuser call.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The <activationcode>
tag is required and must match the activation code sent to the
user in the email sent by the deleteuser call.
<password>
is optional since version 3.5.2. If specified, it must
match the user’s password. This can be used as an additional security
check if required.
Set <deletelicense>
to true
if you would like to delete the
user’s license as well.
Set <deletedepot>
to true
if you would like to delete the
user’s storage depot as well.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>confirmuserdelete</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<password></password>
<activationcode></activationcode>
<deletedepot>true|false</deletedepot>
<deletelicense>true|false</deletelicense>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30101: Wrong password
- -30106: Wrong activation code
- -30137: Too many failed login attempts
getlicensedata¶
Get license data for a user.
This call also returns deleted licenses.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The tag <includegroup>
(version 4.0) is optional. The default
value is true
. If the value is true
then the list of licenses
returned includes the user’s group license if there is one.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>getlicensedata</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<includegroup>true|false</includegroup>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<licensedata>
<license>
<created></created>
<productid></productid>
<productname></productname>
<type></type>
<licensekey></licensekey>
<licensereference></licensereference>
<featurevalue></featurevalue>
<featuretext></featuretext>
<validuntil></validuntil>
<limit></limit>
<used></used>
<status></status>
<isdefault>true|false</isdefault>
<isgroup>true|false</isgroup>
<licenseemail></licenseemail>
<userlist></userlist>
</license>
<license>...</license>
...
</licensedata>
</teamdrive>
The <licensekey>
tag in the <license>
block is new in version 3.5.10. The <number>
tag was previously used to return the license key number. This tag is still present, but is
deprecated and will be removed in a future version of the Registration Server.
Description of the fields and values:
<created>
: The creation date, format: “MM/DD/YYYY”.<productid>
: Either “1” or “2” (depending on<productname>
).<productname>
: Eitherclient
(1) orserver
(2).<type>
: 0 =permanent
, 1 =monthly payment
, 2 =nfr
(not for resale), 3 =yearly payment
, 4 =one-off-trial
, 5 =1-year-professional
.<licensekey>
: The license key number (previously<number>
).<licensereference>
: An opitonal external reference that may be used to identify the license.<featurevalue>
: Sum of the numbers as described in<featuretext>
<featuretext>
: A combination of:banner
(1),webdavs
(2),personal
(4),professional
(8),restricted
(16),secureoffice
(32),agent
(64) andinbox
(128).<validuntil>
: The license expiry date, format: “MM/DD/YYYY”.<limit>
: The maximum number of users.<used>
: The current usage count.<status>
: Eitherenabled
,disabled
ordeleted
<isdefault>
: Set totrue
if this is the user’s default license. The default license of a user is the one used when the current license of the user expires or is otherwise invalid.<isgroup>
(version 4.0): Set totrue
if the license belongs to the user’s group.<licenseemail>
: The email address associated with the license.<userlist>
(version 4.0: A comma separated list of usernames of the users that are using the license.
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30201: Unknown license
getdefaultlicense¶
Get the default license of a user. If the default license
does not exists, it is created and <licensereference
is assigned to the newly created license.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>getdefaultlicense</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<licensereference></licensereference>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<licensedata>
<license>
<created></created>
<productid></productid>
<productname></productname>
<type></type>
<licensekey></licensekey>
<licensereference></licensereference>
<featurevalue></featurevalue>
<featuretext></featuretext>
<validuntil></validuntil>
<limit></limit>
<used></used>
<status></status>
<isdefault></isdefault>
<licenseemail></licenseemail>
<userlist></userlist>
</license>
</licensedata>
</teamdrive>
The <license>
block is identical to that returned by the getlicensedata call.
The <licensekey>
tag in the <license>
block is new in version 3.5.10. The <number>
tag was previously used to return the license key number. This tag is still present, but is
deprecated and will be removed in a future version of the Registration Server.
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
createdepot¶
Create a depot on the host specified by the <hosturl>
tag.
The owner of the depot is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
.
The <depotreference>
will be stored as an external reference to
the depot.
An account may be specified using the <accountkey>
or <accountreference>
tag. In this case, the owner must be a manager of the account.
The <userlist>
tag specified a list of users of the depot. If an account
is specified then all users must be members of the account.
By default the depot owner is also added as a user of the depot. Set
<addownerasuser>
to false
if the owner should not be made a user of
depot. Note that you must be a user of a depot in order to create spaces
in the depot.
If <isdefault>
is set to true
default is false
) then the
depot is made the default depot of the owner, provided the owner does not
already have a default depot.
The <changeuser>
tag (new in version 4.0) specified the username of the
user that is making the change.
The <changeinfo>
tag contains a comment which will be stored in the change
history of the depot.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>createdepot</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<accountkey></accountkey>
<accountreference></accountreference>
<hosturl></hosturl>
<depotname></depotname>
<depotreference></depotreference>
<contractnumber></contractnumber>
<storagelimit></storagelimit>
<trafficlimit></trafficlimit>
<userlist></userlist>
<addownerasuser></addownerasuser>
<isdefault></isdefault>
<changeuser></changeuser>
<changeinfo></changeinfo>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<depotdata>
<depot>
<depotname></depotname>
<depotreference></depotreference>
<hosturl></hosturl>
<depotid></depotid>
<globalid></globalid>
<username></username>
<accountkey></accountkey>
<accountreference></accountreference>
<contractnumber></contractnumber>
<storagelimit></storagelimit>
<transferlimit></transferlimit>
<created></created>
<etl></etl>
<status></status>
<storageused></storageused>
<transferused></transferused>
<userlist></userlist>
</depot>
</depotdata>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30132: Unknown account
- -30136: User is not a member/manager of the account
- -30141: Cannot create depot, not permitted by license
deletedepot¶
Delete a depot.
The depot is either identified by the <depot>
tag, which contains a depot
document, or by the <hosturl>
and <depotid>
tags.
The <changeuser>
tag (new in version 4.0) specified the username of the
user that is making the change.
The <changeinfo>
tag contains a comment which will be stored in the change
history of the depot.
The <sendmail>
tag indicates whether the user receives
an email or not. If the user’s depot configuration changes due to this call, then
the user will be sent a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>deletedepot</command>
<requesttime></requesttime>
<distributor></distributor>
<depot></depot>
<hosturl></hosturl>
<depotid></depotid>
<changeuser></changeuser>
<changeinfo></changeinfo>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30123: Depot document/identifiers missing or invalid
- -30124: Depot not found
updatedepot¶
Update a depot.
The depot is either identified by the <depot>
tag, which contains a depot
document, or by the <hosturl>
and <depotid>
tags.
A new owner of the Depot may be specified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
.
The <depotname>
tag is optional. If specified, then the name
of the depot will be updated.
The <depotreference>
tag is optional. If specified, then the external reference
of the depot will be updated.
The <contractnumber>
tag is optional. If specified, then the contract number
of the depot will be updated.
The <storagelimit>
tag is optional. If specified, then the storage limit
of the depot will be updated.
The <trafficlimit>
tag is optional. If specified, then the traffic limit
of the depot will be updated.
The <changeuser>
tag (new in version 4.0) specified the username of the
user that is making the change.
The <changeinfo>
tag contains a comment which will be stored in the change
history of the depot.
The <sendmail>
tag indicates whether the user receives
an email or not. If a user’s depot configuration changes due to this call, then
the user will be sent a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>updatedepot</command>
<requesttime></requesttime>
<distributor></distributor>
<depot></depot>
<hosturl></hosturl>
<depotid></depotid>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<depotname></depotname>
<depotreference></depotreference>
<contractnumber></contractnumber>
<storagelimit></storagelimit>
<trafficlimit></trafficlimit>
<changeuser></changeuser>
<changeinfo></changeinfo>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30123: Depot document/identifiers missing or invalid
- -30124: Depot not found
activatedepot¶
Activate a depot.
The depot is either identified by the <depot>
tag, which contains a depot
document, or by the <hosturl>
and <depotid>
tags.
The <changeuser>
tag (new in version 4.0) specified the username of the
user that is making the change.
The <changeinfo>
tag contains a comment which will be stored in the change
history of the depot.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>activatedepot</command>
<requesttime></requesttime>
<distributor></distributor>
<depot></depot>
<hosturl></hosturl>
<depotid></depotid>
<changeuser></changeuser>
<changeinfo></changeinfo>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30123: Depot document/identifiers missing or invalid
- -30124: Depot not found
deactivatedepot¶
Deactivate a depot.
The depot is either identified by the <depot>
tag, which contains a depot
document, or by the <hosturl>
and <depotid>
tags.
The <changeuser>
tag (new in version 4.0) specified the username of the
user that is making the change.
The <changeinfo>
tag contains a comment which will be stored in the change
history of the depot.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>deactivatedepot</command>
<requesttime></requesttime>
<distributor></distributor>
<depot></depot>
<hosturl></hosturl>
<depotid></depotid>
<changeuser></changeuser>
<changeinfo></changeinfo>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30123: Depot document/identifiers missing or invalid
- -30124: Depot not found
getdefaultdepotdata¶
This call returns the depot that should be used by default by the user.
In Registration Server 4.0 this is the so-called “cloud depot” which is not necessarily the depot marked as the user’s default (see below).
If the user is a member of a group, and the group has a depot, then the cloud depot is the group depot. Otherwise, if the user has a depot selected on the account level then this is the cloud depot. If not then this call returns the “selected depot” (which can be set in the Admin Console), specified at the user level.
Finally, if the user has no selected depot, then user’s default depot will be returned, but only if the user’s default depot is in-use.
The tag <includegroupdepot>
(version 4.0) is optional. The default
value is true
. If the value is false
then the user’s account and
group depots is ignored.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
If the tag <forcecreate>
is set to true
, then this call will create
a new depot if the user does not otherwise have a depot in use,
even if HAS_DEFAULT_DEPOT
and API_CREATE_DEFAULT_DEPOT
are false
.
Account level settings are also overridden by this tag.
If a depot is created by this call, then the <depotreference>
value
will be stored as external reference to the depot.
The <sendmail>
(new in version 4.0) tag indicates whether the user receives
an email or not. If the user’s depot configuration changes due to this call, then
the user will be sent a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>getdefaultdepotdata</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<includegroupdepot>true|false</includegroupdepot>
<forcecreate>true|false</forcecreate>
<depotreference></depotreference>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<depotdata>
<count></count>
<depot>
<depotname></depotname>
<depotreference></depotreference>
<hosturl></hosturl>
<depotid></depotid>
<globalid></globalid>
<username></username>
<accountkey></accountkey>
<accountreference></accountreference>
<contractnumber></contractnumber>
<storagelimit></storagelimit>
<transferlimit></transferlimit>
<created></created>
<etl></etl>
<status></status>
<storageused></storageused>
<transferused></transferused>
<isowner></isowner>
<isdefault></isdefault>
<iscloud></iscloud>
<isaccount></isaccount>
<isgroup></isgroup>
</depot>
</depotdata>
</teamdrive>
The <status>
tag contains one of the following: to-be-deleted
, deleted
,
delete-on-server
, enabled ``, ``disabled
.
<isowner>
(version 4.0) is set to true
if the user is the owner of the depot.
<isdefault>
is set to true
if the depot is the user’s default depot. The default
depot is the depot that was created or assigned to the user automatically when the
user is first registered.
<iscloud>
(version 4.0) in the <depot>
block is set to true
if this is
the user’s “cloud depot”. In general this is the user’s group gepot if the user
is a member of group with a depot, otherwise the “selected” user depot. If the user
has no selected depot, then the user’s default depot.
<isaccount>
(version 4.0) in the <depotdata>
block is set to true
if this is
the depot selected at the account level. If <includegroups>
is false
then
account depots will not be returned in the result.
<isgroup>
(version 4.0) is set to true
if this is the user’s Group Depot,
which means the depot belongs to the user’s group. If <includegroup>
is
false
then group depot will not be returned in the result, and the cloud depot
will be either selected or the default depot.
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30107: No default depot
gethostfordepot¶
This call returns the URL of the current default Host Server that is selected for creating Depots via the API.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>gethostfordepot</command>
<requesttime></requesttime>
<distributor></distributor>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<hosturl></hosturl>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30107: No default depot server
setdepotforuser¶
Set a Depot for a user. A user may have multiply Depots, one of which is designated as the default Depot.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The depot is either identified by the <depot>
tag, which contains a depot
document, or by the <hosturl>
and <depotid>
tags which identify an existing
depot (new in version 4.0). If the depot is unknown on the Registration Server
it will be fetched from the Host Server.
If the depot provided is new to the Registration Server, then <depotreference>
is set as external reference to the depot.
The <changeuser>
tag (new in version 4.0) specified the username of the
user that is making the change.
The <changeinfo>
tag contains a comment which will be stored in the change
history of the depot.
If <isdefault>
is set to true
, then the specified depot becomes the
default depot of the user.
<sendtoclient>
has been deprecated in Registration Server 4.0. All changes
to a user’s Depot configuration are now automatically synchronised with the
TeamDrive Client.
The <sendmail>
(new in version 4.0) tag indicates whether the user receives
an email or not. If the user’s depot configuration changes due to this call, then
the user will be sent a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setdepotforuser</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<depot></depot>
<hosturl></hosturl>
<depotid></depotid>
<depotreference></depotreference>
<changeuser></changeuser>
<changeinfo></changeinfo>
<isdefault>true|false</isdefault>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30123: Depot document/identifiers missing or invalid
- -30124: Depot not found
removedepotfromuser¶
Remove the Depot from user. Registration Server 4.0 or later will not return an error if the Depot has already been removed.
If the removed Depot is the default Depot of the user and the user still has other Depots, then the oldest Depot becomes the new default Depot of the user.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The Depot is either identified by the <depot>
tag, or by the <hosturl>
and
<depotid>
tags. The <depot>
tag has the same content as specified in
the setdepotforuser API call.
<sendtoclient>
has been deprecated in Registration Server 4.0. All changes
to a user’s Depot configuration are now automatically synchronised with the
TeamDrive Client.
Set the <deletedepot>
tag (default false
) to true
, in order to the
delete the depot after removing to from the user. Note that this tag will be
ignored if the depot is not in use by the user.
The <changeuser>
tag (new in version 4.0) specified the username of the
user that is making the change.
The <changeinfo>
tag contains a comment which will be stored in the change
history of the depot.
The <sendmail>
(new in version 4.0) tag indicates whether the user receives
an email or not. If the user’s depot configuration changes due to this call, then
the user will be sent a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>removedepotfromuser</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<depot></depot>
<hosturl></hosturl>
<depotid></depotid>
<changeuser></changeuser>
<changeinfo></changeinfo>
<deletedepot>true|false</deletedepot>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30123: Depot document/identifiers missing or invalid
- -30124: Depot not found
syncdepotdata¶
Synchronise the Depot information with the Host Server and the user’s TeamDrive Clients.
This call is available in Registration Server 4.0 or later and is used to manually synchronise a user’s Depot with the Host Server, and to update the user’s Depot configuration on client devices.
This function ensures that the user access list of the Depot on the Host Server is identical to that of the Registration Server. In previous of the Registration Server it was possible that the access list was not synchronised because changes made via the API were not automatically sent to the Host Server, as they are not done in version 4.0.
This function will also send Depot documents to all TeamDrive Client installations of the user that have access to the Depot.
If the <nosync>
(default false
) is set to true
then the function
will only send the depot configuration to the users of the specified user.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The Depot is either identified by the <depot>
tag, or by the <hosturl>
and
<depotid>
tags. The <depot>
tag has the same content as specified in
the setdepotforuser API call.
The <sendmail>
tag indicates whether the user receives an email or not. If
the user’s depot configuration changes due to this call, the user will be sent
a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>syncdepotdata</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<depot></depot>
<hosturl></hosturl>
<depotid></depotid>
<nosync>true|false</nosync>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30123: Depot document/identifiers missing or invalid
- -30124: Depot not found
getdepotdata¶
Retrieve current information of a Depot. This call is available in Registration Server 4.0 or later.
The function calls the Host Server to update the Depot information held by the Registration Server if it is older than 30 minutes.
The Depot is either identified by the <depot>
tag, or by the <hosturl>
and
<depotid>
tags. The <depot>
tag has the same content as specified in
the setdepotforuser API call.
If the <includechanges>
tag (default false
) is set to true
then
this function also returns the change history of the depot.
The <sendmail>
tag indicates whether the user receives
an email or not. If the user’s depot configuration changes due to this call, then
the user will be sent a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>getdepotdata</command>
<requesttime></requesttime>
<distributor></distributor>
<depot></depot>
<hosturl></hosturl>
<depotid></depotid>
<includechanges>true|false</includechanges>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<depotdata>
<depot>
<depotname></depotname>
<depotreference></depotreference>
<hosturl></hosturl>
<depotid></depotid>
<globalid></globalid>
<username></username>
<accountkey></accountkey>
<accountreference></accountreference>
<contractnumber></contractnumber>
<storagelimit></storagelimit>
<transferlimit></transferlimit>
<created></created>
<etl></etl>
<status></status>
<storageused></storageused>
<transferused></transferused>
<userlist></userlist>
<lastfetchtime></lastfetchtime>
<changelist>
<change>
<whatchanged></whatchanged>
<changedate></changedate>
<changeid></changeid>
<changedetails></changedetails>
</change>
<change>...</change>
<change>...</change>
</changelist>
</depot>
</depotdata>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30123: Depot document/identifiers missing or invalid
- -30124: Depot not found
sendinvitation¶
Note
This function is deprecated in Registration Server 4.0 and no longer performs the function as previously described. The call will be removed in future versions of the server. Please use the “syncdepotdata” API call instead of this function.
Prior to version 4.0 of the Registration Server, this function sent the invitation message provided to the speciied user device.
With version 4.0 of the server it is no longer possible to distribute arbitrary Depot documents with this function. Instead, a Depot document must be added to a user using the “setdepotforuser” API call, and then the Depot will be automatically sent to the user’s devices by the server.
In Registration Server 4.0 this call ignores the <invitation>
and
<type>
tags, and simply triggers the Depot distribution mechanism for the
specified device.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The contents of the invitation must be base64 encoded and placed in the
<invitation>
tag.
The <type>
tag may be set to either INV_TYPE_CREATEDEPOT
or
INV_TYPE_DELETEDEPOT
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>sendinvitation</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<userlist></userlist>
<type></type>
<invitation></invitation>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30111: Invitation type unknown
setinviteduser¶
This function is used in the context of the referral program. (see
INVITATION Settings). It specifies that <inviteduser>
was invited by the user identified by one of the following tags: <username>
,
<useroremail>
, <reference>
or <authid>
.
<inviteduser>
must be a username.
The <sendmail>
tag specifies whether the owner should be notified via email of the license
change (default false
). If the license has no owner, then the license holder email
will be used (if this exists). A change notification email is always sent to the provider of the
license using the License email address of the provider.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setinviteduser</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<inviteduser></inviteduser>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30108: Invited user can not be found
- -30209: Increase user storage failed
createlicense¶
Create a license. You may optionally specify a user or account as owner of the license. The specified user becomes the owner of the license.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
If the user has no default license, then the created license will be set to the user’s default license.
In version 4.0 or later, the license can be assigned to an account by specifying an
account use the <accountkey>
or <accountreference>
tag.
Other input parameters to the call are as follows:
<productname>
: May be eitherserver
orclient
. Should always be set toclient
.<type>
: Eitherpermanent
,monthly
,yearly
ornfr
(not for resale).one-off-trial
and1-year-professional
cannot be set via the API.<featurevalue>
: A comma separated list of the following values:webdavs
,personal
,professional
,restricted
,banner
,secureoffice
,inbox
andagent
. Since version 3.6.3 the integer values of the features added together may be specified in place of the text values.<limit>
: The number of users that may use the license, “0000” mean unlimited, but may only be used withserver
type licenses.<licensereference>
: An optional external reference (free text field with 100 characters) that can be use to identify the license at a later point.<email>
: This is the holder email address of the license. This email address is used to notify the holder of the license of changes to the license, of the license does have an specific owner (a specific user). This value is required if an owner is not specified.<language>
: This is the language to be used when sending emails to the holder email address.<contractnumber>
: An optional value which may contain any external data relavent to the license (free text field with 255 characters).<validuntil>
: This specifies an expiry date for the license, the date format used is “YYYY-MM-DD” (“MM/DD/YYYY” will also be accepted).<changeid>
: An optional text which will be recorded in the change history of the license.- The
<sendmail>
tag specifies whether the owner should be notified via email of the license change (defaultfalse
). If the license has no owner, then the license holder email will be used (if this exists). A change notification email is always sent to the provider of the license using the License email address of the provider.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>createlicense</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<productname></productname>
<type></type>
<featurevalue></featurevalue>
<limit></limit>
<licensereference></licensereference>
<contractnumber></contractnumber>
<email></email>
<language></language>
<validuntil></validuntil>
<changeid></changeid>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<licensedata>
<licensekey></licensekey>
</licensedata>
<intresult>0</intresult>
</teamdrive>
The <licensekey>
tag in the <licensedata>
block is new in version 3.5.10. The <number>
tag was previously used to return the license key number. This tag is still present, but is
deprecated and will be removed in a future version of the Registration Server.
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30132: Unknown account
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30129: Specify either an account or a user as owner of the license
- -30203: Productname unknown
- -30204: Type unknown
- -30205: Feature unknown
- -30206: Limit unknown or invalid
- -30122: Invalid date
- -30110: Holder email invalid / required
- -30115: Invalid language
- -30125: License creation of the given type is not permitted
- -30127: License with reference already exists
Error -30125 is generated if <type>
is one-off-trial
or 1-year-professional
.
createlicensewithoutuser¶
This call has been deprecated in version 4.0. It is now identical to the createlicense call.
assignusertolicense¶
This call sets the owner of a license to a particular user. If it is
the first license to be owned by the user, then it is set to the default
license of the user, unless <isdefault>
(new in
Registration Server version 4.0 or later) is set to false
.
Note
This function does not set the license used by the user. This is done using assignlicensetoclient.
If createlicensewithoutuser was used, then this call can be used to specify the owner of the license. If the license is already owned by another user or an account, then a -30211 error will be returned.
You can set the <removecurrentuser>
tag to true
(false
by default)
to automatically remove the previous owner (this feature is new in version 4.0).
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The license is specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
The <changeid>
tag is an optional text that will be recorded in the change
history of the license.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>assignusertolicense</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<licensekey></licensekey>
<licensereference></licensereference>
<removecurrentuser>true|false</removecurrentuser>
<isdefault>true|false</isdefault>
<changeid></changeid>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30201: Unknown license
- -30214: License deleted
- -30211: License already owned by another user or account
assignlicensetoclient¶
This call sets the license used by a user. The license need not belong to the user.
Note
This function does not set the owner of the license. This can be done using the assignusertolicense call.
Since version 3.6.0 a license can be assigned to a user even when the user has no TeamDrive Client installations.
The <devicelist>
tag was removed in version 3.6.0, and will be ignored.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The license is specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>assignlicensetoclient</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<licensekey></licensekey>
<licensereference></licensereference>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30201: Unknown license
- -30214: License deleted
- -30213: License disabled
- -30212: License has expired
- -30211: License exceeded permitted usage
removeuserfromlicense¶
Call this function to remove the owner of a license. This is the complement to the assignusertolicense call which sets the owner of a license. The call also removes the license from all groups.
Note
This call does not change the license usage (see assignlicensetoclient call).
The current owner is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
.
Specifying a user is optional in version 3.6.3 or later. If not specified the call will remove the current license owner. If a user is specified and the user is not the owner of the license a -30201 error is returned. Note that versions 3.6.0 and 3.6.1 incorrectly removed the owner from the license regardless of which user was specified.
The license is specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
The <changeid>
tag is an optional text that will be recorded in the change history
of the license.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>removeuserfromlicense</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<licensekey></licensekey>
<licensereference></licensereference>
<changeid></changeid>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30201: Unknown license
deactivatelicense¶
Deactivate a license specified by <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
If the license is already deactivated, this call will be ignored (version 3.6.3).
The <changeid>
tag is an optional text that will be recorded in the change history of the license.
The <sendmail>
tag specifies whether the owner should be notified via email of the license
change (default false
). If the license has no owner, then the license holder email
will be used (if this exists). A change notification email is always sent to the provider of the
license using the License email address of the provider.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>deactivatelicense</command>
<requesttime></requesttime>
<distributor></distributor>
<licensekey></licensekey>
<licensereference></licensereference>
<changeid></changeid>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Errors returned by this call include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30201: Unknown license
- -30214: License deleted
Error -30210, is no longer returned by version 3.6.3.
activatelicense¶
Activate a license specified by <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
If the license is not deactivated, this call will be ignored (version 3.6.3).
The <changeid>
tag is an optional text that will be recorded in the change history of the license.
The <sendmail>
tag specifies whether the owner should be notified via email of the license
change (default false
). If the license has no owner, then the license holder email
will be used (if this exists). A change notification email is always sent to the provider of the
license using the License email address of the provider.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>activatelicense</command>
<requesttime></requesttime>
<distributor></distributor>
<licensekey></licensekey>
<licensereference></licensereference>
<changeid></changeid>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Errors returned by this call include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30201: Unknown license
- -30214: License deleted
Error -30210, is no longer returned by version 3.6.3.
deletelicense¶
Delete a license specified by <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
This function is available since version 3.5.0.
The <changeid>
tag is an optional text that will be recorded in the change history of the license.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>deletelicense</command>
<requesttime></requesttime>
<distributor></distributor>
<licensekey></licensekey>
<licensereference></licensereference>
<changeid></changeid>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30201: Unknown license
upgradelicense¶
Upgrade a license specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
A user may be identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
.
Specifying a user is optional.
The <changeid>
tag is an optional text that will be recorded in the change history of the license.
<featurevalue>
is a comma separated list of the following values: webdavs
, professional
,
secureoffice
, agent
, inbox
and restricted
. Since version 3.6.3 the
integer values of the features added together may be specified in place of the text values.
This tag is optional when creating the first license belonging to a user
(i.e. the user’s default license).
As of version 4.1 the features: banner
and personal
are no longer supported and will
result in a -30205 error.
The <limit>
tag is optional. If specified the usage limit of the license is increased by
the given amount.
The <changeid>
tag is an optional text that will be recorded in the change history of the license.
The <sendmail>
tag specifies whether the owner should be notified via email of the license
change (default false
). If the license has no owner, then the license holder email
will be used (if this exists). A change notification email is always sent to the provider of the
license using the License email address of the provider.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>upgradelicense</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<licensekey></licensekey>
<licensereference></licensereference>
<featurevalue></featurevalue>
<limit></limit>
<changeid></changeid>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30201: Unknown license
- -30214: License deleted
- -30205: Feature unknown
- -30206: Limit unknown or invalid
- -30202: License upgrade failed
The -30202 should not occur because it is the result of an internal Registration Server error.
upgradedefaultlicense¶
Upgrade the feature set of a default license.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The <featurevalue>
tag is optional. If specified the features are added to the license.
<featurevalue>
is a comma separated list of the following values:
webdavs
, personal
, professional
, restricted
, banner
,
secureoffice
, inbox
and agent
. The integer values of the features added
together may be specified in place of the text values.
The <changeid>
tag is an optional text that will be recorded in the change history of the license.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>upgradedefaultlicense</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<featurevalue></featurevalue>
<changeid></changeid>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30201: Unknown license
- -30214: License deleted
- -30205: Feature unknown
downgradelicense¶
Downgrade a license.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
Specifying a user is optional.
The license is specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
The <featurevalue>
tag is optional. If specified the features are removed from the license.
<featurevalue>
is a comma separated list of the following values: webdavs
, personal
,
professional
, restricted
, banner
, secureoffice
, inbox
and agent
. Since
version 3.6.3 the integer values of the features added together may be specified in place of
the text values.
The <decreaselimit>
tag is optional. If specified the usage limit of the license is decreased by
the given amount.
<forcedecrease>
is optional, the default value is false
. If false
the
downgrade may faile because the license usage will exceed the new usage limit (see
error -30208 below).
If <forcedecrease>``is set to ``true
, then users using the license will be removed
from the license, so that downgrad is possible. Removing the license from a users will begin
with the oldest active user. This will only be done as far as it is required to ensur that
the usage limit of the license is not exceeded.
The <changeid>
tag is an optional text that will be recorded in the change history of the license.
The <sendmail>
tag specifies whether the owner should be notified via email of the license
change (default false
). If the license has no owner, then the license holder email
will be used (if this exists). A change notification email is always sent to the provider of the
license using the License email address of the provider.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>downgradelicense</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<licensekey></licensekey>
<licensereference></licensereference>
<featurevalue></featurevalue>
<decreaselimit></decreaselimit>
<forcedecrease>true|false</forcedecrease>
<changeid></changeid>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30201: Unknown license
- -30214: License deleted
- -30205: Feature unknown
- -30206: Limit unknown or invalid
- -30208: Downgrade not possible
The error -30206 occurs if the <decreaselimit>
value causes an invalid usage
limit for the license.
The -30208 error can occur if the downgrade is not forced (<forcedecrease>
)
and the number of users will exceed the usage limit.
downgradedefaultlicense¶
Downgrade the default license of a user.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The <featurevalue>
tag is optional. If specified the features are removed from the license.
<featurevalue>
is a comma separated list of the following values:
webdavs
, personal
, professional
, restricted
, banner
,
secureoffice
, inbox
and agent
. The integer values of the features added
together may be specified in place of the text values.
The <changeid>
tag is an optional text that will be recorded in the change history of the license.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>downgradedefaultlicense</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<featurevalue></featurevalue>
<changeid></changeid>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30201: Unknown license
- -30214: License deleted
- -30205: Feature unknown
getusedlicense¶
Get a list of licenses. You must either specify a user or a license, or both.
If a user is specified, this function will return a list of licenses belonging to the user. If a license is specified, the the result will be limited to the specified license.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
A license is specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
This call also returns deleted licenses.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>getusedlicense</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<licensekey></licensekey>
<licensereference></licensereference>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<licensedata>
<license>
<created></created>
<productid></productid>
<productname></productname>
<type></type>
<licensekey></licensekey>
<licensereference></licensereference>
<featurevalue></featurevalue>
<featuretext></featuretext>
<validuntil></validuntil>
<limit></limit>
<used></used>
<status></status>
<isdefault></isdefault>
<isgroup></isgroup>
<licenseemail></licenseemail>
<userlist></userlist>
</license>
<license>...</license>
...
</licensedata>
</teamdrive>
<userlist>
is a comma separated list of usernames of the users that are using the
license.
The <licensekey>
tag in the <license>
block is new in version 3.5.10. The <number>
tag was previously used to return the license key number. This tag is still present, but is
deprecated and will be removed in a future version of the Registration Server.
The <licensereference>
tag returned in the <license>
block is new in version 3.6.3.
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30201: No license data found
Note that this function will never return an empty list. If no license data is found the -30201 error is generated.
setlicensereference¶
Set the license reference of the license specified by <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
<newlicensereference>
specifies the new license (version 3.6.3).
If <newlicensereference>
is missing, then the new reference is specified
by <licensereference>
and <licensekey>
must be used to identify
the license.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setlicensereference</command>
<requesttime></requesttime>
<distributor></distributor>
<licensekey></licensekey>
<licensereference></licensereference>
<newlicensereference></newlicensereference>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30201: Unknown license
- -30214: License deleted
- -30127: License with reference already exists
removelicense¶
This call removes the license in use by the user. It undoes the work done by the assignlicensetoclient call.
To remove a license you must be the Provider of the user, or of the license to be removed.
An attempt to remove a user’s default license is ignored. If the license is not in use by the user this function will also be ignored.
When a license is removed, the user’s license is set to the default license for that user. This may either be a default license created specifically for the user, or a default license specified for all users of a Provider (see DEFAULT_LICENSEKEY).
The user is specified by either <username>
, <useroremail>
, <reference>
or
<authid>
.
The license is specified by <licensekey>
or <licensereference>
.
The <devicelist>
tag was removed in version 3.6.0, and will be ignored.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>removelicense</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<licensekey></licensekey>
<licensereference></licensereference>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Errors returned by this call include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30201: Unknown license
- -30217: Cannot remove the user’s default license/provider default license
- -30218: License is used by the group of the user and cannot be removed
cancellicense¶
Deactivate a license and reduce the number the license usage limit. Use the deletelicense call to actually delete the license.
Previous to version 3.5.0, this function deleted the license.
The <decreaselimit>
specifies the amount by which the license usage limit
should be reduced. If this value should be set to “0” in order for the license
to be actually deactivated.
If <decreaselimit>
is set to a positive value, the license is not deactivated
and the function behaves like the downgradelicense call, with <forcedecrease>
set to false
.
If a user is specified, then the license must belong to the specified user.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
The license is specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
The <changeid>
tag is an optional text that will be recorded in the change history of the license.
The <sendmail>
tag specifies whether the owner should be notified via email of the license
change (default false
). If the license has no owner, then the license holder email
will be used (if this exists). A change notification email is always sent to the provider of the
license using the License email address of the provider.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>cancellicense</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<licensekey></licensekey>
<licensereference></licensereference>
<decreaselimit></decreaselimit>
<changeid></changeid>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30201: Unknown license
- -30214: License deleted
- -30205: Feature unknown
- -30206: Limit unknown or invalid
- -30207: Cancel license failed
The error -30207 is generated if usage limit of the license is to be set below the current usage of the license.
setdistributor¶
Set the Provider of a user.
This function can only be accessed by the Default Provider or by Providers which are managed by a super provider.
The <newdistributor>
tag specifies the new Provider of the user.
<depotreference>
(version 4.0) is used if a new depot is created
after the user’s Provider has been changed.
<licensereference>
is used if a new license must be created after
the user’s Provider has been changed.
Note that prior to version 3.5.2 this function could not handle more
that one Depot, in case <switchdepot>
was set to true
.
The <sendmail>
(new in version 4.0) tag indicates whether the user receives
an email or not. If the user’s depot configuration changes due to this call, then
the user will be sent a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setdistributor</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<newdistributor></newdistributor>
<switchdepot>true|false</switchdepot>
<switchlicense>true|false</switchlicense>
<depotreference></depotreference>
<licensereference></licensereference>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30127: License with reference already exists
setcapability¶
Add or remove user capabilities.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
<action>
must be set to either set
or unset
.
<capability>
may be one of the following: keyrepository
, newsletter
,
mailbounced
or webportal
.
The webportal
setting was added in version 3.6.0.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setcapability</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<action>set|unset</action>
<capability></capability>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30125: Action must be set or unset
- -30204: Unknown capability
wipedevice¶
Wipe a user device. All TeamDrive data will be removed from the Device.
Note
This operation is permanent and cannot be undone.
The user is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
(see Identifying Users for details).
<devicelist>
is an optional list of device IDs of the user. If empty, all
devices of the user will be wiped.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>wipedevice</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<devicelist></devicelist>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
setlicensecontract¶
Set license contract value of a license.
The license is specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
The <changeid>
tag is an optional text that will be recorded in the change history of the license.
The <sendmail>
tag specifies whether the owner should be notified via email of the license
change (default false
). If the license has no owner, then the license holder email
will be used (if this exists). A change notification email is always sent to the provider of the
license using the License email address of the provider.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setlicensecontract</command>
<requesttime></requesttime>
<distributor></distributor>
<licensekey></licensekey>
<licensereference></licensereference>
<contractnumber></contractnumber>
<changeid></changeid>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30201: Unknown license
- -30214: License deleted
setlicenseemail¶
Set the holder email address of the license.
The license is specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
The <changeid>
tag is an optional text that will be recorded in the change history of the license.
The <sendmail>
tag specifies whether the owner should be notified via email of the license
change (default false
). If the license has no owner, then the license holder email
will be used (if this exists). A change notification email is always sent to the provider of the
license using the License email address of the provider.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setlicenseemail</command>
<requesttime></requesttime>
<distributor></distributor>
<licensekey></licensekey>
<licensereference></licensereference>
<email></email>
<changeid></changeid>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30201: Unknown license
- -30214: License deleted
- -30110: Holder email invalid / required
setlicensefeatures¶
Set the features of a license.
The license is specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
The <changeid>
tag is an optional text that will be recorded in the change history of the license.
The <sendmail>
tag specifies whether the owner should be notified via email of the license
change (default false
). If the license has no owner, then the license holder email
will be used (if this exists). A change notification email is always sent to the provider of the
license using the License email address of the provider.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setlicenselanguage</command>
<requesttime></requesttime>
<distributor></distributor>
<licensekey></licensekey>
<licensereference></licensereference>
<language></language>
<changeid></changeid>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30201: Unknown license
- -30214: License deleted
- -30205: Feature unknown
setlicenselanguage¶
Set the language of the license holder.
The license is specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setlicenselanguage</command>
<requesttime></requesttime>
<distributor></distributor>
<licensekey></licensekey>
<licensereference></licensereference>
<language></language>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30201: Unknown license
- -30214: License deleted
- -30115: Invalid language
setlicensetype¶
Set the type of a license.
The license is specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
The <type>
tag may be set to one of the following: permanent
, monthly
, yearly
or nfr
(not for resale). one-off-trial
and 1-year-professional
cannot be set via the
API.
The <changeid>
tag is an optional text that will be recorded in the change history of the license.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setlicensetype</command>
<requesttime></requesttime>
<distributor></distributor>
<licensekey></licensekey>
<licensereference></licensereference>
<type></type>
<changeid></changeid>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30201: Unknown license
- -30214: License deleted
- -30204: Type unknown
- -30125: License creation of the given type is not permitted
Error -30125 is generated if <type>
is one-off-trial
or 1-year-professional
.
setlicensevaliduntil¶
Set a license expiry date.
The license is specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
The <validuntil>
tag must be set to a valid date in the future. the date format used is
“YYYY-MM-DD” (“MM/DD/YYYY” will also be accepted).
Set <validuntil>
to remove
if you want to remove the expiry date.
The <changeid>
tag is an optional text that will be recorded in the change history of the license.
The <sendmail>
tag specifies whether the owner should be notified via email of the license
change (default false
). If the license has no owner, then the license holder email
will be used (if this exists). A change notification email is always sent to the provider of the
license using the License email address of the provider.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setlicensevaliduntil</command>
<requesttime></requesttime>
<distributor></distributor>
<licensekey></licensekey>
<licensereference></licensereference>
<validuntil></validuntil>
<changeid></changeid>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30201: Unknown license
- -30214: License deleted
- -30122: Invalid date
resetlicensepassword¶
This call resets the password of a license and sends an email using the template “web-newlicensepassword” with a temporary password to the license holder email.
The license is specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
The <sendmail>
tag specifies whether the owner should be notified via email of the license
change. Note: unlike other API calls that change license data the default value for
<sendmail>
tag is true
.
If the license has no owner, then the license holder email will be used (if this exists). A change notification email is always sent to the provider of the license using the License email address of the provider.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>resetlicensepassword</command>
<requesttime></requesttime>
<distributor></distributor>
<licensekey></licensekey>
<licensereference></licensereference>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30201: Unknown license
- -30214: License deleted
setlicensepassword¶
This call sets a new password for a license.
The license is specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
The <tmppassword>
tag must be set to the temporary password sent
by the resetlicensepassword call.
<password>
is set to the new password.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setlicensepassword</command>
<requesttime></requesttime>
<distributor></distributor>
<licensekey></licensekey>
<licensereference></licensereference>
<tmppassword></tmppassword>
<password></password>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30201: Unknown license
- -30214: License deleted
- -30101: Wrong or invalid password
changelicensepassword¶
This call changes the password of a license (available since version 3.5.1).
The license is specified using <licensekey>
(<licensenumber>
before
version 3.5.10) or <licensereference>
(as of version 3.6.0).
The <password>
tag must be set to the current password of the license.
<newpassword>
is set to the new password.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>changelicensepassword</command>
<requesttime></requesttime>
<distributor></distributor>
<licensekey></licensekey>
<licensereference></licensereference>
<password></password>
<newpassword></newpassword>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30201: Unknown license
- -30214: License deleted
- -30101: Wrong or invalid password
sendtemplatemail¶
Send a template based email to a user or other recipient.
This API call is available since version 3.6.0.
A user may be identified by on one of the following tags: <username>
,
<useroremail>
, <reference>
or <authid>
. Specifying the user in this
manner is optional.
Alternatively, you can specify the recipient email address using the <recipient>
tag. <recipient>
may also be set to support
to send an email to the
user specified by the SUPPORT_EMAIL
Provider setting
(see SUPPORT_EMAIL).
<template>
specifies the name of a standard email template.
<language>
is optional, if not specified, the language of the user or
Provider will by used.
Set <sender>
to the email address of the sender or user
to indicate that
the user or Provider’s email address should be specified as the sender of the email.
Set the <test>
tag to true
in order to test certain standard templates.
The default is false
.
<fields>
specifies a list of custom fields for the email
template. The values listed here replace the associated field values
in the email template. For example, the value in the <contact-person>
tag will replace the [[CONTACT-PERSON]]
field in the email
template.
These values override any values that have been retrieved for a user or Provider.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>sendtemplatemail</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<template></template>
<language></language>
<sender></sender>
<recipient></recipient>
<test>true|false</test>
<origin></origin>
<fields>
<os></os>
<version></version>
<license-type></license-type>
<device-name></device-name>
<usb></usb>
<registration-email></registration-email>
<contact-person></contact-person>
<contact-email></contact-email>
<contact-tel></contact-tel>
<description></description>
...
</fields>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Error results include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30216: Template not found: [template]
- -30110: Provider setting <recipient>_EMAIL is not specified
- -30110: No email address specified
createaccount¶
This call creates an account (available since version 4.0).
The <accountcode>
tag must contains a 4-character uppercase
code. This code is used to generate the account key which has the
following format: [provider_code]-[account_code]-9999
, where
9999
is a random 4-digit number generated by the Registration
Server to ensure that the account key is unique.
The account key created by the Registration server is returned
in the <accountkey>
tag in the reply.
<accountreference>
is an optional external
identifier of the account. Both the account key and the account
reference must be globally unique.
The optional <manager>
tag specifies the username of the manager of the
account.
The optional <memberlist>
tag may be used to specify the first members
of the account. <memberlist>
is a comma separated list of usernames.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>createaccount</command>
<requesttime></requesttime>
<distributor></distributor>
<accountcode></accountcode>
<accountreference></accountreference>
<manager></manager>
<memberlist></memberlist>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<account>
<accountkey></accountkey>
</account>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30129: Account number not specified
- -30133: Account key already exists
- -30127: Account reference already exists
- -30135: User is already a member of another account
updateaccount¶
Update an account (available since version 4.0). The account
to be update must specified using the <accountkey>
or
<accountreference>
tag.
The clientsettings
tag is required. This specifies the new
client level settings for all users of the account.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>updateaccount</command>
<requesttime></requesttime>
<distributor></distributor>
<accountkey></accountkey>
<accountreference></accountreference>
<clientsettings></clientsettings>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30129: Account key or reference not specified
- -30132: Unknown account
deleteaccount¶
Delete an account (available since version 4.0). The account
to be deleted must specified using the <accountkey>
or
<accountreference>
tag.
The <sendmail>
tag indicates whether the user receives an email or not. If
a user’s depot configuration changes due to this call, the user will be sent
a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>deleteaccount</command>
<requesttime></requesttime>
<distributor></distributor>
<accountkey></accountkey>
<accountreference></accountreference>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30129: Account key or reference not specified
- -30132: Unknown account
addusertoaccount¶
Add a user to an account (available since version 4.0). The account
must specified using the <accountkey>
or <accountreference>
tag.
The user to be added to the account is specified using one of the
following tags: <username>
, <useroremail>
, <reference>
or
<authid>
.
<accountprivileges>
may either be set to member
, manager
or member,manager
(to add a user as both member and manager).
A user may be a manager of several accounts, but may be a member of only one account.
The tag <removemembership>
(new in version 4.1.1) specifies whether
the user’s current account membership should be removed before adding
the user as a member to a new account.
By default the value of this value is false
. In this case, an error
occurs if the user is added as a member of an account, and is already
a member of some other account.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>addusertoaccount</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<accountkey></accountkey>
<accountreference></accountreference>
<accountprivileges>member|manager</accountprivileges>
<removemembership>true|false</removemembership>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30129: Account not specified or incorrect privileges
- -30132: Unknown account
- -30135: User already a member of another account
- -30201: Unknown license
- -30214: License deleted
- -30213: License disabled
- -30212: License has expired
- -30211: License exceeded permitted usage
inviteusertoaccount¶
Invite a user to an account via email. This function was added in
Registration Server version 4.5. The account must specified using the
<accountkey>
or <accountreference>
tag.
The user to be invited to the account is specified using one of the
following tags: <username>
, <useroremail>
, <reference>
or
<authid>
.
<accountprivileges>
may either be set to member
, manager
or member,manager
. A user may be a manager of several accounts,
but may be a member of only one account.
This call will send the “account-manager-invitation” or “account-member-invitation” email template depending on the type of invitation. The user is provided with links in the email to either accept or reject the invitation.
Pending invitations can be removed (before they are accepted) by removing the invited user from the account. If a user rejects an invitation 3 times the user cannot be invited to the account again.
The <messagetext>
tag can be used to place an invitation text from the
inviting user in the email.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>inviteusertoaccount</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<accountkey></accountkey>
<accountreference></accountreference>
<accountprivileges></accountprivileges>
<messagetext></messagetext>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30129: Account not specified or incorrect privileges
- -30132: Unknown account
- -30135: User already a member of another account
- -30114: Invited user does not belong to account provider
- -30201: Unknown license
- -30214: License deleted
- -30213: License disabled
- -30212: License has expired
- -30211: License exceeded permitted usage
removeuserfromaccount¶
Remove a user from an account (available since version 4.0). The account
must specified using the <accountkey>
or <accountreference>
tag.
The user to be removed from the account is specified using one of the
following tags: <username>
, <useroremail>
, <reference>
or
<authid>
.
If the user is not a member of the account, no error occurs.
You can specify what account privileges should be removed from the
user using the <accountprivileges>
tag. Any comma separated
list of member
, manager
or guest
, is allowed. If not
specified, the user is removed from the account completely.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>removeuserfromaccount</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<accountkey></accountkey>
<accountreference></accountreference>
<accountprivileges>member|manager|guest</accountprivileges>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30129: Account not specified
- -30132: Unknown account
assignaccounttolicense¶
This call sets the owner of a license to an account. If the license is already owned by a user that is not a member (or manager) of the account, then a -30211 error will be returned.
If the license is owned by a user of the account, then the license may only be transfered to the account if the license is either not the owner’s default license, or the license has a usage limit greater than one.
The account must specified using the <accountkey>
or <accountreference>
tag. The license is specified using <licensekey>
or <licensereference>
.
The <changeid>
tag is an optional text that will be recorded in the change
history of the license.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>assignaccounttolicense</command>
<requesttime></requesttime>
<distributor></distributor>
<accountkey></accountkey>
<accountreference></accountreference>
<licensekey></licensekey>
<licensereference></licensereference>
<changeid></changeid>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30129: Account not specified
- -30132: Unknown account
- -30201: Unknown license
- -30214: License deleted
- -30211: License already owned by another user or account
removeaccountfromlicense¶
Call this function to remove the ownership of a license by an account. This is the complement to the assignaccounttolicense call which sets the owner of a license to an account. The call also removes the license from all groups.
The account may specified using the <accountkey>
or <accountreference>
tag. Specifying an account is optional. If the account is specified, then the
account must be the owner of the account or a -30201 error is returned.
The license is specified using <licensekey>
or <licensereference>
.
The <changeid>
tag is an optional text that will be recorded in the change history
of the license.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>removeaccountfromlicense</command>
<requesttime></requesttime>
<distributor></distributor>
<accountkey></accountkey>
<accountreference></accountreference>
<licensekey></licensekey>
<licensereference></licensereference>
<changeid></changeid>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30132: Unknown account
- -30201: Unknown license
setdepotaccount¶
Set the account of a depot. A depot may only belong to one account.
The account must specified using the <accountkey>
or <accountreference>
tag.
The depot is either identified by the <depot>
tag, which contains a depot
document, or by the <hosturl>
and <depotid>
tags which identify an existing
depot. If the depot is unknown on the Registration Server it will be fetched from
the Host Server.
If the depot provided is new to the Registration Server, then <depotreference>
is set as external reference to the depot.
The <sendmail>
tag indicates whether the user receives an email or not. If
the user’s depot configuration changes due to this call, the user will be sent
a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setdepotaccount</command>
<requesttime></requesttime>
<distributor></distributor>
<accountkey></accountkey>
<accountreference></accountreference>
<depot></depot>
<hosturl></hosturl>
<depotid></depotid>
<depotreference></depotreference>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30129: Account not specified
- -30132: Unknown account
- -30123: Depot document/identifiers missing or invalid
- -30124: Depot not found
- -30134: Depot already has an account
removedepotaccount¶
Remove the account of a Depot. This function will not return an error if the depot account has already been removed.
The account may be specified using the <accountkey>
or <accountreference>
tag. If specified, then the account must match the current account of the
depot or a -30124 error will be returned.
The depot is either identified by the <depot>
tag, which contains a depot
document, or by the <hosturl>
and <depotid>
tags which identify an existing
depot.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>removedepotaccount</command>
<requesttime></requesttime>
<distributor></distributor>
<accountkey></accountkey>
<accountreference></accountreference>
<depot></depot>
<hosturl></hosturl>
<depotid></depotid>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30132: Unknown account
- -30123: Depot document/identifiers missing or invalid
- -30124: Depot not found or does not belong to the account
setgroupaccount¶
Set the account of a group. A group may only belong to one account.
The account must specified using the <accountkey>
or <accountreference>
tag.
The group must be specified using the <groupreference>
tag.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setgroupaccount</command>
<requesttime></requesttime>
<distributor></distributor>
<accountkey></accountkey>
<accountreference></accountreference>
<groupreference></groupreference>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30130: Unknown group or the group does not belong to the provider
- -30129: Group or Account reference not specified
- -30132: Unknown account
- -30134: Depot already has an account
removegroupaccount¶
Remove the account of a group. If the group already has no account, then this call is ignored.
The account may be specified using the <accountkey>
or <accountreference>
tag. If specified and the account does not match the group’s account then
error -30130 is returned.
The group must be specified using the <groupreference>
tag.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>removegroupaccount</command>
<requesttime></requesttime>
<distributor></distributor>
<accountkey></accountkey>
<accountreference></accountreference>
<groupreference></groupreference>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30132: Unknown account
- -30130: Unknown group or the group does not belong to the account
getaccountdata¶
Return data about an account.
The account must be specified using the <accountkey>
or <accountreference>
tag.
Use the optional <settings>
tag to retrieve Registration Server and
provider settings, by specifying a comma separated list of settings names
(Registration Server 4.5.1 or later). If included the result will contains
a <settings>
block with the names (as tags) and values of the settings
(see getsettings for further details).
The tag <includemembers>
is optional, and is true
by default. If set to
true
the list of account members (<memberlist>
block) will be included result.
The tag <includegroups>
is optional, and is true
by default. If set to
true
the list of account groups (<grouplist>
block) will be included result.
The tag <includedepots>
is optional, and is true
by default. If set to
true
the list of account depots (<depotlist>
block) will be included result.
The tag <includelicenses>
is optional, and is true
by default. If set to
true
the list of account licenses (<licenselist>
block) will be included result.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>getaccountdata</command>
<requesttime></requesttime>
<distributor></distributor>
<accountkey></accountkey>
<accountreference></accountreference>
<settings>ClientSettings,CLIENT_SETTINGS,..</settings>
<includemembers>true|false</includemembers>
<includegroups>true|false</includegroups>
<includedepots>true|false</includedepots>
<includelicenses>true|false</includelicenses>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<settings>
<ClientSettings>...</ClientSettings>
<CLIENT_SETTINGS>...</CLIENT_SETTINGS>
...
</settings>
<account>
<distributor></distributor>
<accountkey></accountkey>
<accountreference></accountreference>
<created></created>
<clientsettings></clientsettings>
<memberlist>
<member>
<username></username>
<email></email>
<privileges></privileges>
<username></username>
<jointime></jointime>
</member>
<member>...</member>
...
</memberlist>
<grouplist>
<group>
<distributor></distributor>
<groupname></groupname>
<groupreference></groupreference>
<grouptype>provider|user</grouptype>
<manager></manager>
<manageremail></manageremail>
<groupcreated></groupcreated>
<groupmodified></groupmodified>
</group>
<group>...</group>
...
</grouplist>
<depotlist>
<depot>
<depotname></depotname>
<depotreference></depotreference>
<hosturl></hosturl>
<depotid></depotid>
<globalid></globalid>
<username></username>
<contractnumber></contractnumber>
<storagelimit></storagelimit>
<transferlimit></transferlimit>
<created></created>
<etl></etl>
<status></status>
<storageused></storageused>
<transferused></transferused>
</depot>
<depot>...</depot>
...
</grouplist>
<licenselist>
<license>
<created></created>
<productid></productid>
<productname></productname>
<type></type>
<licensekey></licensekey>
<licensereference></licensereference>
<featurevalue></featurevalue>
<featuretext></featuretext>
<validuntil></validuntil>
<limit></limit>
<used></used>
<status></status>
<isdefault>true|false</isdefault>
<isgroup>true|false</isgroup>
<licenseemail></licenseemail>
</license>
<license>...</license>
...
</licenselist>
</account>
</teamdrive>
The <privileges>
tag in the <memberlist>
, is the privilege level and status of
the user in the account. This is a comma separated list of the following:
member
: the user is regular member of the account.manager
: the user is a manager of the account.guest
: the user has been invited to join a space by a member of the account. This status cannot be combined with other privileges.invited
: the user has been invited to join the account by a manager if the account. This status is combined withmember
andmanager
to indicate with which privilege the user has been invited.invitation-rejected
: the manager invitation has been rejected by the user.
Only users with the member
status that are not invited
or invitation-rejected
are actual members of the account.
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30132: Unknown account
- -30129: Account not specified
creategroup¶
This call creates a group (available since version 4.0).
The manager of the group is identified using one of the following tags:
<username>
, <useroremail>
, <reference>
or <authid>
.
<groupname>
is the name or title of the group that is used for display
purposes. <groupreference>
is a Registration Server wide unique identifier
for the group. <grouptype>
may either be provider
or user
.
A provider
group may only be managed in the Admin Console. A user
group
may also be administrated by the group manager in the Group Management Portal.
The <clientsettings>
are added to the user’s Client Settings as
specified by the CLIENT_SETTINGS
Provider Setting (see
CLIENT_SETTINGS). The group Client Settings take priority over the Provider
values.
You may specify a license to be assigned to the group using the <licensekey>
or <licensereference>
tags. The license must belong to the group
manager. When a license is assigned to a group, all members of the group
are considered to be using the license whether they have accepted the
invitation or not.
A depot may also be set for the group by specifying a depot document in the
<depot>
tag, or by using the <hosturl>
and <depotid>
tags to
identify an existing depot belonging to the group manager.
If the depot specified with the <depot>
tag is new, then <depotreference>
will be set as the external reference to the depot.
The <sendmail>
tag indicates whether the user receives an email or not. If
the user’s depot configuration changes due to this call, the user will be sent
a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>creategroup</command>
<requesttime></requesttime>
<distributor></distributor>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<groupname></groupname>
<groupreference></groupreference>
<grouptype>provider|user</grouptype>
<clientsettings></clientsettings>
<licensekey></licensekey>
<licensereference></licensereference>
<depot></depot>
<hosturl></hosturl>
<depotid></depotid>
<depotreference></depotreference>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30129: Required parameters not specified
- -30204: Invalid group type
- -30201: Unknown license or does not belong to the group manager
- -30214: License deleted
- -30213: License disabled
- -30212: License has expired
- -30127: Group with given reference already exists
- -30123: Depot document/identifiers missing or invalid
- -30124: Depot not found or does not belong to the user
deletegroup¶
This call deletes a group (available since version 4.0). The group
to be deleted is specified using the <groupreference>
tag.
The group manager may be specified in the request using one of the following
tags: <username>
, <useroremail>
, <reference>
or <authid>
.
Error -30130 will occur if the specified user is not the manager of the group.
The <sendmail>
tag indicates whether the user receives an email or not. If
the user’s depot configuration changes due to this call, the user will be sent
a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>deletegroup</command>
<requesttime></requesttime>
<distributor></distributor>
<groupreference></groupreference>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30130: Unknown group or the group does not belong to the Provider or user
- -30129: Group reference not specified
- -30130: Unknown group or the group does not belong to the provider or user
inviteusertogroup¶
Invite a user to a group (available since version 4.0). The group must
be specified using the <groupreference>
tag.
The group manager may be specified in the request using one of the following
tags: <username>
, <useroremail>
, <reference>
or <authid>
.
Error -30130 will occur if the specified user is not the manager of the group.
<inviteduser>
is the username of the user to be invited.
Invited users are sent an email which contains two links. One link is used to join the group, and the other may be used to reject the invitation. If an invitation is rejected 3 times, a user may no longer be invited.
The <invitetype>
tag specifies if the user should be invited as a member
or a friend. The default is member.
Users can only be a member of one group (but can be a friend of any number of groups).
This means that if a user accepts an invitation as a member, then the user will be removed
as a member from any other group. In this case, the user’s status in that group reverts
to invited-as-member
.
If invited as a member and the group has a license then the user is considered to be using the license even if the user has not accepted the invitation.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>inviteusertogroup</command>
<requesttime></requesttime>
<distributor></distributor>
<groupreference></groupreference>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<inviteduser></inviteduser>
<invitetype>member|friend</invitetype>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30130: Unknown group or the group does not belong to the provider or user
- -30108: Invited user unknown or does not belong to the provider
- -30131: The user cannot be invited because invitation was rejected too many times
- -30129: Group reference not specified, Unknown invitation type:, Unknown membership status:
removeuserfromgroup¶
Remove a user from a group (available since version 4.0) or cancel an
invitation to a group. The group must be specified using the
<groupreference>
tag.
The group manager may be specified in the request using one of the following
tags: <username>
, <useroremail>
, <reference>
or <authid>
.
Error -30130 will occur if the specified user is not the manager of the group.
<removeuser>
is the username of the user to be removed.
No error occurs if the user has already been removed from the group, or is not a member of the group. Removing a user from a group will reduce the usage of any license used by the group accordingly.
The number of times a user has rejected invitation to the group is not reset by removing the user from the group.
The <sendmail>
tag indicates whether the user receives an email or not. If
the user’s depot configuration changes due to this call, the user will be sent
a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>removeuserfromgroup</command>
<requesttime></requesttime>
<distributor></distributor>
<groupreference></groupreference>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<removeuser></removeuser>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30130: Unknown group or the group does not belong to the provider or user
- -30108: Removed user unknown or does not belong to the provider
- -30129: Group reference not specified
setgrouplicense¶
Set the license used by users of a group (available since version 4.0). The group must
be specified using the <groupreference>
tag.
The group manager may be specified in the request using one of the following
tags: <username>
, <useroremail>
, <reference>
or <authid>
.
Error -30130 will occur if the specified user is not the manager of the group.
The license to be assigned to the group must be specified using the <licensekey>
or <licensereference>
tags. The license must belong to the manager
of the group. Setting the group license will automatically remove any
previously assigned licensed.
All members of the group will be counted as users of the users of the license. If the license has insufficient usages available, then an error will occur.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setgrouplicense</command>
<requesttime></requesttime>
<distributor></distributor>
<groupreference></groupreference>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<licensekey></licensekey>
<licensereference></licensereference>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30130: Unknown group or the group does not belong to the provider or user
- -30201: Unknown license or does not belong to the group manager
- -30214: License deleted
- -30213: License disabled
- -30212: License has expired
- -30211: License exceeded permitted usage
- -30129: Group reference not specified
- -30212: Group license may not have an expiry date
removegrouplicense¶
Remove the group license (available since version 4.0). The group must
be specified using the <groupreference>
tag.
The group manager may be specified in the request using one of the following
tags: <username>
, <useroremail>
, <reference>
or <authid>
.
Error -30130 will occur if the specified user is not the manager of the group.
If the group has a license it will be removed from the group. All members of the group revert to using their own default license.
The license is only removed from the group, not from the list of licenses belonging to the manager.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>removegrouplicense</command>
<requesttime></requesttime>
<distributor></distributor>
<groupreference></groupreference>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30130: Unknown group or the group does not belong to the provider or user
- -30129: Group reference not specified
setgroupdepot¶
Set the depot for a group (available since version 4.0). The group must
be specified using the <groupreference>
tag.
The group manager may be specified in the request using one of the following
tags: <username>
, <useroremail>
, <reference>
or <authid>
.
Error -30130 will occur if the specified user is not the manager of the group.
The depot to be set is specified as a depot document using the
<depot>
tag, or by specifying the <hosturl>
and <depotid>
tags to
identify an existing depot belonging to the group manager.
If the depot specified with the <depot>
tag is new, then <depotreference>
will be set as the external reference to the depot.
The <sendmail>
tag indicates whether the user receives an email or not. If
the user’s depot configuration changes due to this call, the user will be sent
a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setgroupdepot</command>
<requesttime></requesttime>
<distributor></distributor>
<groupreference></groupreference>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<depot></depot>
<depotreference></depotreference>
<hosturl></hosturl>
<depotid></depotid>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30130: Unknown group or the group does not belong to the provider or user
- -30123: Depot document/identifiers missing or invalid
- -30124: Depot not found or does not belong to depot manager
- -30129: Group reference not specified
removegroupdepot¶
Remove the Group Depot (available since version 4.0). The group must
be specified using the <groupreference>
tag.
The group manager may be specified in the request using one of the following
tags: <username>
, <useroremail>
, <reference>
or <authid>
.
Error -30130 will occur if the specified user is not the manager of the group.
The depot is only remove from the group, not from the list of depots belonging to the manager.
The <sendmail>
tag indicates whether the user receives an email or not. If
the user’s depot configuration changes due to this call, the user will be sent
a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>removegroupdepot</command>
<requesttime></requesttime>
<distributor></distributor>
<groupreference></groupreference>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30130: Unknown group or the group does not belong to the provider or user
- -30129: Group reference not specified
userjoinedgroup¶
This call can be used to confirm that a user that has been invited to a group, has accepted the invitation. In other words, it performs the function that would normally be done by the user when he clicks on the “accept link” in the group invitation email.
The group manager may be specified in the request using one of the following
tags: <username>
, <useroremail>
, <reference>
or <authid>
.
Error -30130 will occur if the specified user is not the manager of the group.
If the user was invited as a member of the group then the user will become a member of the group, and if the user was invited as a friend, then the user becomes a friend of the group.
If the user is already a member of the group, this call will not change the user’s status in the group.
The <activationcode>
tag is required and must match the activation code sent in the
email inviting the user to join the group.
The <sendmail>
tag indicates whether the user receives an email or not. If
the user’s depot configuration changes due to this call, the user will be sent
a depotchanged email. If the tag is omitted the default
depends on a number of factors described here: The <sendmail> tag.
The <origin>
tag is new version 4.0 and is described here: loginuser.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>removegroupdepot</command>
<requesttime></requesttime>
<distributor></distributor>
<activationcode></activationcode>
<sendmail>true|false</sendmail>
<origin></origin>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30106: Unknown or incorrect activation code
- -30131: User cannot join group, already rejected membership
- -30129: Group reference not specified
- -30130: Unknown group or the group does not belong to the provider or user
setgroupclientsettings¶
Set the client settings for a group (available since version 4.0). The group must
be specified using the <groupreference>
tag.
The group manager may be specified in the request using one of the following
tags: <username>
, <useroremail>
, <reference>
or <authid>
.
Error -30130 will occur if the specified user is not the manager of the group.
The Client Settings specified using the <clientsettings>
tag are added to
the Client Settings for every member of the group. The Client Settings specified by
the CLIENT_SETTINGS
Provider Setting continue to apply but the group
setting values take priority.
For a complete list of allowed settings see chapter Login and Registration Client Settings
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>setgroupclientsettings</command>
<requesttime></requesttime>
<distributor></distributor>
<groupreference></groupreference>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
<clientsettings></clientsettings>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<intresult>0</intresult>
</teamdrive>
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30130: Unknown group or the group does not belong to the provider or user
- -30129: Group reference not specified
getgroupdata¶
Return the details of a group (available since version 4.0). The group must
be specified using the <groupreference>
tag.
The group manager may be specified in the request using one of the following
tags: <username>
, <useroremail>
, <reference>
or <authid>
.
Error -30130 will occur if the specified user is not the manager of the group.
An error will occur if the group does not belong to the calling provider or the specified group manager.
Request:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<command>getgroupdata</command>
<requesttime></requesttime>
<distributor></distributor>
<groupreference></groupreference>
<username></username>
<useroremail></useroremail>
<reference></reference>
<authid></authid>
</teamdrive>
Reply:
<?xml version='1.0' encoding='UTF-8' ?>
<teamdrive>
<regversion></regversion>
<group>
<distributor></distributor>
<groupname></groupname>
<groupreference></groupreference>
<grouptype>provider|user</grouptype>
<manager></manager>
<manageremail></manageremail>
<groupcreated></groupcreated>
<groupmodified></groupmodified>
<groupdepot>
<depotname></depotname>
<depotreference></depotreference>
<hosturl></hosturl>
<depotid></depotid>
<globalid></globalid>
<username></username>
<accountkey></accountkey>
<accountreference></accountreference>
<contractnumber></contractnumber>
<storagelimit></storagelimit>
<transferlimit></transferlimit>
<created></created>
<etl></etl>
<status></status>
<storageused></storageused>
<transferused></transferused>
</groupdepot>
<licensekey></licensekey>
<licensereference></licensereference>
<clientsettings></clientsettings>
<memberlist>
<member>
<username></username>
<email></email>
<memberstate></memberstate>
<rejectcount></rejectcount>
<invitetime></invitetime>
<modifytime></modifytime>
<activationcode></activationcode>
</member>
<member>
<username></username>
<email></email>
<memberstate></memberstate>
<rejectcount></rejectcount>
<invitetime></invitetime>
<modifytime></modifytime>
<activationcode></activationcode>
</member>
...
</memberlist>
</group>
</teamdrive>
The <group>
block includes the following fields:
<distributor>
: The Provider Code of the group.<groupname>
: The name or title of the group. The name is not unique and is used for display purposes.<groupreference>
: The Registration Server wide unique identifier of the group. All groups must have a unique reference.<manager>
: The username of the group manager.<manageremail>
: The email address of the group manager.<groupcreated>
: The date of group creation.<groupmodified>
: The time of the last change to the group.<groupdepot>
: This block contains a reference to the depot of the group. This value is optional.<licensekey>
: The license key of the group license. This value is optional. If the group has a license, all members of the group will use the group license instead of one other their own licenses.<licensereference>
: The license reference of the group license.<clientsettings>
: The Client Setting for the group. These setting are added to the user’s Client Settings as specified by theCLIENT_SETTINGS
Provider Setting (see CLIENT_SETTINGS). The group Client Settings take priority over the Provider values.<memberlist>
: A list of members in the group.
The <groupdepot>
block includes the following fields:
<hosturl>
: The Host Server URL of the depot. This value has the form: http://<domainname>[:<port>]. Together with the depot ID (<depotid>
below) this value uniquely and globally identifies a depot.<depotid>
: This is the ID of the depot on the Host Server.
The <member>
block includes the following fields:
<username>
: The username of the group member.<email>
: The email address of the group member.<memberstate>
: This is the state of membership as described in the “getuserdata” call (getuserdata).<rejectcount>
: The number of times the user has refused membership.<invitetime>
: The time the first invitation was sent to the user.<modifytime>
: The last time the membership status changed.<activationcode>
: The activation code is used to identify a invitation in the invitation email sent to the user.
If a group has a license or depot, then the license or depot is only used by users of
the group when the membership state is member
. User’s continue to use their own license
and depot as in all other states, including: invited-as-member
and
membership-rejected
.
However, for the purpose of license usage, any state that involves membership is counted,
including: member
, invited-as-member
and membership-rejected
. In other
words, if a group has a license, then the license must be below its maximum usage in
order to invite a user as a member.
Error Cases¶
Possible errors include:
- -30000: Access denied to specified Provider
- -30114: Provider not found
- -30100: User unknown
- -30004: Redirect due to user belonging to another Provider
- -30120: User has been deleted
- -30119: User is disabled
- -30102: User not activated by activation mail
- -30130: Unknown group or the group does not belong to the provider or user
- -30129: Group reference not specified