Skip to content

Instantly share code, notes, and snippets.

@shoxty
Created October 31, 2012 22:15
Show Gist options
  • Save shoxty/3990315 to your computer and use it in GitHub Desktop.
Save shoxty/3990315 to your computer and use it in GitHub Desktop.
Chat log with Oracle Technical Support for Taleo
I have a lot of questions regarding the Taleo Business Edition Web Services API. Can you please put me in
contact with somebody that can help me?
Here are a few of the questions:
1) Is there a way to retrieve a list of all the form fields that are required for a requisition including
any custom fields that may have been added?
2) In what order should I made the calls to your services to properly submit a candidate to a requisition?
3) I am currently able to submit generic details of a candidate and attach it to a requisition but how can
I submit employment history, education, references, certifications and upload a resume? Do you have separate
endpoints for all of these actions? If so what are they? I cannot find any reference to them in the API Guide.
We would really like to get this working, please help. Thanks!
---------
Dear Will:
Thank you for contacting Taleo Business Edition Support.
We will be pleased to assist you, but in order to do so, may we ask which specific API method you're using?
Our customers have both the REST API and SOAP API methods available. Though it sounds like you're already
familiar with the documentation, I have included links to each API document below, for your convenience.
They are available through the Taleo Knowledge Exchange (registration required):
REST API Documentation: http://knowledgeexchange.taleo.com/docs/DOC-4324
SOAP API Documentation: http://knowledgeexchange.taleo.com/docs/DOC-4325
We'll await your response concerning your API method. In the meantime, please let us know if we can provide
any further assistance. Thank you!
Regards,
Joe Cleary
TBE Support
---------
Thanks for writing back. I am using the Taleo Business Edition Soap API.
---------
Dear Will:
Thank you very much for the update.
First, unless you have a specific technical or business reason for using the SOAP API specifically,
Support would highly recommend switching to the REST API. While the SOAP API is a perfectly feasible
tool for TBE API development, all new API features, enhancements, and so on will be centered on the
REST API exclusively going forward. Future work on the SOAP API will involve bug corrections only.
With that said, I'll be happy to address your individual questions:
1. There is no call/element strictly for discovery purposes in the SOAP API (though this is a feature
in the REST API; see page 21 of the REST API guide). Because each entity includes every field (both
standard and custom fields, or flexValues in SOAP parlance), you can simply make a call for the type
of entity you're interested in with the SOAP API.
For example, to view all standard and custom Candidate fields, please make a getCandidateDetailsById
call. To view all standard and custom Requisition fields, please make a getRequisitionById call. This
will return any example Candidate, Requisition, etc. of your choosing, and will include all standard
and custom fields for that entity type in the API response.
2. To submit a Candidate to a Requisition, you can make the calls below. I have also include the page
number for each call in the SOAP API documentation.
a. login (p. 159): To secure your session token.
b. searchCandidate (p. 61): If you do not already have this information, to obtain the Candidate ID.
Otherwise, skip.
c. searchRequisition (p. 205): If you do not already have this information, to obtain the Requisition ID.
Otherwise, skip.
d. submitCandidate (p. 64): Using the IDs in the previous two calls, submit the Candidate to the Requisition.
The general concept is identical in the REST API, using REST-specific calls. I have also referred to
the appropriate page in the REST API documenation, for your convenience:
a. login (p. 20)
b. GET (search) Candidate (p. 65)
c. GET (search) Requisition (p. 77)
d. Candidate Application (p. 74)
3. These items (Work History, Education History, etc.) are referred to as Rolling Entities in
Taleo Business Edition. In the SOAP API documentation, please see the Rolling Entity calls/elements
starting on page 217. In the REST API documentation, Candidate Rolling Entity calls are discussed on page 69.
Please let us know if there are any questions, or if we can provide further assistance. Thank you!
Regards,
Joe Cleary
TBE Support
---------
Thanks a lot. I hate SOAP a lot and was only using it because it was the API guide that was given
to me by our Taleo rep. Now that I know that there is a REST API I am going to use that instead.
If I run into any problems I will let you know. Could we leave this ticket open just in case? I
should know in the next few days after I convert this and start implementing the suggestions below.
---------
Dear Will:
Absolutely. Support will continue to keep this Service Request open. Just let me know if you
have any follow-up questions. Thank you!
Regards,
Joe Cleary
TBE Support
---------
Do you guys have any code libraries to go along with the API? It'd be helpful to see an
implementation of some of these services. I'm having trouble figuring out the Authentication
piece for the REST API.
---------
Dear Will:
Unfortunately, the only documentation we have available is the REST API document itself. By
the term authentication, am I correct that you're referring to the session token/ID?
As a starting point, I might recommend reviewing a video tutorial available on the Taleo Knowledge
Exchange, which discusses some of our major functionality (including obtaining the session token)
using the Firefox-based RESTClient plugin:
http://knowledgeexchange.taleo.com/videos/1411
While this tutorial doesn't discuss any specific code, it may clarify the initial User authentication
steps. Please let me know if the tutorial doesn't address your question, and maybe we can schedule
a follow-up phone call to discuss. Thank you!
Regards,
Joe Cleary
TBE Support
---------
That video is exactly what I needed, thanks! Please keep ticket open for a little longer. What is the
best way to filter requisitions using the search endpoint to only return requisitions that are open?
With the SOAP API I could pass in a parameter of status=open but I don't seem to find anything like
that for the REST API. I see in the response of my search it shows a relationshipUrls object which
contains a url to query "status". Am I really going to have to loop through all requisitions query
them individually to find out if they are open or closed?
EDIT: I take this back, I am retarded. Figured it out. Thanks.
---------
Dear Will:
No worries, we're glad to hear you were able to find the REST call you were looking for! Did you
happen to have any additional REST-related questions we could help you with? I can certainly
continue to keep the Service Request open a bit longer as well, just in case.
Thank you,
Joe Cleary
TBE Support
---------
Now that I have selected a requisition by ID I would like to submit a candidate to it. The candidate
is new so they do not have an ID. Two questions.
1) What endpoint do I use to retrieve all the input fields I will need? (Email Reg, Personal Info,
Account Info)? Are these all separate endpoints or is there one that says, all of these are attached
to this requisition?
2) Can I submit a new candidate to a requisition without a candidate ID? Does the service generate
one if one does not exist or am I going to have to first create the candidate, get an ID and then
query the rest of the services?
---------
Dear Will:
Thank you for the follow-up questions. To address each individually:
1. Page 65 of the REST documentation discusses Candidate Administration, and includes a table
listing all Candidate standard fields. From a discovery perspective, you can run the following
discovery calls. The first returns all Candidate standard fields:
GET <<HOST_URL>>/object/candidate/description/standard
While the second returns all Candidate standard fields AND custom fields:
GET <<HOST_URL>>/object/candidate/description/custom
Does this address the question?
2. There is currently no method to submit a Candidate to a Requisition without a Candidate ID.
In light of this, please create the Candidate, and attach the Candidate to the Requisition per
the Candidate Applications calls starting on page 74.
If you'd like to see this type of functionality in the future (i.e. the ability to create and
submit a Candidate in a single step via the API), you may wish to consider leaving feedback on
the Taleo Knowledge Exchange. The Knowledge Exchange includes a Vote feature enabling you to
submit ideas in a forum setting to other Taleo Users. Fellow Users can then vote on your idea
or Enhancement Request. Our Product Management team actively monitors the Knowledge Exchange,
which will become the exclusive means to submit Enhancement Requests in the near future. To
register on the Knowledge Exchange, if you haven't already, please visit the link below:
http://knowledgeexchange.taleo.com/create-account.jspa
Please let me know if you have any additional questions. Thank you!
Regards,
Joe Cleary
TBE Support
---------
Joe, its been a really long time since I responded to this. I got pulled off of it and onto
other projects. You previously had asked if this answered my question. It kind of did. I ran
the get request to /object/candidate/description/custom and it does return a list of fields
but what I was wondering is there no way to make a request and receive the html for these
fields. I am going to have a hard time creating rules for all the data types you have here.
For example, "date", "phone", "currency", "Text(30)", "Text Area", "Custom", "Web Link".
Theres just so many of them. I don't know how to represent those as html form input fields.
And for the picklists, how would I get the values for those?
---------
Dear Will:
Thank you for the follow-up question.
It may be helpful to keep in mind the the Web Services API is not designed to return the HTML
for the various fields in the system. Unfortunately, Support isn't authorized to provide direct
assistance with HTML- or programming-specific questions. However, I'll attempt to assist you
to the best of my ability.
As a starting point, you may wish to examine how Taleo's web-based front-end interface is put
together. In your case specifically, you're interested in information about Requisition fields.
So let's take a look at an example Requisition; please refer to the steps below:
- Log into Taleo Business Edition.
- Click the Requisitions Tab.
- Click the title of any Requisition to open that record.
- On the following page, click the Edit button.
- On the edit page, right-click with your mouse.
- Select your browser's View Source or View Page Source option.
You'll notice that the source information includes values for various picklist options.
For example, the following code refers to the "EEO Job Category" picklist:
<td class='width160 right top nowrapFormLabelRequired' discoverableElement='formField' fieldName='jobCat' isRequired='true'><label id='label_for_field_jobCat' for='jobCat'>EEO Job Category:</label>
</td>
<td class='left top' colspan=1 style='width: 40%'><select class='text errorEnabledField fit minWidth220' name='jobCat' id='jobCat' tabIndex='10' aria-required="true" >
<option value='-1'>--Please select--</option>
<option value='113' >&#40;1.1&#41; Executive/Senior Level Officials and Managers</option>
<option value='114' selected >&#40;1.2&#41; First/Mid Level Officials &#38; Managers</option>
<option value='115' >&#40;2&#41; Professionals</option>
<option value='116' >&#40;3&#41; Technicians</option>
<option value='117' >&#40;4&#41; Sales Workers</option>
<option value='118' >&#40;5&#41; Administrative Support Workers</option>
<option value='119' >&#40;6&#41; Craft Workers</option>
<option value='120' >&#40;7&#41; Operatives</option>
<option value='121' >&#40;8&#41; Laborers &#38; Helpers</option>
<option value='122' >&#40;9&#41; Service Workers</option>
</select>
</td>
You'll notice that the HTML code includes unique option values for each picklist option. For example,
option value 116 corresponds to the "Technicians" option, in the context of the EEO Job Category field.
From an API perspective, it may be helpful to keep in mind that picklist values in particular may
each need an integration code; please refer to the "Discovery of Display Fields (for Picklists)"
section on page 25 of the REST API REFERENCE GUIDE document.
Please let me know if there are any questions about this information, or if I can provide
further assistance. Thank you!
Regards,
Joe Cleary
TBE Support
@gaurav731
Copy link

My Client uses Taleo Enterprise Edition so can i use Rest API to communicate or should i go for SOAP only.

@DMeritocra
Copy link

Hi Will

we're struggling in integrating with Oracle Taleo REST API, as well. Could you please suggest us where we can get equivalent help/support via chat with Oracle?

Thank you very much, you've been very helpful!

Danilo

@cdanderson
Copy link

@DMeritocra I'm looking too, but I couldn't find anything as I'm not a current customer. I'm trying to find RAML or JSON Schema documents for their REST API, but nothing exists. I called Oracle support and the best they could do is refer me to http://community.oracle.com which has a bunch of dead end threads - questions with no replies. Unfortunately it looks like TBE Support has been absorbed by the rest of Oracle, as far as I can tell.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment