Skip to main content

User Management

This webservice allows managing Users, Teams, and Offices on a given account.

Please mind the following rules and limitations:

  • Account can have multiple Offices; a single Office can consist of multiple Teams, and each Team can consist of multiple Users.
  • A Team must always have a parent Office.
  • Users cannot be assigned directly to an Office - they can only be assigned to a Team.
  • Users can exist unassigned to any Team.

The webservice applies to sub-entities of Client (admin) accounts only. If you wish to manage Client accounts, please use the Service Management Webservice.


Creating a User​

This method allows to create a new User profile on the Client account.

Endpoint​

https://ws.idibu.com/ws/rest/v1/users​

Available methods​

POST /new​

Creates a new User on the given Client account.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.
dataStringYesThe full query XML (see the Query format below), URL-encoded within the parameter.

Query format​

<idibu>
<profile>
<title>["Mr"|"Ms"|"Mrs"]</title> <!-- user's title -->
<firstname>[string]</firstname> <!-- user's first name -->
<lastname>[string]</lastname> <!-- user's last name -->
<company>[string]</company> <!-- company name -->
<team-id>[integer]</team-id> <!-- id of the team to which the user will be assigned; optional -->
<contacts>
<address>[string]</address> <!-- account's company address; optional -->
<address-line1>[string]</address-line1> <!-- address line 1 -->
<address-line2>[string]</address-line2> <!-- address line 2; optional -->
<address-line3>[string]</address-line3> <!-- address line 3 (County or State); optional -->
<country>[string]</country> <!-- the main country in which the company resides -->
<postcode>[string]</postcode> <!-- user's company postal code -->
<email>[string:email]</email> <!-- user's email address -->
<phone>[string]</phone> <!-- user's phone number -->
<fax>[string]</fax> <!-- user's fax number; optional -->
<www>[string:url]</www> <!-- the address of the company's website -->
</contacts>
</profile>
</idibu>

Response format​

<idibu generator="idibu" version="1.0">
<response>
<message>[string]</message> <!-- 'User added' or an error message -->
<id>[integer]</id> <!-- ID of the new user -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>

Listing Users​

This method allows to list and filter Users on the given Client account.

Endpoint​

https://ws.idibu.com/ws/rest/v1/users​

Available methods​

GET /​

Returns a list of Users.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.
countInteger

Default: 10
NoNumber of Users to return.
offsetInteger

Default: 0
NoNumeric offset from where to start fetching Users (pagination).
team-idIntegerNoReturns only Users assigned to the Team with the provided ID.
office-idIntegerNoReturns only Users assigned to Teams belonging under the Office with the provided ID.

Response format​

<?xml version="1.0" encoding="utf8"?>
<idibu generator="idibu" version="1.0">
<response>
<users>
<user>
<id>[integer]</id> <!-- id of the user -->
<title>["Mr"|"Ms"|"Mrs"]</title> <!-- user's title -->
<firstname>[string]</firstname> <!-- user's first name -->
<lastname>[string]</lastname> <!-- user's last name -->
<company>[string]</company> <!-- company name -->
<team-id>[integer]</team-id> <!-- id of the team to which the user is assigned; 0 if unassigned -->
<contacts>
<address>[string]</address> <!-- account's company address -->
<address-line1>[string]</address-line1> <!-- address line 1 -->
<address-line2>[string]</address-line2> <!-- address line 2 -->
<address-line3>[string]</address-line3> <!-- address line 3 (County or State) -->
<country>[string]</country> <!-- the main country in which the company resides -->
<postcode>[string]</postcode> <!-- user's company postal code -->
<email>[string:email]</email> <!-- user's email address -->
<phone>[string]</phone> <!-- user's phone number -->
<fax>[string]</fax> <!-- user's fax number -->
<www>[string:url]</www> <!-- the address of the company's website -->
</contacts>
</user>
</users>
<total>[integer]</total> <!-- total number of users matching the current criteria -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>

User's detailed information​

This method returns full details of a particular User.

Endpoint​

https://ws.idibu.com/ws/rest/v1/users/​

Available methods​

GET /[id]​

Returns the full profile details and settings for the specified User.

You can use /users/admin to fetch the main admin user profile created alongside the Client account

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.

Response format​

<idibu generator="idibu" version="1.0">
<response>
<profile>
<id>[integer]</id> <!-- user id -->
<title>["Mr"|"Ms"|"Mrs"]</title> <!-- user's title -->
<firstname>[string]</firstname> <!-- user's first name -->
<lastname>[string]</lastname> <!-- user's last name -->
<company>[string]</company> <!-- company name -->
<team-id>[integer]</team-id> <!-- id of the team to which the user is assigned; 0 if unassigned -->
<contacts>
<address>[string]</address> <!-- account's company address -->
<address-line1>[string]</address-line1> <!-- address line 1 -->
<address-line2>[string]</address-line2> <!-- address line 2 -->
<address-line3>[string]</address-line3> <!-- address line 3 (County or State) -->
<country>[string]</country> <!-- the main country in which the company resides -->
<postcode>[string]</postcode> <!-- user's company postal code -->
<email>[string:email]</email> <!-- user's email address -->
<phone>[string]</phone> <!-- user's phone number -->
<fax>[string]</fax> <!-- user's fax number -->
<www>[string:url]</www> <!-- the address of the company's website -->
</contacts>
</profile>
<settings>
<alerts>
<job-expiry>["On"|"Off"]</job-expiry>
<new-applicant>["On"|"Off"]</new-applicant>
</alerts>
</settings>
</response>
<status>["success"|"failed"]</status>
</idibu>

Updating a User​

This method allows amending some of the User's details.

Endpoint​

https://ws.idibu.com/ws/rest/v1/users/​

Available methods​

POST /[id]​

Updates the profile details or settings of the specified User.

Provide only fields you wish to update in the XML body - fields left blank or omitted will not be changed.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.
dataStringYesThe full query XML (see the Query format below), URL-encoded within the parameter.

Query format​

<idibu>
<profile>
<title>["Mr"|"Ms"|"Mrs"]</title> <!-- user's title -->
<firstname>[string]</firstname> <!-- user's first name -->
<lastname>[string]</lastname> <!-- user's last name -->
<company>[string]</company> <!-- company name -->
<team-id>[integer]</team-id> <!-- id of the team to which the user will be assigned -->
<contacts>
<address>[string]</address> <!-- account's company address -->
<address-line1>[string]</address-line1> <!-- address line 1 -->
<address-line2>[string]</address-line2> <!-- address line 2 -->
<address-line3>[string]</address-line3> <!-- address line 3 (County or State) -->
<country>[string]</country> <!-- the main country in which the company resides -->
<postcode>[string]</postcode> <!-- user's company postal code -->
<email>[string:email]</email> <!-- user's email address -->
<phone>[string]</phone> <!-- user's phone number -->
<fax>[string]</fax> <!-- user's fax number -->
<www>[string:url]</www> <!-- the address of the company's website -->
</contacts>
</profile>
</idibu>

Response format​

<idibu generator="idibu" version="1.0">
<response>
<message>[string]</message> <!-- 'User updated' or an error message -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>

Deleting a User​

This method allows fully removing a User profile from the Client account.

Endpoint​

https://ws.idibu.com/ws/rest/v1/users​

Available methods​

DELETE /[id]​

Removes the specified user from the system.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.

Response format​

<idibu generator="idibu" version="1.0">
<response>
<message>[string]</message> <!-- 'User has been deleted' or an error message -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>

Creating a Team​

This method allows to create a new Team on the Client account.

A Team must always belong to an Office.

Endpoint​

https://ws.idibu.com/ws/rest/v1/teams​

Available methods​

POST /new​

Creates a new Team on the given Client account.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.
dataStringYesThe full query XML (see the Query format below), URL-encoded within the parameter.

Query format​

<idibu>
<name>[string]</name> <!-- team name -->
<office-id>[integer]</office-id> <!-- id of the Office to which the Team will belong -->
</idibu>

Response format​

<idibu generator="idibu" version="1.0">
<response>
<message>[string]</message> <!-- 'Team created' or an error message -->
<id>[integer]</id> <!-- ID of the new Team -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>

Listing Teams​

This method allows to list and filter Teams on the given Client account.

Endpoint​

https://ws.idibu.com/ws/rest/v1/teams​

Available methods​

GET /​

Returns a list of Teams.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.
countInteger

Default: 10
NoNumber of Teams to return.
offsetInteger

Default: 0
NoNumeric offset from where to start fetching Teams (pagination).
office-idIntegerNoReturns only Teams belonging under the Office with the provided ID.

Response format​

<?xml version="1.0" encoding="utf8"?>
<idibu generator="idibu" version="1.0">
<response>
<teams>
<team>
<id>[integer]</id> <!-- team id -->
<name>[string]</name> <!-- team name -->
<office-id>[integer]</office-id> <!-- id of the Office to which the Team belongs -->
</team>
</teams>
<total>[integer]</total> <!-- total number of Teams matching the current criteria -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>

Team's detailed information​

This method returns full details of a particular Team.

Endpoint​

https://ws.idibu.com/ws/rest/v1/teams/​

Available methods​

GET /[id]​

Returns the full details of the specified Team.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.

Response format​

<idibu generator="idibu" version="1.0">
<response>
<id>[integer]</id> <!-- team id -->
<name>[string]</name> <!-- team name -->
<office-id>[integer]</office-id> <!-- id of the Office to which the Team belongs -->
<contacts>
<need-authorization>No</need-authorization> <!-- deprecated, please ignore -->
</contacts>
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>

Updating a Team​

This method allows amending some of the Team's details.

Endpoint​

https://ws.idibu.com/ws/rest/v1/teams/​

Available methods​

POST /[id]​

Updates the name of the specified Team and/or reassigns it to a different Office.

Provide only fields you wish to update in the XML body - fields left blank or omitted will not be changed.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.
dataStringYesThe full query XML (see the Query format below), URL-encoded within the parameter.

Query format​

<idibu>
<name>[string]</name> <!-- team name -->
<office-id>[integer]</office-id> <!-- id of the Office to which the Team belongs -->
</idibu>

Response format​

<idibu generator="idibu" version="1.0">
<response>
<message>[string]</message> <!-- 'Team updated' or an error message -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>

Deleting a Team​

This method allows fully removing a Team from the Client account.

When a Team is deleted, its Users become unassigned.

Endpoint​

https://ws.idibu.com/ws/rest/v1/teams​

Available methods​

DELETE /[id]​

Removes the specified Team from the system.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.

Response format​

<idibu generator="idibu" version="1.0">
<response>
<message>[string]</message> <!-- 'Team deleted' or an error message -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>

Creating an Office​

This method allows to create a new Office on the Client account.

Endpoint​

https://ws.idibu.com/ws/rest/v1/offices​

Available methods​

POST /new​

Creates a new Office on the given Client account.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.
dataStringYesThe full query XML (see the Query format below), URL-encoded within the parameter.

Query format​

<idibu>
<name>[string]</name> <!-- office name -->
<contacts>
<address>[string]</address> <!-- full address; optional -->
<address-line1>[string]</address-line1> <!-- address line 1 -->
<address-line2>[string]</address-line2> <!-- address line 2; optional -->
<address-line3>[string]</address-line3> <!-- address line 3 (County or State); optional -->
<country>[string]</country> <!-- the main country in which the office resides -->
<postcode>[string]</postcode> <!-- office postal code -->
<email>[string:email]</email> <!-- office email address -->
<phone>[string]</phone> <!-- office phone number -->
<fax>[string]</fax> <!-- office fax number; optional -->
<www>[string:url]</www> <!-- the address of the office's website -->
<company-name>[string]</company-name> <!-- company name -->
</contacts>
</idibu>

