The Configuration API supports Read, List, and Get List Info methods for Screen Pop objects. Create, Update, and Delete are not yet supported.

Get Screen Pop List Info

Description: Gets metadata for a list of Screen Pops.

User Roles: Sysadmin, IT User, Manager or Agent

Method: GET /configuration/screenPops/info[?client={clientId}]

Parameters:

Path/Query Parameter NameVariable NameTypeMandatory?Description
clientclientIdInteger (ID)NoRestricts the list to entries that are specifically associated with this particular Client.

Body:

None

Response Code:  200 OK

Body:

Key or AttributeTypeMandatory?Description
sizeIntegerYesTotal number of entries in the list.
lastModifiedDateTimeNoThe last date & time that the list was updated. This information might not be available. This is formatted according to the definition of dateTime in the XML Schema specification. For JSON responses, it is represented as the number of milliseconds since midnight on January 1, 1970 (GMT).

Get the metadata for a Screen Pop list for a Client

#Request
GET /configuration/screenPops/info?client=4199
Host: localhost.com
Content-Type: application/json
Accept: application/json

#Response
200 OK
Content-Type: application/json

{
   "size": 17,
   "lastModified": 1364416410000
}
CODE

List Screen Pops

Description:  Lists Screen Pops configured for a Client.

User Roles: Sysadmin, IT User, Manager or Agent

Method: GET /configuration/screenPops?[client={clientId}&]count={n}&offset={n}

Parameters:

Path/Query Parameter NameVariable NameTypeMandatory?Description
clientclientIdInteger (ID)NoSpecifies the Client for which you want to retrieve the list of Screen Pops.
countnIntegerYesSpecifies the number of items to return in the list. There is a hard cap of 1000 items.
offsetnIntegerYesSpecifies the offset from 0, based on count, to start listing from.

Body:

None

Response Code: 200 OK

Body:  

KeyTypeMandatory?Description
nextURINoA URI for the next page of entries. If next is not present, or blank, then there are no pages after this one.
screenPopArrayNo

A container for a page of Screen Pop entries. The page size is controlled via count and offset in the request.

KeyTypeMandatory?Description
idInteger (ID)YesID of the Screen Pop
nameStringYesName of the Screen Pop

 

Get a list of Screen Pops for a Client

#Request (JSON)
GET /configuration/screenPops?count=5&client=4199&offset=0
Host: localhost.com
Content-Type: application/json
Accept: application/json

#Response
200 OK
Content-Type: application/json

{
   "screenPop":    [
            {
         "id": 3063,
         "name": "Default ScreenPop for 4199"
      },
            {
         "id": 7346,
         "name": "Cable Service Scriptor"
      },
            {
         "id": 8046,
         "name": "Political Survey Scriptor"
      },
            {
         "screenPopId": 9128,
         "screenPopName": "URL screen pop"
      },
            {
         "id": 8887,
         "name": "Radio Survey"
      }
   ],
   "next": "configuration/screenPops?count=5&client=4199&offset=5"
}
CODE

Read Screen Pop

Description: Gets information about a Screen Pop.

User Roles: Sysadmin, IT User, Manager or Agent

Method: GET /configuration/screenPops/{id}

Parameters:

Path/Query Parameter NameVariable NameTypeMandatory?Description
idscreenPopIdInteger (ID)YesThe ID of the Screen Pop you want to query.

Body:

None

Response Code: 200 OK

Body:

KeyTypeMandatory?Description
descriptionStringNoThe description of the Screen Pop.
associatedServiceArrayNo

The Service(s) to which the Screen Pop is associated. When a Screen Pop is associated to a Service, it means that this Screen Pop comes up for agents when the agents are handling calls for that Service.

KeyTypeMandatory?Description
serviceIdInteger (ID)YesID of the associated Service
nameStringYesName of the associated Service
infoFieldArrayYes

An array of data fields that are included with the Screen Pop. Typically these are displayed to the agent on the agent desktop, but they may also be used to drive agent scripts or other custom applications.

KeyTypeMandatory?Description
keyStringYesInternal key for the screen pop data field
displayNameStringYesText displayed for the screen pop data field
positionIntegerNoPosition of the screen pop data field
delimiterEnumNoDelimiter used to indicate the end of this screen pop data field. Must be COMMA, BAR, SEMI_COLON, or COLON.
dotNetDataArrayNo

Optional .NET data that could be passed to a .NET compiler. This could be used for .NET agent desktop applications.

