Mangools API Introduction

Mangools API is a REST api that enables access to all Mangools tools divided into basic endpoints and premium endpoints the require dedicated api plan

fetch('http://example.com/movies.json')
  .then(response => response.json())
  .then(data => console.log(data)
);

Authentication

Here we go on and on about how the heck do you authenticate for our api. Something about Bears?

Errors

Wanna know what you fucked up? Look at the error!

kwfinder

All kwfinder endpoints.

Get list of all locations
GET/kwfinder/locations
Parameters
namevalue typeparameter typedescription
query *requiredstringqueryName of location
fetch('http://api.mangools.com/v3/kwfinder/locations', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
[
  {
    "_id": "string",
    "name": "string",
    "country_code": "string",
    "canonical_name": "string",
    "code": "string",
    "label": "string",
    "google_domain": "string",
    "type": "string"
  }
]
Get detail of location
GET/kwfinder/locations/{location}
Parameters
namevalue typeparameter typedescription
location *requiredstringpathLocation ID
fetch('http://api.mangools.com/v3/kwfinder/locations/{location}', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "_id": "string",
  "name": "string",
  "country_code": "string",
  "canonical_name": "string",
  "code": "string",
  "label": "string",
  "google_domain": "string",
  "type": "string"
}
Get current and free limits.
GET/kwfinder/limits
fetch('http://api.mangools.com/v3/kwfinder/limits', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "competitor-keywords-rows": "integer",
  "related-keywords-rows": "integer",
  "reqs-per-short-period": "integer",
  "resources": {
    "related-keywords": {
      "limit": "integer",
      "remaining": "integer",
      "reset": "integer"
    },
    "trends": {
      "limit": "integer",
      "remaining": "integer",
      "reset": "integer"
    },
    "checked-keywords-ranks": {
      "limit": "integer",
      "remaining": "integer",
      "reset": "integer"
    },
    "tracked_keywords": {
      "limit": "integer",
      "remaining": "integer",
      "reset": "integer"
    },
    "serps": {
      "limit": "integer",
      "remaining": "integer",
      "reset": "integer"
    },
    "links": {
      "limit": "integer",
      "remaining": "integer",
      "reset": "integer"
    },
    "sch-url-metrics": {
      "limit": "integer",
      "remaining": "integer",
      "reset": "integer"
    },
    "lm-url-metrics": {
      "limit": "integer",
      "remaining": "integer",
      "reset": "integer"
    },
    "sp-overview": {
      "limit": "integer",
      "remaining": "integer",
      "reset": "integer"
    },
    "lm-suggest": {
      "limit": "integer",
      "remaining": "integer",
      "reset": "integer"
    }
  },
  "tracked-keywords": "number",
  "upgraded_account": "boolean"
}
Get competitor-keywords
GET/kwfinder/competitor-keywords
Parameters
namevalue typeparameter typedescription
location_id *requiredintegerqueryID of location, default 2840
url *requiredintegerqueryTarget URL / domain / subdomain
fetch('http://api.mangools.com/v3/kwfinder/competitor-keywords', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "competitorId": "string",
  "url_type": "string",
  "location": {
    "_id": "integer",
    "label": "string",
    "code": "integer"
  },
  "competitors": "array",
  "keywords": "array"
}
Get SERP results
GET/kwfinder/serps
Parameters
namevalue typeparameter typedescription
location_id integerqueryID of location, default 2840
language_id integerqueryID of language_id
platform_id integerqueryID of platform_id, default 0
parserType integerqueryID of parserType, default 0
page integerquerypage, default 0
kw *requiredstringquerykeyword
fetch('http://api.mangools.com/v3/kwfinder/serps', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "_id": "string",
  "kw": "string",
  "page": "string",
  "location_id": "string",
  "platform_id": "integer",
  "parserType": "string",
  "items": "array",
  "browser": "object",
  "rank": "number",
  "rank_updated_at": "integer",
  "created_at": "number",
  "ctr": "array",
  "results": "integer"
}
Import keywords.
POST/kwfinder/keyword-imports
Request body
{
  "keywords": [
    "seo agency",
    "seo",
    "seo specialist"
  ],
  "location_id": 21167,
  "language_id": 1000
}
fetch('http://api.mangools.com/v3/kwfinder/keyword-imports', {
  method: 'POST',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    keywords: [
      "seo agency",
      "seo",
      "seo specialist"
    ],
    location_id: 21167,
    language_id: 1000
  }
}
})
.then(response => {})
.catch(error => {});
Response body
{
  "keywords": "array",
  "language": {
    "code": "string",
    "label": "string",
    "_id": "string"
  },
  "location": {
    "_id": "string",
    "name": "string",
    "country_code": "string",
    "canonical_name": "string",
    "code": "string",
    "label": "string",
    "google_domain": "string",
    "type": "string"
  },
  "rate_limited": "boolean"
}
Get related keywords
GET/kwfinder/related-keywords
Parameters
namevalue typeparameter typedescription
kw *requiredstringquerykeyword
location_id integerqueryID of location, default 0
language_id integerqueryLanguage ID, default 0
fetch('http://api.mangools.com/v3/kwfinder/related-keywords', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "keywords": "array",
  "language": {
    "code": "string",
    "label": "string",
    "_id": "string"
  },
  "location": {
    "_id": "string",
    "name": "string",
    "country_code": "string",
    "canonical_name": "string",
    "code": "string",
    "label": "string",
    "google_domain": "string",
    "type": "string"
  },
  "rate_limited": "boolean",
  "_id": "string"
}
Export keywords into CSV file.
POST/kwfinder/keywords