Response format​

<idibu generator="idibu" version="1.0">
<response>
<message>[string]</message> <!-- 'Office created' or an error message -->
<id>[integer]</id> <!-- ID of the new Office -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>

Listing Offices​

This method allows to list Offices on the given Client account.

Endpoint​

https://ws.idibu.com/ws/rest/v1/offices​

Available methods​

GET /​

Returns a list of Offices.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.
countInteger

Default: 10
NoNumber of Offices to return.
offsetInteger

Default: 0
NoNumeric offset from where to start fetching Offices (pagination).

Response format​

<?xml version="1.0" encoding="utf8"?>
<idibu generator="idibu" version="1.0">
<response>
<offices>
<office>
<id>[integer]</id> <!-- office id -->
<name>[string]</name> <!-- office name -->
<contacts>
<address>[string]</address> <!-- full address -->
<address-line1>[string]</address-line1> <!-- address line 1 -->
<address-line2>[string]</address-line2> <!-- address line 2 -->
<address-line3>[string]</address-line3> <!-- address line 3 -->
<country>[string]</country> <!-- country -->
<postcode>[string]</postcode> <!-- postal code -->
<email>[string:email]</email> <!-- office email address -->
<phone>[string]</phone> <!-- office phone number -->
<fax>[string]</fax> <!-- office fax number -->
<www>[string]</www> <!-- office website -->
<company-name>[string]</company-name> <!-- company name -->
<need-authorization>No</need-authorization> <!-- deprecated, please ignore -->
</contacts>
</office>
</offices>
<total>[integer]</total> <!-- total number of Offices matching the current criteria -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>

Office's detailed information​

This method returns full details of a particular Office.

Endpoint​

https://ws.idibu.com/ws/rest/v1/offices/​

Available methods​

GET /[id]​

Returns the full details of the specified Office.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.

Response format​

<idibu generator="idibu" version="1.0">
<response>
<id>[integer]</id> <!-- office id -->
<name>[string]</name> <!-- office name -->
<contacts>
<address>[string]</address> <!-- full address -->
<address-line1>[string]</address-line1> <!-- address line 1 -->
<address-line2>[string]</address-line2> <!-- address line 2 -->
<address-line3>[string]</address-line3> <!-- address line 3 (County or State) -->
<country>[string]</country> <!-- the main country in which the office resides -->
<postcode>[string]</postcode> <!-- office postal code -->
<email>[string:email]</email> <!-- office email address -->
<phone>[string]</phone> <!-- office phone number -->
<fax>[string]</fax> <!-- office fax number -->
<www>[string:url]</www> <!-- the address of the office's website -->
<company-name>[string]</company-name> <!-- company name -->
<need-authorization>No</need-authorization> <!-- deprecated, please ignore -->
</contacts>
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>

Updating an Office​

This method allows amending some of the Office's details.

Endpoint​

https://ws.idibu.com/ws/rest/v1/offices/​

Available methods​

POST /[id]​

Updates the details of the specified Office.

Provide only fields you wish to update in the XML body - fields left blank or omitted will not be changed.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.
dataStringYesThe full query XML (see the Query format below), URL-encoded within the parameter.

Query format​

<idibu>
<name>[string]</name> <!-- office name -->
<contacts>
<address>[string]</address> <!-- full address -->
<address-line1>[string]</address-line1> <!-- address line 1 -->
<address-line2>[string]</address-line2> <!-- address line 2 -->
<address-line3>[string]</address-line3> <!-- address line 3 (County or State) -->
<country>[string]</country> <!-- the main country in which the office resides -->
<postcode>[string]</postcode> <!-- office postal code -->
<email>[string:email]</email> <!-- office email address -->
<phone>[string]</phone> <!-- office phone number -->
<fax>[string]</fax> <!-- office fax number -->
<www>[string:url]</www> <!-- the address of the office's website -->
</contacts>
</idibu>

