cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
710
Views
0
Helpful
5
Replies

UCCX REST Editor Step. Retrieve items from an SQL database

rguenther
Level 1
Level 1

The scenario:  The UCCX is integrating with a Ticketing system.  The Ticketing system engineer provided me the REST commands they require to access their database.  I am supposed to take their REST commands and make the appropriate format changes required by the UCCX REST step.

 

I have viewed probably over 100 posts on Anthony Holloways personal page regarding how to properly configure the UCCX REST step and due to my very limited knowledge of JSON and XML programming I have not been able to take their command and properly put it into the UCCX REST step.

Here is what the Ticketing system engineer provided me.

Body:

username:rni_restful

password:sent separately

GET

(This will return the Corporate ID and Login ID from TABLE)

http://IP Address:8008/api/arsys/v1/entry/TABLE?q='Corporate ID' LIKE "EDIPI_from_caller%"&fields=values(Full Name, Corporate ID, Internet E-mail, Remedy Login ID)

Here is my question:  What is the format of the UCCX REST command that the UCCX needs to communicate to the Ticketing system database and retrieve items

The UCCX REST step has all the fields broken up and from what I can tell from the various posts I have viewed, the command formatting can be done in numerous ways.  The developers guide is no help in that is states the obvious but does not provide any examples.  I noticed from Anthony's posts he actually provides people examples and that is what I need.  Thank in advance.

5 Replies 5

Anthony Holloway
Cisco Employee
Cisco Employee

Let's see if we can help you out.

First, it looks like this is an HTTP GET request, which means there is no Body.  You stated that your Ticketing System Engineer asked you to pass the credentials in the body, but that's not really a thing with HTTP GET requests.  So, you will need to sort out how the authentication will work for this particular request first, before anything else can be done.  One example might be HTTP Basic Authentication, in which case, the credentials go in the HTTP Headers, however, it's unencrypted and your URL shows HTTP as opposed to HTTPS, and so the credentials will be sent in clear text from UCCX to the Ticketing System.  That may or may not concern someone, but I wanted to point it out.  One way to know if it's HTTP Basic auth, is to construct the URL and paste it into your browser.  If the browser prompts you for a username and password in a pop-up, then it's HTTP Basic Auth.  If instead the browser just shows you an error page, like a 403, for example, then you likely have a different authentication mechanism in play.

 

Second, the URL you were given looks like an example, and you need to fill in some blanks, as well as replace some data with your own data.  I would recommend constructing the full String before the Make REST Call Step, so that when you debug the script, you can see the final result of the URL prior to it being used by the Make REST Call Step.  Can you ask them for a non-example, URL which you can use for testing/confirming?

Last, there are a lot of fields in the Make REST Call Step, but most of them do not need to be used.  I'm going to guess you will end up using only 4 of them in the end.

Thank you for responding.


I spoke with the engineer and he said those are not examples. Those are the actual commands they use in their Ticketing system which is called Remedy.


GET

This will return the Corporate ID and Login ID from CTM:People. It may need to run once for the caller (contact) and once for the customer if they are different.



http://205.110.57.39:8008/api/arsys/v1/entry/CTM:People?q='Corporate ID' LIKE "EDIPI_from_caller%"&fields=values(Full Name, Corporate ID, Internet E-mail, Remedy Login ID)


The above command is exactly what the engineer uses to retrieve items from a database called CTM:People with fields named Full Name, Corporate ID, Internet E-mail, etc)

Because this is a military base I am not allowed to connect to their UCCX system so I am supposed to create a system that matches their system and practice the REST commands.

The GET command above is not performed from the UCCX but from their own system. What I am supposed to do is take the command they use and format the appropriate command in the UCCX REST step so I can retrieve the items. I created a database table named CTM:People with the same column names and need to create the REST commands using their GET command.

The engineer told me that I am to take just the last part of the GET command because the front part of the command is specific to their system. For example, everything after the entry parameter is what I need to put into the REST command. So I need help taking the portion in yellow and construct a command in the UCCX REST step to retrieve data from the CTM:People table.
http://205.110.57.39:8008/api/arsys/v1/entry/CTM:People?q='Corporate ID' LIKE "EDIPI_from_caller%"&fields=values(Full Name, Corporate ID, Internet E-mail, Remedy Login ID)
Once I make the REST command retrieve the data from the database table I created then they will know the entire command will work in their Remedy system.

So how do I place the parameters after the ENTRY parameter into the REST command to retreive the data from the CTM:People table. Here is the table I built.
[cid:5e04556d-a13a-41a9-8e07-1be8b2d61ff8]
[cid:58249072-f9b6-4d22-a4a3-7873a8f59f5c]
I am able to retrieve data from this table using the UCCX script editor READ and GET DB commands. The military does not want to use the READ and GGET commands because they do not want to add any drivers to their system. That is why I need to perform the same function as the READ and GET commands using the REST commands.

I trust that makes more sense. I appreciate you helping me because everyone else just responds with "all you need to do is just put the correct parameters in the appropriate fields in the REST command" or they just point me to the REST page in the document. None of that helps me. My skill in this area is very limited so I need someone like yourself who can at least provide me with some examples of what parameters to place in the REST fields. I have read through many of your posts and every example is different. I was hoping to see some commonality in the fields but they were all different.

Thank you again for your assistance.

Rodney


Hi, I'm afraid this response just made it harder to understand what you are trying to do.  Would you be willing to talk about it live with me on a Webex?  If so, hit me up in Webex Messaging @ anhollow@cisco.com or send me a Private Message with your contact details.

?Hello Anthony,


My phone number is +1 760-809-8150. I am available anytime today. I am in Pacific time zone.

Let me know what time works best for you.


Thank you


Rodney

One more thing to note it looks like the URL will have to be encoded to pass the query and all the correct text... someone is copying SFDC and built their own SOQL.

 

david

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: