User—Get User

The User—Get user API allows a user to get a copy of the User object. For a mobile agent, this operation returns the full User object, including the mobile agent node.


Note


Mobile agent information is available to the Finesse node on which the mobile agent is signed in. However, the other Finesse node in the cluster does not have the mobile agent information. If the mobile agent signs in to the other node (for example, during a client failover), the mobile agent information is lost and the User object does not return any mobile agent data fields. As a result, the Finesse desktop inaccurately represents the mobile agent as a regular agent (including all related features). Any other type of CTI failover also results in Finesse losing the current mobile agent information. However, the Unified Mobile Agent feature behaves as normal whether Finesse knows the agent is a mobile agent or not.

As a workaround, the mobile agent can sign out and sign back in as a mobile agent.


URI:

http://<FQDN>/finesse/api/User/<id>

Example URI:

http://finesse1.xyz.com/finesse/api/User/1234

Security Constraints:

Agents can only get their own User object. Administrators can get any User object.

To get the User object, a user must be signed in, or provide valid authorization credentials when challenged.

HTTP Method:

GET

Content Type:

Application/XML

Input/Output Format:

XML

HTTP Request:

HTTP Response:

200: Success

401: Authorization Failure

401: Invalid Authorization User Specified

404: User Not Found

500: Internal Server Error

503: Service Unavailable

Example Response:

<User>
   <uri>/finesse/api/User/1234</uri>
   <roles>
      <role>Agent</role>
      <role>Supervisor</role>
   </roles>
   <loginId>1234</loginId>
   <loginName>csmith</loginName>
   <state>NOT_READY</state>
   <stateChangeTime>2012-03-01T17:58:21.234Z</stateChangeTime>
   <pendingState></pendingState>
   <reasonCodeId>16</reasonCodeId>
   <ReasonCode>
      <category>NOT_READY</category
      <uri>/finesse/api/ReasonCode/16</uri>
      <code>10</code>
      <label>Team Meeting</label>
      <forAll>true</forAll/
      <id16</id> 
   </ReasonCode>
   <settings>
      <wrapUpOnIncoming>OPTIONAL</wrapUpOnIncoming>
   </settings>
   <extension>1001001</extension>
   <mobileAgent>
      <mode>CALL_BY_CALL</mode>
      <dialNumber>4085551234</dialNumber>
   </mobileAgent>
   <firstName>Chris</firstName>
   <lastName>Smith</lastName>
   <teamId>500</teamId>
   <teamName>Sales</teamName>
   <dialogs>/finesse/api/User/1234/Dialogs</dialogs>
   <teams>
      <Team>
         <uri>/finesse/api/Team/2001</uri>
         <id>2001</id>
         <name>First Line Support</name>
      </Team>
      <Team>
         <uri>/finesse/api/Team/2002</uri>
         <id>2002</id>
         <name>Second Line Support</name>
       </Team>
      <Team>
         <uri>/finesse/api/Team/2003</uri>
         <id>2003</id>
         <name>Third Line Support</name>
      </Team>
      ... other teams ...
   </teams>
 </User>

Example Response (Mobile Agent):

Note   

Mobile agent only applies to Unified CCE deployments).

 <User>
   ... Full User Object ...
   <mobileAgent>
      <mode>CALL_BY_CALL</mode>
      <dialNumber>4085551234</dialNumber>
   </mobileAgent>
</User>

Example Failure Response:

<ApiErrors>
     <ApiError>
          <ErrorType>User Not Found</ErrorType>
          <ErrorMessage>UNKNOWN_USER</ErrorMessage>
          <ErrorData>4023</ErrorData>
   </ApiError>
</ApiErrors>