fields can be used to filter columns you wish to include in the export. possible values include:

  • kw: Keyword
  • sv: Avg. Search Volume
  • lid: Location
  • cpc: Cost per click
  • ppc: Pay per click
  • seo: Keyword difficulty
  • msv: Monthly Search Volume
Request body
{
  "keyword_ids": [
    "916647301d98e2ec41df257cbdf97ac0",
    "916647301d98e2ec41df257cbdf97ac0"
  ],
  "fields": [
    "kw",
    "lid",
    "..."
  ]
}
fetch('http://api.mangools.com/v3/kwfinder/keywords', {
  method: 'POST',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    keyword_ids: [
      "916647301d98e2ec41df257cbdf97ac0",
      "916647301d98e2ec41df257cbdf97ac0"
    ],
    fields: [
      "kw",
      "lid",
      "..."
    ]
  }
}
})
.then(response => {})
.catch(error => {});
Get history of lookups
GET/kwfinder/requests
Parameters
namevalue typeparameter typedescription
limit *requiredintegerqueryLimit number of result, max 25
fetch('http://api.mangools.com/v3/kwfinder/requests', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
[
  {
    "kw": "string",
    "language": {
      "_id": "integer",
      "label": "string",
      "code": "integer"
    },
    "location": {
      "_id": "integer",
      "label": "string",
      "code": "integer"
    },
    "rank": "integer",
    "rank_ts": "number",
    "t": "number"
  }
]
Get trends.
GET/kwfinder/trends
Parameters
namevalue typeparameter typedescription
kw *requiredstringquerykeyword
fetch('http://api.mangools.com/v3/kwfinder/trends', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "created_at": "integer",
  "data": "array",
  "_id": "integer"
}
Get all lists
GET/kwfinder/lists
fetch('http://api.mangools.com/v3/kwfinder/lists', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
[
  {
    "name": "string",
    "user_id": "string",
    "keyword_ids": "array",
    "created_at": "integer"
  }
]
Add new list
POST/kwfinder/lists
Request body
{
  "keyword_ids": [
    "string"
  ],
  "name": "string"
}
fetch('http://api.mangools.com/v3/kwfinder/lists', {
  method: 'POST',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    keyword_ids: [
      "string"
    ],
    name: "string"
  }
}
})
.then(response => {})
.catch(error => {});
Response body
{
  "name": "string",
  "user_id": "string",
  "keyword_ids": "array",
  "created_at": "integer"
}
Get items in List, filter by list ID.
GET/kwfinder/lists/{list_id}
Parameters
namevalue typeparameter typedescription
list_id *requiredstringpathID of list to print
fields *requiredstringqueryfilter fields
fetch('http://api.mangools.com/v3/kwfinder/lists/{list_id}', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "keywords": "array",
  "list": {
    "name": "string",
    "user_id": "string",
    "keyword_ids": "array",
    "created_at": "integer"
  }
}
Update List name
PATCH/kwfinder/lists/{list_id}
Parameters
namevalue typeparameter typedescription
list_id *requiredintegerpathList ID to add keywords
Request body
{
  "name": "My Awesome Keyword List"
}
fetch('http://api.mangools.com/v3/kwfinder/lists/{list_id}', {
  method: 'PATCH',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    name: "My Awesome Keyword List"
  }
}
})
.then(response => {})
.catch(error => {});
Remove custom list
DELETE/kwfinder/lists/{list_id}
Parameters
namevalue typeparameter typedescription
list_id *requiredstringpathlist ID
fetch('http://api.mangools.com/v3/kwfinder/lists/{list_id}', {
  method: 'DELETE',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Add new keywords to the list
POST/kwfinder/lists/{list_id}/keyword
Parameters
namevalue typeparameter typedescription
list_id *requiredstringpathlist ID
Request body
{
  "keyword_ids": [
    "string"
  ]
}
fetch('http://api.mangools.com/v3/kwfinder/lists/{list_id}/keyword', {
  method: 'POST',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    keyword_ids: [
      "string"
    ]
  }
}
})
.then(response => {})
.catch(error => {});
Remove keywords from the list
DELETE/kwfinder/lists/{list_id}/keyword
Parameters
namevalue typeparameter typedescription
list_id *requiredstringpathlist ID
Request body
{
  "keyword_ids": [
    "string"
  ]
}
fetch('http://api.mangools.com/v3/kwfinder/lists/{list_id}/keyword', {
  method: 'DELETE',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    keyword_ids: [
      "string"
    ]
  }
}
})
.then(response => {})
.catch(error => {});

linkminer

All linkminer endpoints.

Get list of all exports, sorted by created_at
GET/linkminer/exports
fetch('http://api.mangools.com/v3/linkminer/exports', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Create new exports task
POST/linkminer/exports
Parameters
namevalue typeparameter typedescription
url *requiredN/Abodyurl in various formats (dsl.sk, www.dsl.sk, http://dsl.sk)
fetch('http://api.mangools.com/v3/linkminer/exports', {
  method: 'POST',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Get suggestions (suggestion is - similar url, count of backlinks for this url, expected cost for simialr url) for url
POST/linkminer/exports/suggest/
Parameters
namevalue typeparameter typedescription
url *requiredN/Abodyurl in various formats (dsl.sk, www.dsl.sk, http://dsl.sk)
fetch('http://api.mangools.com/v3/linkminer/exports/suggest/', {
  method: 'POST',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Get url metrics for target URL
GET/linkminer/url-metrics
Parameters
namevalue typeparameter typedescription
url *requiredintegerqueryTarget URL
fetch('http://api.mangools.com/v3/linkminer/url-metrics', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "_id": "integer",
  "meta": {
    "url_type": "string",
    "available_links": "object"
  },
  "links": "array"
}
See favorite links
GET/linkminer/favorites
fetch('http://api.mangools.com/v3/linkminer/favorites', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "_id": "integer",
  "meta": {
    "url_type": "string",
    "available_links": "object"
  },
  "links": "array"
}
Get latest used requests.
GET/linkminer/requests
Parameters
namevalue typeparameter typedescription
limit *requiredintegerqueryLimit number of result, max 25
fetch('http://api.mangools.com/v3/linkminer/requests', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "_id": "integer",
  "meta": {
    "url_type": "string",
    "available_links": "object"
  },
  "links": "array"
}

serpchecker

All serpchecker endpoints.

Get serp result as in serpchecker.
GET/serpchecker/serps
Parameters
namevalue typeparameter typedescription
location_id *requiredintegerquerylocation ID - 0 for any
kw *requiredstringqueryKeyword
fetch('http://api.mangools.com/v3/serpchecker/serps', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "_id": "integer",
  "meta": {
    "url_type": "string",
    "available_links": "object"
  },
  "links": "array"
}
Get url-metrics for url.
GET/serpchecker/url-metrics
Parameters
namevalue typeparameter typedescription
url *requiredstringqueryTarget URL
fetch('http://api.mangools.com/v3/serpchecker/url-metrics', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "_id": "integer",
  "meta": {
    "url_type": "string",
    "available_links": "object"
  },
  "links": "array"
}
Get latest requests.
GET/serpchecker/requests
Parameters
namevalue typeparameter typedescription
limit *requiredintegerqueryLimit number of result, max 25
fetch('http://api.mangools.com/v3/serpchecker/requests', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "_id": "string",
  "owner": "string",
  "url": "string",
  "created_at": "string"
}
Get serp snapshot image url
GET/serpchecker/serps/{serp_id}/snapshot
Parameters
namevalue typeparameter typedescription
serp_id *requiredstringpathserp ID
fetch('http://api.mangools.com/v3/serpchecker/serps/{serp_id}/snapshot', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "image": "string"
}

serpwatcher

All serpwatcher endpoints.

Creates new annotation.
POST/serpwatcher/trackings/{tracking_id}/annotations
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathID of Tracking that the annotation will be created on
Request body
{
  "date": "string",
  "text": "string"
}
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/annotations', {
  method: 'POST',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    date: "string",
    text: "string"
  }
}
})
.then(response => {})
.catch(error => {});
Response body
{
  "date": "string",
  "content": {
    "text": "string",
    "keywords_count": "number",
    "avg": "number",
    "platformId": "number"
  },
  "tracking_id": "string",
  "user_id": "string",
  "created_at": "string",
  "type": "number"
}
Change annotation text.
PUT/serpwatcher/trackings/{tracking_id}/annotations/{annotation_id}
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathTracking ID
annotation_id *requiredstringpathannotation ID
Request body
{
  "text": "string"
}
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/annotations/{annotation_id}', {
  method: 'PUT',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    text: "string"
  }
}
})
.then(response => {})
.catch(error => {});
Response body
{
  "date": "string",
  "content": {
    "text": "string",
    "keywords_count": "number",
    "avg": "number",
    "platformId": "number"
  },
  "tracking_id": "string",
  "user_id": "string",
  "created_at": "string",
  "type": "number"
}
Remove annotation.
DELETE/serpwatcher/trackings/{tracking_id}/annotations/{annotation_id}
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathTracking ID
annotation_id *requiredstringpathannotation ID
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/annotations/{annotation_id}', {
  method: 'DELETE',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Get all reports.
GET/serpwatcher/trackings/{tracking_id}/reports
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathTracking ID
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/reports', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "user_id": "string",
  "tracking_id": "string",
  "type": "string",
  "emails": "string",
  "name": "string",
  "triggers": "string",
  "created_at": "string"
}
Create new report
POST/serpwatcher/trackings/{tracking_id}/reports
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathTracking ID
Request body
{
  "emails": [
    "string"
  ],
  "name": "string",
  "type": "integer",
  "triggers": [
    "integer"
  ]
}
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/reports', {
  method: 'POST',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    emails: [
      "string"
    ],
    name: "string",
    type: "integer",
    triggers: [
      "integer"
    ]
  }
}
})
.then(response => {})
.catch(error => {});
Response body
{
  "user_id": "string",
  "tracking_id": "string",
  "type": "string",
  "emails": "string",
  "name": "string",
  "triggers": "string",
  "created_at": "string"
}
Update report
PUT/serpwatcher/trackings/{tracking_id}/reports/{report_id}
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathTracking ID
report_id *requiredstringpathReport ID
Request body
{
  "emails": [
    "string"
  ],
  "name": "string",
  "type": "integer",
  "triggers": [
    "integer"
  ]
}
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/reports/{report_id}', {
  method: 'PUT',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    emails: [
      "string"
    ],
    name: "string",
    type: "integer",
    triggers: [
      "integer"
    ]
  }
}
})
.then(response => {})
.catch(error => {});
Response body
{
  "user_id": "string",
  "tracking_id": "string",
  "type": "string",
  "emails": "string",
  "name": "string",
  "triggers": "string",
  "created_at": "string"
}
Remove report.
DELETE/serpwatcher/trackings/{tracking_id}/reports/{report_id}
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathTracking ID
report_id *requiredstringpathReport ID
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/reports/{report_id}', {
  method: 'DELETE',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Get all tags.
GET/serpwatcher/tags
fetch('http://api.mangools.com/v3/serpwatcher/tags', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "user_id": "string",
  "tracking_id": "string",
  "name": "string",
  "color": "string",
  "created_at": "string"
}
Get all tags for tracking
GET/serpwatcher/trackings/{tracking_id}/tags
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathTracking ID
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/tags', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "user_id": "string",
  "tracking_id": "string",
  "name": "string",
  "color": "string",
  "created_at": "string"
}
Create new tag for tracking
POST/serpwatcher/trackings/{tracking_id}/tags
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathTracking ID
Request body
{
  "name": "string",
  "color": "string"
}
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/tags', {
  method: 'POST',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    name: "string",
    color: "string"
  }
}
})
.then(response => {})
.catch(error => {});
Response body
{
  "user_id": "string",
  "tracking_id": "string",
  "name": "string",
  "color": "string",
  "created_at": "string"
}
Deletes tag from tracking
DELETE/serpwatcher/trackings/{tracking_id}/tags
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathTracking ID
tag_id *requiredstringqueryTag ID
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/tags', {
  method: 'DELETE',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "user_id": "string",
  "tracking_id": "string",
  "name": "string",
  "color": "string",
  "created_at": "string"
}
Updates tag
PUT/serpwatcher/trackings/{tracking_id}/tags/{tag_id}
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathTracking ID
tag_id *requiredstringpathTag ID
Request body
{
  "name": "string",
  "color": "string"
}
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/tags/{tag_id}', {
  method: 'PUT',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    name: "string",
    color: "string"
  }
}
})
.then(response => {})
.catch(error => {});
Response body
{
  "user_id": "string",
  "tracking_id": "string",
  "name": "string",
  "color": "string",
  "created_at": "string"
}
Assign tracking with tag
POST/serpwatcher/trackings/{tracking_id}/tags/assign
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathTracking ID
Request body
{
  "keyword_ids": [
    "string"
  ],
  "tag_ids": [
    "string"
  ]
}
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/tags/assign', {
  method: 'POST',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    keyword_ids: [
      "string"
    ],
    tag_ids: [
      "string"
    ]
  }
}
})
.then(response => {})
.catch(error => {});
Response body
{
  "user_id": "string",
  "tracking_id": "string",
  "name": "string",
  "color": "string",
  "created_at": "string"
}
Unassign tag from tracking
POST/serpwatcher/trackings/{tracking_id}/tags/unassign
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathTracking ID
Request body
{
  "keyword_ids": [
    "string"
  ],
  "tag_ids": [
    "string"
  ]
}
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/tags/unassign', {
  method: 'POST',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    keyword_ids: [
      "string"
    ],
    tag_ids: [
      "string"
    ]
  }
}
})
.then(response => {})
.catch(error => {});
Response body
Get all tracked keywords.
GET/serpwatcher/trackings/{tracking_id}/tracked-keywords
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathid of tracking
fields stringqueryFilter of attributes for returned objects. Specify in format (separate with comma): tracking_id,keyword_id,kw,location_id,platform_id,rank,sv,active,ranks
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/tracked-keywords', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "keyword_id": "string",
  "tracking_id": "string",
  "user_id": "string",
  "kw": "string",
  "location_id": "string",
  "platform_id": "string"
}
Track another keyword
POST/serpwatcher/trackings/{tracking_id}/tracked-keywords
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathtracking_id
from stringqueryFilter from date
to stringqueryFilter to date
share_token stringqueryshare_token
Request body
{
  "keywords": [
    "string"
  ],
  "tag_ids": [
    "string"
  ]
}
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/tracked-keywords', {
  method: 'POST',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    keywords: [
      "string"
    ],
    tag_ids: [
      "string"
    ]
  }
}
})
.then(response => {})
.catch(error => {});
Response body
{
  "keyword_id": "string",
  "tracking_id": "string",
  "user_id": "string",
  "kw": "string",
  "location_id": "string",
  "platform_id": "string"
}
Remove keyword from tracking
DELETE/serpwatcher/trackings/{tracking_id}/tracked-keywords
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathtracking_id
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/tracked-keywords', {
  method: 'DELETE',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "keyword_id": "string",
  "tracking_id": "string",
  "user_id": "string",
  "kw": "string",
  "location_id": "string",
  "platform_id": "string"
}
Get tracked keywords in tracking list
GET/serpwatcher/trackings/{tracking_id}/tracked-keywords/{tracked_keyword_id}
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathtracking_id
tracked_keyword_id *requiredstringpathtracked_keyword_id
from stringqueryFilter from date
to stringqueryFilter to date
share_token stringqueryshare_token
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}/tracked-keywords/{tracked_keyword_id}', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "keyword_id": "string",
  "tracking_id": "string",
  "user_id": "string",
  "kw": "string",
  "location_id": "string",
  "platform_id": "string"
}
Create tracking
POST/serpwatcher/trackings
Request body
{
  "domain": "string",
  "location_id": "integer",
  "platform_id": "integer",
  "keywords": [
    "string"
  ]
}
fetch('http://api.mangools.com/v3/serpwatcher/trackings', {
  method: 'POST',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  {
  body: {
    domain: "string",
    location_id: "integer",
    platform_id: "integer",
    keywords: [
      "string"
    ]
  }
}
})
.then(response => {})
.catch(error => {});
Response body
{
  "tracking": "string",
  "keywords": "string",
  "postponed_processing": "string"
}
Get all trackings
GET/serpwatcher/trackings
Parameters
namevalue typeparameter typedescription
from stringqueryFilter from date
to stringqueryFilter to date
fetch('http://api.mangools.com/v3/serpwatcher/trackings', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "user_id": "string",
  "domain": "string",
  "location_id": "string",
  "location": "string",
  "platform_id": "string",
  "created_at": "string"
}
Get detail of tracking
GET/serpwatcher/trackings/{tracking_id}
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathtracking_id
from stringqueryFilter from date
to stringqueryFilter to date
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "user_id": "string",
  "domain": "string",
  "location_id": "string",
  "location": "string",
  "platform_id": "string",
  "created_at": "string"
}
Remove tracking
DELETE/serpwatcher/trackings/{tracking_id}
Parameters
namevalue typeparameter typedescription
tracking_id *requiredstringpathtracking_id
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}', {
  method: 'DELETE',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Ability to change tracking domain, location
