TrueRanker API Documentation
TrueRanker API reference: pull keyword tracking and ranking data into your own apps and reports.
Updated on
The TrueRanker API allows you to programmatically retrieve projects, keywords, and ranking data. This feature is available for users on the Agency Plan and above.
Authentication
To use the API, you need your API Key.
- You can find your API Key in your TrueRanker account.
- Alternatively, if you use the WordPress plugin, it is located in the plugin menu section.
All requests must include the key parameter in the URL.
API Endpoints
Base URL: https://app.trueranker.com/data
1. Get List of Projects
Retrieves all projects associated with your account.
Request:
https://app.trueranker.com/data/project/list?key=YOUR_API_KEY
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| key | String | Yes | Your API Key. |
Response Structure:
Array
(
[ok] => true
[data] => Array
(
[projects] => Array
(
[0] => Array
(
[id] => 94698
[created_at] => "2025-07-25 09:23:50"
[domain] => "ahrefs.com"
[num_keywords] => 23
[project_name] => "Ahrefs"
)
[1] => Array
(
[id] => 12350
[created_at] => "2020-04-23 08:27:52"
[domain] => "trueranker.com"
[num_keywords] => 284
[project_name] => "TrueRanker"
)
[2] => Array
(
[id] => 98648
[created_at] => "2025-12-03 11:57:18"
[domain] => "semrush.com"
[num_keywords] => 10
[project_name] => "Semrush"
)
// … more projects
)
)
)
2. Get Keywords & Ranks by Date Range
Retrieves keyword data and their ranking history between two specific dates.
Request:
https://app.trueranker.com/data/project/keyword/list?key=YOUR_API_KEY&project=12345&start=20230101&end=20230131
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| key | String | Yes | Your API Key. |
| project | Integer | Yes | The Project ID. |
| start | Date | Yes | Start date in YYYYMMDD format. |
| end | Date | Yes | End date in YYYYMMDD format. |
Response:
Array
(
[ok] => true
[data] => Array
(
[keywords] => Array
(
[0] => Array
(
[id] => 7207640
[keyword] => "rank tracking"
[tags] => Array ( [0] => "tag1", [1] => "tag2" )
[location] => "España"
[country] => "ES"
[device] => "desktop"
[volume] => 390
[best_rank_ever] => 3
[cpc] => "2.3150"
[rank] => Array
(
["2026-02-01"] => Array ( [rank] => 3, [url] => "https://trueranker.com/", [few] => true )
["2026-02-02"] => Array
(
[rank] => 7
[ov] => 11.988
[ai] => Array ( [snp] => true )
)
)
)
[1] => Array
(
[id] => 7207650
[keyword] => "seo competition tracker"
[tags] => Array ( [0] => "tag1", [1] => "tag2" )
[location] => "España"
[country] => "ES"
[device] => "desktop"
[volume] => 50
[best_rank_ever] => 6
[cpc] => "0.0000"
[rank] => Array
(
["2026-02-01"] => Array ( [rank] => 6, [url] => "https://trueranker.com/…", [ai] => Array ( [snp] => true ) )
["2026-02-02"] => Array ( [rank] => 7, [few] => true )
)
)
)
)
)
3. Get Competitors & Ranks by Date Range
Retrieves competitors keywords data and their ranking history between two specific dates.
Request:
https://app.trueranker.com/data/project/competitor/keyword/list?key=YOUR_API_KEY&project=12345&start=20230101&end=20230131
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| key | String | Yes | Your API Key. |
| project | Integer | Yes | The Project ID. |
| start | Date | Yes | Start date in YYYYMMDD format. |
| end | Date | Yes | End date in YYYYMMDD format. |
Response:
Array
(
[ok] => 1
[data] => Array
(
[num_keywords] => 2
[competitors] => Array
(
[0] => Array
(
[id] => 104686
[name] => "nightwatch.io"
[competitor_domain] => 27115
[active_at] => "2025-10-17 12:30:16"
[icon] => "\img\domains\favicon\n\27115.png"
[row_id] => "nightwatch_io"
)
[1] => Array
(
[id] => 104685
[name] => "wincher.com"
[competitor_domain] => 27122
[active_at] => "2025-10-17 12:30:04"
[icon] => "\img\domains\favicon\w\27122.png"
[row_id] => "wincher_com"
)
)
[keywords] => Array
(
[0] => Array
(
[id] => 7207640
[keyword] => "rank tracking"
[location] => "España"
[country] => "ES"
[device] => "desktop"
[volume] => 390
[best_rank_ever] => 3
[cpc] => "2.3150"
[rank] => Array
(
["2026-02-01"] => Array ( [rank] => 3, [url] => "https://trueranker.com/", [cr] => Array ( ["nightwatch.io"] => 8, ["wincher.com"] => 15 ) )
["2026-02-02"] => Array ( [rank] => 7, [ov] => 11.988, [cr] => Array ( ["nightwatch.io"] => 0, ["wincher.com"] => 4 ) )
)
)
[1] => Array
(
[id] => 7207650
[keyword] => "seo competition tracker"
[location] => "España"
[country] => "ES"
[device] => "desktop"
[volume] => 50
[best_rank_ever] => 6
[cpc] => "0.0000"
[rank] => Array
(
["2026-02-01"] => Array
(
[rank] => 6
[url] => "https://trueranker.com/seo-competitors-tool/"
[ai] => Array ( [snp] => 1 )
[cr] => Array
(
["nightwatch.io"] => Array ( [rank] => 0, [ov] => 0 )
["wincher.com"] => Array ( [rank] => 10, [ov] => 7.602 )
)
)
["2026-02-02"] => Array
(
[rank] => 7
[cr] => Array ( ["nightwatch.io"] => 0, ["wincher.com"] => 4 )
)
)
)
)
)
)
Error Handling
All requests return a JSON object. Check the ok boolean field.
- If
ok: true, the request was successful. - If
ok: false, check theerrorfield for a description of the problem (e.g., “Invalid API Key”, “Project not found”).