KeyTypeMandatory?Description
keyStringYesInternal key for the screen pop .NET data field
commandStringNoCommand for the screen pop .NET data field
dataStringNoData for the screen pop .NET data field
positionIntegerNoPosition of the screen pop .NET data field
delimiterEnumNoDelimiter used to indicate the end of this screen pop .NET data field. Must be COMMA, BAR, SEMI_COLON, or COLON.
nameStringYesThe name of the Screen Pop.
clientIdInteger (ID)NoThe internal LiveVox ID of the Client to which the Screen Pop is associated.
associatedToClientBooleanYesIf set to true, indicates that the Screen Pop is configured as the default Screen Pop for the Client.
notesEnabledBooleanYesIf set to true, the agent can enter notes on the agent desktop when in "In Call" or "Wrap Up" status.
callRecordControlEnabledBooleanYesIf set to true, the agent can control call recordings (i.e. pause, resume, stop) through the agent desktop.
displayNotReadySubCodesBooleanYesIf set to true, the agent can select a sub-code, or "break code" when changing her status to Not Ready.

acctNumberRequired

BooleanYesIf set to true, the agent is required to enter an Account Number when she is making a manual call or handling a callback call.

Read the configuration properties of an existing Screen Pop

#Request (JSON)
GET /configuration/screenPops/7436
Host: localhost.com
Content-Type: application/json
Accept: application/json
 
#Response
200 OK
Content-Type: application/json
 
{
	"description": "Cable Service Screen Pop",   
	"associatedService":    [
            {
         "serviceId": 33114,
         "name": "test_ATL_1stParty_Preview All_QC _Cable Script (8)"
      },
            {
         "serviceId": 43185,
         "name": "ATL_1st Party_Agent VM_IB (11)"
      },
            {
         "serviceId": 20576,
         "name": "ATL_1stParty_Cable_IB_8773402033 (7)"
      },
            {
         "serviceId": 26911,
         "name": "Testservice(8)"
      },
            {
         "serviceId": 26881,
         "name": "ATL_1stParty_PVAll_QC_Cable Script_VOIP (8)"
      }
   ],
   "infoField":    [
            {
         "key": "lvtransaction_type",
         "displayName": "Call Type",
         "position": 1,
         "delimiter": "BAR"
      },
            {
         "key": "account",
         "displayName": "Account Number",
         "position": null,
         "delimiter": null
      },
            {
         "key": "patient_firstname",
         "displayName": "First Name",
         "position": null,
         "delimiter": null
      },
            {
         "key": "patient_lastname",
         "displayName": "Last Name",
         "position": null,
         "delimiter": null
      },
            {
         "key": "phone_dialed",
         "displayName": "Phone Dialed",
         "position": null,
         "delimiter": null
      }
   ],
   "dotNetData": [   {
      "key": "Account Information",
      "command": "Enter",
      "data": "account",
      "position": 1,
      "delimiter": "BAR"
   }],
   "name": "Cable Service Scriptor",
   "clientId": 4199,
   "associatedToClient": false,
   "notesEnabled": false,
   "callRecordControlEnabled": true,
   "displayNotReadySubCodes": true,
   "acctNumberRequired": true
}
CODE

Attempt to read a Screen Pop that does not exist

#Request
GET /configuration/screenPops/1234
Host: localhost.com
Content-Type: application/json
Accept: application/json
 
#Response
404 Not Found
CODE

Update Screen Pop Add Service

Description: Assigns a Service to a Screen Pop.

User Roles: Sysadmin or IT User

Method: POST /configuration/screenPops/{id}/services/{service}

Parameters:

Path/Query Parameter NameVariable NameTypeMandatory?Description
idscreenPopIdInteger (ID)YesThe ID of the Screen Pop to be updated.
serviceserviceIdInteger (ID)Yes

ID of the Service to be added.

Body:

None

Response Code: 204 No Content

Body:

None

Assign a Service to a Screen Pop

#Request (JSON)
POST /configuration/screenPops/3063/services/44365
Host: localhost.com
Content-Type: application/json
Accept: application/json
 
#Response
204 No Content
CODE

Update Screen Pop Remove Service

Description: Removes a Service from a Screen Pop; if another Screen Pop isn't assigned the Service will use the default Screen Pop set at the Client level.

User Roles: Sysadmin or IT User

Method: DELETE /configuration/screenPops/{id}/services/{service}

Parameters:

Path/Query Parameter NameVariable NameTypeMandatory?Description
idscreenPopIdInteger (ID)YesThe ID of the Screen Pop to be updated.
serviceserviceIdInteger (ID)Yes

ID of the Service to be removed.

Body:

None

Response Code: 204 No Content

Body:

None

Removes the Service from the Screen Pop

#Request (JSON)
DELETE /configuration/screenPops/3063/services/44365
Host: localhost.com
Content-Type: application/json
Accept: application/json
 
#Response
204 No Content
CODE

Top of Page