PUT/serpwatcher/trackings/{tracking_id}
Parameters
namevalue typeparameter typedescription
domain *requiredN/AbodyNew domain name
fetch('http://api.mangools.com/v3/serpwatcher/trackings/{tracking_id}', {
  method: 'PUT',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});

siteprofiler

All siteprofiler endpoints.

Get overview for siteprofiler.
GET/siteprofiler/overview
Parameters
namevalue typeparameter typedescription
url *requiredstringqueryTarget URL / domain / subdomain
fetch('http://api.mangools.com/v3/siteprofiler/overview', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "urlMetrics": {
    "_id": "string",
    "domain": "string",
    "m": {
      "majestic": {
        "v": "object",
        "ts": "string"
      },
      "moz": {
        "v": "object",
        "ts": "string"
      }
    },
    "ts": "string"
  },
  "webSiteMetrics": {
    "_id": "string",
    "domain": "string",
    "m": {
      "majestic": {
        "v": "object",
        "ts": "string"
      },
      "moz": {
        "v": "object",
        "ts": "string"
      }
    },
    "ts": "string"
  }
}
Get audience for siteprofiler.
GET/siteprofiler/audience
Parameters
namevalue typeparameter typedescription
url *requiredstringqueryTarget URL / domain / subdomain
fetch('http://api.mangools.com/v3/siteprofiler/audience', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "urlMetrics": {
    "_id": "string",
    "domain": "string",
    "m": {
      "majestic": {
        "v": "object",
        "ts": "string"
      },
      "moz": {
        "v": "object",
        "ts": "string"
      }
    },
    "ts": "string"
  },
  "webSiteMetrics": {
    "_id": "string",
    "domain": "string",
    "m": {
      "majestic": {
        "v": "object",
        "ts": "string"
      },
      "moz": {
        "v": "object",
        "ts": "string"
      }
    },
    "ts": "string"
  }
}
Get top-content for siteprofiler.
GET/siteprofiler/top-content
Parameters
namevalue typeparameter typedescription
url *requiredstringqueryTarget URL / domain / subdomain
fetch('http://api.mangools.com/v3/siteprofiler/top-content', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "urlMetrics": {
    "_id": "string",
    "domain": "string",
    "m": {
      "majestic": {
        "v": "object",
        "ts": "string"
      },
      "moz": {
        "v": "object",
        "ts": "string"
      }
    },
    "ts": "string"
  },
  "webSiteMetrics": {
    "_id": "string",
    "domain": "string",
    "m": {
      "majestic": {
        "v": "object",
        "ts": "string"
      },
      "moz": {
        "v": "object",
        "ts": "string"
      }
    },
    "ts": "string"
  }
}
Get competitors for siteprofiler.
GET/siteprofiler/competitors
Parameters
namevalue typeparameter typedescription
url *requiredstringqueryTarget URL / domain / subdomain
fetch('http://api.mangools.com/v3/siteprofiler/competitors', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "urlMetrics": {
    "_id": "string",
    "domain": "string",
    "m": {
      "majestic": {
        "v": "object",
        "ts": "string"
      },
      "moz": {
        "v": "object",
        "ts": "string"
      }
    },
    "ts": "string"
  },
  "webSiteMetrics": {
    "_id": "string",
    "domain": "string",
    "m": {
      "majestic": {
        "v": "object",
        "ts": "string"
      },
      "moz": {
        "v": "object",
        "ts": "string"
      }
    },
    "ts": "string"
  }
}
Get latest used requests (last in 30days)
GET/siteprofiler/requests
fetch('http://api.mangools.com/v3/siteprofiler/requests', {
  method: 'GET',
  mode: 'cors',
  headers: {
    'X-access-Token': '<YOUR_API_KEY>'
  },
  
})
.then(response => {})
.catch(error => {});
Response body
{
  "_id": "string",
  "owner": "string",
  "url": "string",
  "created_at": "string"
}