Response format​

<idibu generator="idibu" version="1.0">
<response>
<message>[string]</message> <!-- 'Office updated' or an error message -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>

Deleting an Office​

This method allows fully removing an Office from the Client account.

When an Office is deleted, its Teams are deleted as well.

Endpoint​

https://ws.idibu.com/ws/rest/v1/offices​

Available methods​

DELETE /[id]​

Removes the specified Office from the system.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.

Response format​

<idibu generator="idibu" version="1.0">
<response>
<message>[string]</message> <!-- 'Office deleted' or an error message -->
</response>
<status>["success"|"failed"]</status> <!-- whether the request succeeded or not -->
</idibu>

User structure reference​

This method returns the list of all Offices, Teams, and Users on the account, detailing the full Office-Team-Profile structure.

Endpoint​

https://ws.idibu.com/ws/rest/v1/users/structure​

Available methods​

GET /​

Returns the Office-Team-User structure for the given Client account.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.

Response format​

<?xml version="1.0" encoding="UTF-8"?>
<idibu generator="idibu" version="1.0">
<response>
<unassigned>
<user id="[integer]" name="[string]" email="[string:email]"></user> <!-- ID, name, and email address of a User unassigned to any Team; can be multiple -->
</unassigned>
<offices>
<office id="[integer]" name="[string]"> <!-- ID and name of an Office; can be multiple -->
<team id="[integer]" name="[string]"> <!-- ID and name of a Team assigned to a given Office; can be multiple -->
<user id="[integer]" name="[string]" email="[string:email]"></user> <!-- ID, name, and email address of a User assigned to a given Team; can be multiple -->
</team>
</office>
</offices>
</response>
<status>["success"|"failed"]</status>
</idibu>

Check Portal availability​

This method allows you to quickly check which Portals a User can post to and whether the User has the required logins and quota available.

This can be used to prepare a list of Portals the User can post to in a partner system.

Endpoint​

https://ws.idibu.com/ws/rest/v1/users​

Available methods​

GET /[id]/portals-available​

Returns the list of Portals available to the specified User.

Query parameters​

Parameter NameType restrictionsRequired?Notes
hashStringYesHash of the idibu account to which the request pertains.

Response format​

<?xml version="1.0" encoding="UTF-8"?>
<idibu generator="idibu" version="1.0">
<response>
<portals>
<portal id="[integer]"> <!-- Portal ID; refer to https://docs.idibu.com/docs/v2/webservices/portal-management -->
<name>[string]</name> <!-- Portal name -->
<quota>[integer]</quota> <!-- total assigned Quota; 0 indicates the User can't post to the given Portal; refer to https://docs.idibu.com/docs/v2/webservices/quota-management/ -->
<remaining_quota>[integer]</remaining_quota> <!-- currently remaining Quota; 0 indicates the User can't post to the given Portal; refer to https://docs.idibu.com/docs/v2/webservices/quota-management/ -->
<has_logins>["yes"|"no"]</has_logins> <!-- whether the User has active logins for the Portal; "no" indicates the User can't post to the given Portal; refer to https://docs.idibu.com/docs/v2/webservices/portal-management -->
<force_posting>["no"|"select"|"force"]</force_posting> <!-- refer to https://docs.idibu.com/docs/v2/webservices/portal-management#portal-additional-options -->
<!-- "no" - the User is not required to post to the given Portal -->
<!-- "select" - the Portal should be pre-selected for the User, with the ability to de-select -->
<!-- "force" - the Portal should be pre-selected for the User, with no possibility of de-selecting -->
</portal>
</portals>
</response>
<status>["success"|"failed"]</status>
</idibu>