Taleo Business Edition REST API Overview

Taleo Business Edition: Integration Features Overview

Taleo Business Edition (TBE) provides an easy to use, implement and customize solution that even the smallest companies can afford. TBE solution for mid-sized business allows to simplify recruiting, onboarding, hiring, and performance management with unmatched flexibility.

In this post I want to talk about TBE online integration approaches. TBE supports both SOAP and REST integration protocols. You can find more information in the following documentation:

Please note although the Web Services SOAP API continues to be supported, all new development is focused exclusively on the REST API. All Taleo Business Edition customers interested in developing integrations are encouraged to utilize the REST API.
In my opinion REST API more simple and powerful and I will use REST in examples discussed below. For comparision of mentioned protocols you can see the following table:

REST SOAP
Assumes a point-to-point communication model–not usable for distributed computing environment where message may go through one or more intermediaries Designed to handle distributed computing environments
Minimal tooling/middleware is necessary. Only HTTP support is required Requires significant tooling/middleware support
URL typically references the resource being accessed/deleted/updated The content of the message typically decides the operation e.g. doc-literal services
Not reliable – HTTP DELETE can return OK status even if a resource is not deleted Reliable
Formal description standards not in widespread use. WSDL 1.2, WADL are candidates. Well defined mechanism for describing the interface e.g. WSDL+XSD, WS-Policy
Better suited for point-to-point or where the intermediary does not play a significant role Well suited for intermediated services
No constraints on the payload Payload must comply with the SOAP schema
Only the most well established standards apply e.g. HTTP, SSL. No established standards for other aspects.  DELETE and PUT methods often disabled by firewalls, leads to security complexity. A large number of supporting standards for security, reliability, transactions.
Built-in error handling (faults) No error handling
Tied to the HTTP transport model Both SMTP and HTTP are valid application layer protocols used asTransport for SOAP
Less verbose More verbose

Using Taleo Business Edition REST API

The REST API provided is in a passive manner. Passive meaning the API sits at rest which you can query as often or as little as required through your developer tools. Your built integration would login to Taleo programmatically, query for the prevalent data it is looking for (i.e. find new hires over past 24 hours), extract the data in Taleo JSON/XML format, reformat to what’s required for your 3rd party system, and then send it through to that system. Once you have completed engagement through Taleo’s API for that session, please logout of the service for security purposes.

REST RESOURCES

The Taleo Business Edition REST API focuses on resources of a specific Taleo Business Edition instance. A resource is any layer of information in context. This can include object records like an employee record, a location, a region, a work history instance, etc. Or can include discovery level data like licensed services, metadata or display fields.

METHODS

Taleo Business Edition uses the standard GET, PUT, POST and DELETE methods for the REST API. Each method defines the type of request to a resource; where that resource can be discover data, object record(s) or specialty functions supported within the application (i.e. upsert data, parse data).


In example below I will show how to create candidate record with REST API functions. For testing purposes I will use well known testing tool SOAP UI.

To work with REST services the following sequence must be implemented:

  1. Login
  2. Invoke resources (CREATE, UPDATE, DELETE, RETRIEVE)
  3. Logout

First of all you should find your Taleo Business Edition instance (Host / EndPoint) located in data center server pools. Simply login in your TBE zone and copy URL address. TBE endpoint should looks like below:

https://abc.tbe.taleo.net/abcNN/ats/api/v1n.

Once the host URL has been determined for a specific Taleo instance, you must then login for service and receipt of session authToken. The REST API requires submission of username, password and company code credentials as part of login resource request as parameters:

https://abc.tbe.taleo.net/abcNN/ats/api/v1/login?orgCode=<COMPANY_CODE>&userName=<USER>&password=<PASSWORD> .

See screenshots:

New REST


Login

The returning session authToken value provided has to be set in subsequent calls as part of the header (as a cookie). The rest of the URL structure will vary based on the core action you would like to take with the resource.


After a session has been established we can invoke needed resources and methods. To create candidate record I will use the following resource with POST method:

 https://abc.tbe.taleo.net/abcNN/ats/api/v1/object/candidate

Also I need to create message body in JSON format(1):

{
“candidate”: {
“city”: “Kyiv”,
“country”: “UA”,
“resumeText”: “TBE Rest API Test”,
“email”: “oskrypka@invalidemail.com”,
“firstName”: “Oleg”,
“lastName”: “Skrypka”,
“status”: 2
}
}

And put session authToken value into header section of message(2).

See screenshot:

Candidate

After completion, we see that the candidate record created successfully(3).

Finally I want to check new candidate data in TBE.

Candidate Profile

We see that candidate profile successfully created in the system.

And finally don’t forget to invoke logout operation before end of work:

POST https://abc.tbe.taleo.net/abcNN/ats/api/v1/logout


Good Luck.

Advertisements

6 thoughts on “Taleo Business Edition REST API Overview

  1. Do you need a developer contract with Taleo/Oracle in order to work with the API, is there a Sandbox environment to work in?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s