Registration-Server API Calls ============================= .. _loginuserRef: Login ----- Request:: 1.0.005 loginuser .. note:: For release 1.0.003: ```` instead of ```` will be accepted Reply:: 1.0.005 **Changes to API release 1.0.003:** ```` is not longer returned, ```` and ```` were added. Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ Reply:: 1.0.005 -30100 Username does not exists Wrong Password ^^^^^^^^^^^^^^ Reply:: 1.0.005 -30101 Wrong password Account not Activated ^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30102 Account not Activated by activation mail Account Disabled (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30119 Account is disabled Account in Deletion (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30120 Account will be deleted by the user Redirect to the Website of the Distributor ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Users who try to login to the TeamDrive website will be redirected to the website of the distributor. The XML answer will return the URL in the ````\ -Tag. You have to redirect the user to that URL. Reply:: 1.0.005 -30004 [URL] .. _searchuserRef: Search user ----------- .. warning:: This function is for internal usage only. Do not allow public access. You can perform a wildcard search using '*', e.g. 'Teamdrive*' will find all data starting with 'Teamdrive...', '\*Teamdrive' will find all data ending with '...Teamdrive', and '\*Teamdrive\*' will find all data that contains '...Teamdrive...'\ . You can search by Username, Email, or both. If you search by both, the fields will be combined with an ``AND``\ . If you search without the wildcard, we will do an exact match for the string. A minimum of 3 characters (without wildcard) is required. You can limit the search to your own users by using ``true``\ . In this case you could leave username and email empty to retrieve a list with all of your users. Currently, the answer will return a maximum of 50 records. This maximum value might change in the future. The current maximum value is included within the reply's ````\ -tag. If ```` == ````, 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 ```` field. For the first search request you can set```` to 0, or omit it entirely. If a user does not belong to your distributor their email-field will be empty. The ```` block will only be returned if you send ``true`` in your request. The ```` field (under ```` ) holds the number of devices that will be returned for this user. If the user has no TeamDrive client installations, this value will be 0. In ```` you will find statistical information about the found records: ```` Amount of records in this reply ```` Total amount of records ```` Maximum amount of records the server will return in a reply If no records are found, ```` and ```` will be 0. In this case, the ```` block will not be returned. Request:: 1.0.005 searchuser true/false true/false Reply:: 1.0.005 ... ... **Changes to API release 1.0.003:** ```` and ```` was added. Error Cases ~~~~~~~~~~~ Search String too Short ^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30116 Search string to short .. _getuserdataRef: Get User Data ------------- Request:: 1.0.005 getuserdata **Changes to API release 1.0.003:** ```` was added. Value is optional and will only be used if allowed by the API (see :ref:`registration server settings/general settings/apiallowsettingdistributor`\ ). Reply:: 1.0.005 ... ... ... For a description of the fields, see :ref:`getlicensedataRef`\ . **Changes to API release 1.0.003:** ```` is not longer returned, ```` and were added, ````\ -block changed, because each user could have more than one depot, but only one default-depot. The amount of depots for the users could be found in ```` A default license is normally created when the user installs their first client application. You can create a default license with the API, if no default license already exists, by setting "CreateDefaultLicense" as described in the registration server documentation. Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above .. _registeruserRef: Account in Deletion (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Create a new Account --------------------- .. note:: The range of possible ``Username``\s depend on the ``RegNameComplexity`` setting as described in the Registration Server documentation. Similary, the length of passwords can be restricted by the ``ClientPasswordLength`` setting. However, these restriction only apply when creating a new account, they will not be checked when a user attempts to log in In case that ``UseEmailAsReference`` is defined, the username will be automatically generated and the email will be used to reference the user. All further request where username is was required can then also be sent with the user's email in place of their username. The user will get an activation email sent to their email address. You can change this behaviour with the ``AllowActivationWithoutEmail`` setting as described in the Registration Server documentation. The user's record will be assigned to the distributor. Users are mapped to distributors by either the IP-address of the request sender or the distributor-tag from the request. A Distributor can only create users belonging to them. Request:: 1.0.005 registeruser **Changes to API release 1.0.003:** ```` and ```` were added ```` was added. Value is optional and will only be used if allowed by the API (see :ref:`registration server settings/general settings/apiallowsettingdistributor`\ ). Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ Username Already Exists ^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30103 Username already exists Email is already is use ^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30104 Email already exists This error will only be returned from our own TDRS because the email field is unique there. Username Invalid, if length == 0 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30108 Username invalid Password Invalid, if length < ClientPasswordLength ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The value ``ClientPasswordLength`` is described in the Registration Server documentation. Reply:: 1.0.005 -30109 Password invalid Email Invalid, if length == 0 or missing "@" and "." ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30110 Email invalid .. _resendactivationRef: Resend Activation (added in 1.0.004) ------------------------------------ Will resend the activation mail to the user. Request:: 1.0.005 resendactivation Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ Reply:: 1.0.005 -30100 Username does not exists Account already activated ^^^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30118 Account already activated .. _activateuserRef: Activate User ------------- .. note:: To activate the user you have to send back the activation code in ````. This is the code that was sent to the user in the activation mail. Request:: 1.0.005 activateuser Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ Reply:: 1.0.005 -30100 Username does not exists Wrong Activation Code ^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30106 Wrong activation code .. _activateclientRef: Activate Client (added in 1.0.003) ---------------------------------- If a user creates their own account using a TeamDrive client application, they will be sent a *client* activation email. The activation link from that email will normally lead back to the TDRS. However, if the link does not directly point to the TDRS, the following API call can be used to activate the client. Request:: 1.0.005 activateclient Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ Wrong Activation Code ^^^^^^^^^^^^^^^^^^^^^ See above .. _sendpasswordRef: Activation Code not Found ^^^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30117 Activation code not found Forgotten Password ------------------- Request:: 1.0.005 sendpassword Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Account in Deletion (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above .. _resetpasswordRef: Reset Password (added in 1.0.003) --------------------------------- Resetting a user's password will set it to a random value. The user then had to define a new password themselves. Request:: 1.0.005 resetpassword Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled ^^^^^^^^^^^^^^^^ See above Account in Deletion ^^^^^^^^^^^^^^^^^^^ See above .. _changepasswordRef: Change password --------------- .. note:: ```` must contain the temporary password that was emailed to the after the :ref:`sendpassword ` API call. The ```` filed must contain the new password chosen by the user. Request:: 1.0.005 changepassword Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Account in Deletion (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Temporary password wrong ^^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30105 Temporary password does not match Password invalid, if length < ClientPasswordLength ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The ``ClientPasswordLength`` value is described in the registration server documentation. Reply:: 1.0.005 -30109 Password invalid Temporary password expired ^^^^^^^^^^^^^^^^^^^^^^^^^^ .. note:: The User has 10 minutes to complete password changing operation. If the time expired, the user has to request a new password again using :ref:`changepassword ` \ . Reply:: 1.0.005 -30113 Temporary password expired .. _updatepasswordRef: Update password --------------- .. note:: If a user is already logged in they can change their password directly. You have to make sure that this API command is only sent for users which have already been authenticated. Request:: 1.0.005 updatepassword Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Account in Deletion (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Password invalid, if length < ClientPasswordLength ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The ``ClientPasswordLength`` value is described in the registration server documentation. Reply:: 1.0.005 -30109 Password invalid .. _setreferenceRef: Set reference (added in 1.0.004) -------------------------------- Will set the external reference for a user Request:: 1.0.005 setreference Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled ^^^^^^^^^^^^^^^^ See above Account in Deletion ^^^^^^^^^^^^^^^^^^^ See above .. _setemailRef: Set email (added in 1.0.003) ---------------------------- .. note:: This command will change the email for the user directly without sending a confirmation email to the user like the command :ref:`changeemail `\ . Request:: 1.0.005 setemail The ```` value is optional and will only be used if allowed by the API (see :ref:`registration server settings/general settings/apiallowsettingdistributor`\ ). Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled ^^^^^^^^^^^^^^^^ See above Account in Deletion ^^^^^^^^^^^^^^^^^^^^ See above Email invalid, if length == 0 or "@" and "." are missing ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above .. _changeemailRef: Change email address -------------------- .. note:: The change-email request will be stored until the user confirms the new email address. Until then, the old email will still be displayed. Request:: 1.0.005 changeemail Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Account in Deletion (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Email already exists (in another user's registration or in their own registration) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30104 Email already exists This error will only be returned from our own TDRS, because the email field is unique there. Email invalid, if length == 0 or "@" and "." are missing ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 < primarycode>-30110 Email invalid .. _confirmnewemailRef: Confirm new email ----------------- Request:: 1.0.005 confirmnewemail Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Account in Deletion (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Wrong activation code ^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30106 Wrong activation code Email already exists in an other registration ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30104 Email already exists This error will only be returned from our own TDRS, because the email field is unique there. .. _changelanguageRef: Change language --------------- .. note:: Languages fields use valid ISO 3166 language codes (see http://en.wikipedia.org/wiki/ISO_3166-1). Request:: 1.0.005 changelanguage Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Account in Deletion (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Invalid language ^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30115 Invalid language .. removeUserRef: .. _removeuserRef: Remove user (added in 1.0.003) ------------------------------ This call will delete the user account immediately (as opposed to :ref:`deleteuser ` which requires user confirmation). Set ```` to ``$true`` if you would like to delete the user's license as well. Request:: 1.0.005 removeuser $true/$false ```` value is optional and will only be used if allowed by the API (see :ref:`registration server settings/general settings/apiallowsettingdistributor`\ ). Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above .. _removedeviceRef: Remove device (added in 1.0.004) -------------------------------- 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 :ref:`searchuser `. Request:: 1.0.005 removedevice ```` value is optional and will only be used if allowed by the API (see :ref:`registration server settings/general settings/apiallowsettingdistributor`\ ). Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Device not found ^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30121 Device not found .. _deleteuserRef: Delete user ----------- .. note:: The user will be send a confirmation email. Their account will not be deleted until they confirm the operation. (see :ref:`removeUserRef` if you wish to delete a user without confirmation) Request:: 1.0.005 deleteuser Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above .. _confirmuserdeleteRef: Confirm delete user ------------------- .. note:: This function is not currently activated. .. note:: The will be send to the email address of the user The User has to authenticate again with their password. Set ```` to ``$true`` to also delete the user's default depot. Set ```` to ``$true`` to also delete the user's licenses. Request:: 1.0.005 confirmuserdelete Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Password invalid ^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30101 Wrong password Activation code invalid ^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30106 Wrong activation code .. _getlicensedataRef: Get license data for a user --------------------------- .. note:: The ```` block is identical to the reply from a login. Request:: 1.0.005 getlicensedata Reply:: 1.0.005 ... ... Description of the fields and values: * ``created:`` Creation date, format DD.MM.YYYY * ``productid:`` 1 or 2 (see productname) * ``productname:`` client (1) or server (2) * ``type:`` 0 = permanent, 1 = monthly payment, 2 = not for resale, 3 = yearly payment * ``number:`` license number * ``featurevalue:`` sum of the numbers as described in featuretext * ``featuretext:`` Banner (1), WebDAVs (2), Personal (4), Professional (8), Enterprise (16) * ``validuntil:`` license valid until, Format DD.MM.YYYY * ``limit:`` License amount * ``used:`` Used licenses * ``status:`` 0 = active, 1 = deactivated, 2 = deleted (records with status "deleted" will not be returned using the API) * ``isdefault:`` Is it a default license for the user (only possible for productid = 1). The user will be downgraded to their default license if a foreign license will be rejected from their installation. **Changes to API release 1.0.003:** A default license will normally be created when the user installs their first client application. The API could create a default license, if no default license exists, by setting "CreateDefaultLicense" as described in the registration server documentation. Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above License unknown, deactivated or deleted ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ :: 1.0.005 -30201 Unknown License .. _getdefaultlicenseRef: Get default-license for a user ------------------------------ .. note:: The reply will return the same ````\ -Block as the command :ref:`getlicensedata `\ . Request:: 1.0.005 getdefaultlicense Reply: see Reply in :ref:`getlicensedata ` .. _getdefaultdepotdataRef: Get default depot URL by username --------------------------------- .. note:: The reply return the same ```` block as described for the ``"login"`` command. Request:: 1.0.005 getdefaultdepotdata Reply:: 1.0.005 ... ... Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Depot unknown ^^^^^^^^^^^^^ .. note:: Users without a TeamDrive Client installation might have no depot. :: 1.0.005 -30107 No Default Depot .. _gethostfordepotRef: Get url for the default depot server (added in 1.0.004) ------------------------------------------------------- .. note:: This call could be used to get the current default depot server which is selected in the admin console to create depots on the host server using the API Request:: 1.0.005 gethostfordepot Reply:: 1.0.005 Error Cases ~~~~~~~~~~~ No default depot server ^^^^^^^^^^^^^^^^^^^^^^^ :: 1.0.005 -30107 No default depot server .. _setdepotforuserRef: Set depot for user (added in 1.0.003) ------------------------------------- ```` is an optional parameter and will do the ``sendinvitation`` call as described below (added in 1.0.004) :: 1.0.005 setdepotforuser Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled ^^^^^^^^^^^^^^^^^ See above Account in Deletion ^^^^^^^^^^^^^^^^^^^ See above Depot already exists ^^^^^^^^^^^^^^^^^^^^ :: 1.0.005 -30307 Depot already exists .. _removedepotfromuserRef: Remove depot from user (added in 1.0.005) ----------------------------------------- .. note:: In case of deleting the default depot of a user and the user has still an other depot in his list, the oldest depot will become the default depot ```` is an optional parameter and will do the ``sendinvitation`` call as described below There are different calls possible: * Sending the depot file like in ``setdepotforuser`` * Sending HostURL and depot id :: 1.0.005 removedepotfromuser OR :: 1.0.005 removedepotfromuser Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled ^^^^^^^^^^^^^^^^^ See above Account in Deletion ^^^^^^^^^^^^^^^^^^^ See above Depot data missing or invalid ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ :: 1.0.005 -30123 Depot data missing or invalid Depot not found ^^^^^^^^^^^^^^^ :: 1.0.005 -30124 Depot not found .. _sendinvitationRef: Send invitation ---------------- .. note:: Will be used for business users to distribute or delete a company depot to other users. ```` is ``INV_TYPE_CREATEDEPOT`` or ``INV_TYPE_DELETEDEPOT`` Request:: 1.0.005 sendinvitation Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Account in Deletion (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Type unknown ^^^^^^^^^^^^ :: 1.0.005 -30111 Invitation type unknown .. _setinviteduserRef: Set invited user ---------------- .. note:: Will be used for the referral program. (see :ref:`provider / distributor settings/referral settings`). Request:: 1.0.005 setinviteduser Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Account in Deletion (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Username invalid ^^^^^^^^^^^^^^^^ The invited user could not be found Reply:: 1.0.005 -30108 Unknown user: xxx Set invited user failed ^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30209 Setinvited user failed .. _createlicenseRef: Create license -------------- **Parameters:** * ```` : server, client * ```` : monthly, yearly, permanent * ```` : One of the following values: webdavs, personal, professional, enterprise, banner (only for client licenses) * ```` : Amount (for a client license), 0000 = unlimited (for a server license) Added with version 1.0.004: * ````\ : An optional external reference (free text field with 100 char) * ````\ : An optional contract number (free text field with 255 char) * ````\ : An optional valid-until date. Format must be DD.MM.YYYY * ````\ : An optional change id for license changes * ````\ : Currently not used Request:: 1.0.005 createlicense Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Account in Deletion (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Productname unknown ^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30203 Productname unknown Type unknown ^^^^^^^^^^^^ Reply:: 1.0.005 -30204 Type unknown Feature unknown ^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30205 Feature unknown Limit unknown / invalid ^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30206 Limit unknown Invalid date (added in 1.0.004) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30122 Invalid date .. _createlicensewithoutuserRef: Create license without user (added in 1.0.003) ---------------------------------------------- Similar to :ref:`createlicense `\ , but without setting a reference to a specific user. Might be useful if a shop application wanted to retrieve a license before the user has an account in the shop. Request:: 1.0.005 createlicensewithoutuser Reply and errors identical to :ref:`createlicense `\ . .. _assignusertolicenseRef: Assign user to license (added in 1.0.003) ----------------------------------------- If :ref:`createlicensewithoutuser ` was used then this command can be used to assign the license to a user. The user's record information will be used to update the values in the license table. Request:: 1.0.005 assignusertolicense Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Account in Deletion (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above License unknown ^^^^^^^^^^^^^^^ See above .. _assignlicensetoclientRef: Assign license to client (added in 1.0.004) ------------------------------------------- Assigns a license to a teamdrive client. ```` is an optional list of devices the user posses. If empty, all of the user's devices will be used. This function can only be used if the user has at least one device. Request:: 1.0.005 assignlicensetoclient Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled ^^^^^^^^^^^^^^^^ See above Account in Deletion ^^^^^^^^^^^^^^^^^^^ See above License unknown ^^^^^^^^^^^^^^^ See above Device not found ^^^^^^^^^^^^^^^^ See above .. _removeuserfromlicenseRef: Remove user from license (added in 1.0.003) ------------------------------------------- The complement to :ref:`assignusertolicense ` which can remove a user's license. .. important:: This will not remove the license from any installations! Request:: 1.0.005 removeuserfromlicense Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above Account Disabled (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above Account in Deletion (added in 1.0.003) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above License unknown ^^^^^^^^^^^^^^^ See above Invalid distributor ^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30114 Invalid Distributor .. _deactivatelicenseRef: Deactivate license (added in 1.0.003) ------------------------------------- Request:: 1.0.005 deactivatelicense Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ License unknown ^^^^^^^^^^^^^^^ See above Invalid distributor ^^^^^^^^^^^^^^^^^^^ See above License change failed ^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30210 License already disabled .. _activatelicenseRef: Activate license (added in 1.0.003) ----------------------------------- Request:: 1.0.005 activatelicense Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ License unknown ^^^^^^^^^^^^^^^ See above Invalid distributor ^^^^^^^^^^^^^^^^^^^ See above License change failed ^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30210 License not disabled .. _upgradelicenseRef: Upgrade license --------------- **Fixed in version 1.0.004:** The current feature was ignored. Request:: 1.0.005 upgradelicense Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above License unknown ^^^^^^^^^^^^^^^ See above License upgrade not possible ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. note:: This error occurs in cases such as when the license is deactivated or deleted. Reply:: 1.0.005 -30202 License upgrade failed .. _upgradedefaultlicenseRef: Upgrade default-license ----------------------- Request:: 1.0.005 upgradedefaultlicense Reply: For form of reply and possible errors see :ref:`upgradelicense `\ . .. _downgradelicenseRef: Downgrade license ----------------- **Fixed in version 1.0.004:** Downgrading a license was not working Request:: 1.0.005 downgradelicense Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above License unknown ^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30201 Unknown License Downgrade not possible ^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30208 License downgrade failed .. _downgradedefaultlicenseRef: Downgrade default-license ------------------------- Request:: 1.0.005 downgradedefaultlicense Reply: For reply and errors see :ref:`downgradelicense `\ . .. _getusedlicenseRef: Show used client licenses ------------------------- .. note:: ```` is optional. Request:: 1.0.005 getusedlicense Reply: .. note:: ```` is a comma separated list with user names. Only active license will be returned (not inactive or deleted licenses). If no license data could be found, error-30201 will be returned (see below). :: 1.0.005 ... ... Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above License unknown, deactivated or deleted ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30201 Unknown License .. _setlicensereferenceRef: Set license reference (added in 1.0.004) ---------------------------------------- Request:: 1.0.005 setlicensereference Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ License unknown, deactivated or deleted ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above .. _removelicenseRef: Remove license from a user -------------------------- .. note:: ```` is a comma separated list with user names. **Added in version 1.0.004:** ```` is an optional list of devices belonging to the user. If it is empty or unspecified, all of the user's devices will be used. Request:: 1.0.005 removelicense Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above License unknown, deactivated or deleted ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See above .. _cancellicenseRef: Delete / cancel license ----------------------- .. note:: If no license data could be found, you will get an "Unknown License" error. Use the field ```` to define the amount of licenses. To delete / cancel the license completely, send 0 in the field, otherwise a value > 0. Request:: 1.0.005 cancellicense Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ User Unknown ^^^^^^^^^^^^ See above Account not Activated ^^^^^^^^^^^^^^^^^^^^^ See above License could not be reduced, because they are still in use ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30207 Cancel license failed License unknown, deactivated or deleted ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Reply:: 1.0.005 -30201 Unknown License .. _setdistributorRef: Set distributor --------------- .. note:: This function can currently only be accessed by the default distributor. Only registered distributors can be used. Request:: 1.0.005 setdistributor Reply:: 1.0.005 0 Error Cases ~~~~~~~~~~~ Access denied ^^^^^^^^^^^^^ See above Invalid Distributor ^^^^^^^^^^^^^^^^^^^ See above