Introducing the TA REST API

Tidal Automation (TA) is the premier enterprise job scheduling solution. In addition to the core functionality such as defining agents, agent lists, jobs, job groups, triggers, actions, events, and calendars, TA provides network support, monitoring and messaging services, security, flexibility, and fault tolerance.

TA allows developers and integrators to customize and extend the features using the REST API objects described in this guide.

REST API Objects

The basic foundation of REST API is an ApiObject. The ApiObject provides an abstraction of Tidal Automation objects (thereby hiding the implementation details).

ApiObject is the "root" class and is extended by the base objects such as Node and Action. The base classes are extended by additional objects such as MasterNode and AlertAction. A list of currently supported objects in REST API is described in Appendix (A).

ApiObject has fields for maintaining the integrity of the Tidal Automation data Model. The current list includes: lastChangeTime, revision, and revisionIndex.

ApiObject has a default behavior of CRUD operations.

The list of operations currently includes:

  • Create API object – create()

  • Retrieve API object(s) – get(), getList()

  • Update API object – update()

  • Delete API object – delete()

TA supports bulk Create, Update, and Delete API requests for all TA Objects. For more information, see Bulk Create, Update, and Delete Operations.

Some REST API objects may override the basic behavior of the CRUD methods. They may also support additional methods (for example, convenience methods).

A list of selected methods in REST API is described in Accessing Documentation for REST API Objects and Methods. Some commonly used objects and methods from REST API are covered in this guide.

REST API Call Template

REST API calls can be described using this template.

<?xml version="1.0" encoding="UTF-8"?>
<entry xmlns="http://purl.org/atom/ns#">
<id>id_value</id>
<tes:ApiObject.apiMethod xmlns:tes="http://www.tidalsoftware.com/client/tesservlet">
<tes:param1>param1_value</tes:param1>
<tes:paramN>paramN_value</tes:paramN>
</tes:ApiObject.apiMethod>
</entry>

Note: The standard header specifies the use of XML version 1.0 and UTF-8 encoding. The <entry> tag specifies the name space ("") for Atom. An object for REST API has a primary key (identifier) specified by the <id> tag. The xml name space tes is defined as tes:ApiObject.apiMethod is the fully qualified name of the method. A method can have one or more parameters.