Change log

DateAPI versionChange
4 September 2015v1.33Added authentication reference
24 September 2015v1.35Add "last-modified" support
10 October 2015v1.36Added object "forecast" for advertiser
5 November 2015v1.37Campaigns, campaign_groups, creatives, sites added to common objects

Introduction

This document describes the API of GetIntent RTBSuite platform. The API consists of two major parts:

General approach: Methods and Objects

API is built as JSON RESTful service and support standard GET/PUT/DELETE methods. Each API object entity has it’s own JSON representation. Each JSON entity object has a name and an id:

{
	id: 1,
	name: "<name>",
 	...
}                                    

Also some objects may belong to a specific advertiser, in this case advertiser_id field would be required

{
	id: 1,
	name: "<name>",
	advertiser_id: 6
 	...
}                         

The general URL API pattern is: 

http://ui.getintent.com/api/v1/<object_type>/<action>(/<id>)?token=<token>

Where <token> is authentication token (can be obtained through user settings in UI)

Controlling API output

API output is controlled by the following additional parameters and headers

Additional parameters

ParameterDescriptionAvailable at, methodValuesBy defaultExample
mode

Affects on list's view.

Old version: all collection will be returned at root (deprecated)

New version: all collection will be placed to data node

Value recommend to use always: 1

all, list

0 - old version (deprecated).

1 - new version.

0../list?token=<token>&mode=1
custom_fields

Includes all listed object's fields in output for "list" method

listListed by comma additional fields.null../list?token=<token>&custom_fields=starts,ends
page_limit

Limits count of items per request.

Realizes pagination.

If "page_limit" parameter is used, then "mode" property's value becomes mode=1 automatically.

all, listCount of items per one page.null../list?token=<token>&page_limit=10
pageCurrent page. Works with "page_limit" method together only.all, listCurrent page in output.null../list?token=<token>&page_limit=10&page=2
prettyControls JSON output formatall,list0 - minimized JSON ,
1 - formatted JSON 
0../list?token=<token>&page_limit=10&pretty=1

Additional headers

ParameterDescriptionAvailable at, methodValuesBy defaultExample
if-modified-since

Return header HTTP 304 Not Modified
without content, if data has not updated since this date

listDate in specify format
D, d M Y H:i:s GMT
nullif-modified-since: Fri, 18 Sep 2015 10:34:37 GMT
{
    "data": {
        "921": {
            "id": "921",
            "name": "test_campaign"
        },
        "1400": {
            "id": "1400",
            "name": "1"
        }
    },

    "pages": {
        "total_elements": "6",
        "total_pages": 3,
        "current_page": 1,
        "previous_page": false,
        "next_page": 2,
        "page_size": 2,
        "offset": 0
    }
}