Getting Started (v1 API)

Getting Started (v1 API)

by Community Manager on ‎02-15-2018 01:11 PM - edited on ‎02-20-2018 02:36 PM by Community Manager (383 Views)

This article is an overview of the Tealium v1 API. Browse the APIs in the side navigation to see what's offered. 

This is an older version of the current Tealium API.

In this article:

Table of Contents Placeholder

Root URL

Each API will have its own endpoint and supported parameters. The root URL for all API requests is:

https://api.tealiumiq.com/v1

An API endpoint will be documented with its specific HTTP method and the path, for example:

GET /revisions

Endpoints that use placeholder values will use curly braces like this: {value}. These will be replaced with values specific to your API calls. Most endpoints require the name of the iQ account and profile on which to perform the call in the path. 

A full API endpoint might look like this:

https://api.tealiumiq.com/v1/accounts/{account}/{profile}/revisions

Authentication

The API can only be used by users with a valid Tealium account. The API supports authentication using an email address and password to verifyi user identity. Prior to accessing any of the API endpoints, you must authenticate to start a session. All subsequent calls use a session cookie and CSRF token for security purposes.

Request and Response Format

The API supports JSON which means most calls must have the proper header set to:  Content-Type: application/json . Most responses will also be in the form of JSON. The documentation for each endpoint will have example curl calls and responses. 

Login

Upon a successful login you are granted two (2) items: a cookie named JSESSIONID and a token named utk. These values are then used to authenticate all subsequent API calls.

POST /v1/login

Curl Request

curl -i -d username='{email}' -d password='{password}' https://api.tealiumiq.com/v1/login

Example Request

curl -i -d username='user@example.com' -d password='password123' https://api.tealiumiq.com/v1/login

Example Response

HTTP/1.1 200 OK
 
Cache-Control: no-cache,no-store,must-revalidate
Content-Type: application/json
Date: Mon, 31 Oct 2016 20:39:29 GMT
Expires: 0
Pragma: no-cache
Set-Cookie: JSESSIONID=3513642946826543477; Path=/urest_service; Secure; HttpOnly
Set-Cookie: rememberMe=deleteMe; Path=/urest_service; Max-Age=0; Expires=Sun, 30-Oct-2016 20:39:29 GMT
X-NodeId: i-6c3ba529
X-Version: 0.0.528
X-XSS-Protection: 1;mode=block
Content-Length: 60
Connection: keep-alive

{ "utk": "65489FMSTJGF549870KSH", }

From this response you would make note of the following values for all subsequent API calls:

(Sample Values)

  • JSESSION = 3513642946826543477
  • utk = 65489FMSTJGF549870KSH