API documentation

Description:
A JSON based RESTful API, with the action: project_keyword_rankings. The action selects the keywords available for a project, assigned to the user. Only supports the GET verb.
Authentication: Done by validating an API key, unique for each user. No session support - not planned.

Mandatory parameters:
username=
api_key=
project_id=
date=YYYY-MM-DD
action=project_keyword_rankings

Optional parameters:
//Scrape type. Available types:
// 1->organic
// 2->local
// 3->mobile
//Default: 1 -> organic

scrape_type_id=1

//Filter by keyword set. Accepts a keyword set ID.
//Default: 'all'

selected_ks='all'

//Max results to return. Can be used for pagination.
//Defaults to 10000

count=10000

//Amount of pages to skip. Can be used for pagination.
//Defaults to 10000

page=0

//Filter per page on google SERP
//Defaults to 0 - any page.

perPage=0

Returns
JSON Data

{  
"status":"success",
"messages":[ ],
"data":{
"total":"920",
"items":[ {
"prev_rank":"36",
"keyword_id":"61294",
"keyword":"12 volt kaffeemaschine test",
"keyword_group":null,
"keyword_group_id":null,
"ranking":"36",
"ranking_change":"0",
"url":"http:\/\/www.kaffeemaschinen-vergleich.com\/produkt\/lavazza\/lavazza-kaffeekapselmaschine-10080892-test\/",
"date":"2016-01-31 05:45:31",
"rank":"app.keywords.outsideTop100",
"diff_rank":""
}
]
}
}

Error codes
'app.api.no.project_id.specified'
'app.api.no.action.specified'
'app.api.unknown.action'
'app.api.no.date.specified'
'app.api.no.username.specified'
'app.api.no.api_key.specified'
'app.api.auth.failed'
'app.api.project.access.denied'

Notes
The "ranking" field is a positive value, 0 or a negative one. 0 means the keyword does not rank for the main domain, but ranks for a competitor. It can be considered "outside from top 100". A negative value means the keyword does not rank at all and should be considered "outside from top 100".