Download OpenAPI specification:
Public API documentation for Quaro.
https://api.quaro.io/v1
Authentication is handled with an API key.
key.The default rate limit is 3 requests per second, unless otherwise specified on an endpoint.
The API is currently organized into the following documented product areas:
Some endpoints are global and not tied to one suite.
Retrieve a credit overview for all booked products available in your Quaro account.
| key required | string Your API key. |
{- "key": "example_api_key"
}{- "credits": {
- "research_suite": {
- "used_credits": "12.34%",
- "start_date": "2019-08-24"
}, - "content_suite": {
- "new_projects": 0,
- "new_projects_limit": 0,
- "active_projects": 0,
- "active_projects_limit": 0,
- "adhoc_wdfidf": 0,
- "adhoc_wdfidf_limit": 0,
- "start_date": "2019-08-24"
}
}
}Retrieve search volume, CPC, SEA competition, categories, and average search volume for the specified keywords.
The data is based on the Google Ads API. Keyword metrics are updated once a month. Historical metrics may be available from the beginning of 2019, depending on how long metrics have been available for a keyword.
Not every keyword is monitored in this dataset. If a keyword is not monitored, it can be missing in the response.
| key required | string |
| keywords required | Array of strings <= 700 items |
| location_code required | integer Available locations can be fetched via the Quaro locations endpoint. |
| language_code required | string Available languages can be fetched via the Quaro locations endpoint. |
{- "key": "example_api_key",
- "keywords": [
- "sample"
], - "location_code": 2276,
- "language_code": "de"
}{- "data": [
- { }
]
}Retrieve search volume, CPC, SEA competition, and average search volume for the requested keywords.
Rate limit: 2 requests per minute. If location_code is omitted, Quaro returns international Google Ads data.
Use sv_length to control how many months are included in the historical output.
| key required | string |
| keywords required | Array of strings <= 1000 items |
| location_code | integer or null If omitted, international Adwords data is returned. |
| sv_length | integer <= 48 Default: 12 |
{- "key": "example_api_key",
- "keywords": [
- "sample"
], - "location_code": 2276
}{- "data": [
- { }
]
}Retrieve demo data for search volume, CPC, SEA competition, and average search volume. This endpoint does not consume credits.
If location_code is omitted, Quaro returns international Google Ads data.
| key required | string |
| keywords required | Array of strings <= 1000 items |
| location_code | integer or null If omitted, international Adwords data is returned. |
{- "key": "example_api_key",
- "keywords": [
- "sample"
], - "location_code": 2276
}{- "data": [
- { }
]
}Status endpoint for Quaro Search Volume and Google Search Volume.
Retrieve the latest available month for Quaro Search Volume and Google Search Volume data.
| key required | string |
{- "key": "example_api_key"
}{- "month": "string",
- "year": "string"
}Retrieve keywords, search volume, CPC, SEA competition, categories, and average search volume for a domain.
If location_code is omitted, Quaro returns international Google Ads data. Use sv_length to control how many months are included in the historical output.
| key required | string |
| domain required | string The target domain to analyze. |
| location_code | integer or null If omitted, Quaro returns international Google Ads data. |
| sv_length | integer <= 48 Default: 12 Number of months to include. Default: 12. Maximum: 48. |
{- "key": "example_api_key",
- "domain": "quaro.io",
- "location_code": 2276,
- "sv_length": 12
}{- "data": [
- { }
]
}Retrieve keywords, search volume, CPC, SEA competition, categories, and average search volume for a specific URL.
Use sv_length to control how many months are included in the historical output.
| key required | string |
| location_code | integer or null If omitted, Quaro returns international Google Ads data. |
| url required | string The target URL or domain to analyze. |
| sv_length | integer <= 48 Default: 12 Number of months to include. Default: 12. Maximum: 48. |
{- "key": "example_api_key",
- "location_code": 2276,
- "sv_length": 12
}{- "data": [
- { }
]
}Return the saved data of a single collection.
| key required | string |
| collection required | string Name of the collection stored in Quaro. |
{- "key": "example_api_key",
- "collection": "collection_name"
}{- "data": {
- "keywords": [
- { }
], - "collection": [
- { }
]
}
}Return the keywords of a single collection. Pass the collection name and API key directly in the path, for example /collection/keywords/get/collection_name&example_api_key.
| collection required | string Name of the collection stored in Quaro. |
| apikey required | string Your API key. |
{- "data": [
- { }
]
}Retrieve Google categories and any custom categories saved in Quaro.
| key required | string |
{- "key": "example_api_key"
}{- "categories": [
- { }
]
}Retrieve the categories configured for a Quaro monitoring project.
| key required | string |
| project_id required | string ID of the Quaro monitoring project. You can find it by opening the project in app.quaro.io and copying the last segment of the URL. |
| mother_cat | string Optional mother category filter. |
| cat_level | integer Optional category level filter. |
| domains | Array of strings Optional domain filter list. |
| selectedDates | Array of strings <date-time> [ items <date-time > ] Optional list of selected dates to scope the result. |
{- "key": "example_api_key",
- "project_id": "project_id"
}{- "count": 165,
- "categories": [
- {
- "categories": {
- "level0": "sample_category"
}, - "monthly_searches": [ ],
- "category_id": "sample_category",
- "level": 0,
- "project_id": "667ea60ae8c4af32bcb2cd92",
- "keyword_count": 30943,
- "processed_dates": [ ]
}
]
}Add up to 1000 keywords to a Quaro monitoring project. Rate limit: 1 request per 10 seconds.
| key required | string |
| project_id required | string ID of the Quaro monitoring project. You can find it by opening the project in app.quaro.io and copying the last segment of the URL. |
| keywords required | Array of strings <= 1000 items |
| category_id required | string Category ID from |
{- "key": "example_api_key",
- "project_id": "project_id",
- "keywords": [
- "keyword1",
- "keyword2"
], - "category_id": "sample_category"
}{ }Delete keywords from a Quaro monitoring project.
| key required | string |
| project_id required | string ID of the Quaro monitoring project. You can find it by opening the project in app.quaro.io and copying the last segment of the URL. |
| keywords required | Array of strings |
{- "key": "example_api_key",
- "project_id": "project_id",
- "keywords": [
- "keyword1",
- "keyword2"
]
}{ }Retrieve all Quaro monitoring projects available in your Quaro workspace.
| key required | string |
{- "key": "example_api_key"
}{- "projects": [
- {
- "_id": "string",
- "title": "string",
- "domain": "string",
- "device": "string",
- "keyword_count": 0,
- "categorized_project": true,
- "created_date": "2019-08-24T14:15:22Z",
- "interval": 0,
- "processed_dates": [
- "2019-08-24T14:15:22Z"
], - "latest_date": "2019-08-24T14:15:22Z",
- "latest_serp_fetched_date": "2019-08-24T14:15:22Z",
- "serp_fetching_date": "2019-08-24T14:15:22Z",
- "environment": "string",
- "google": true,
- "serp_depth": 0,
- "top_competitors": [
- {
- "_id": "string",
- "domain": "string",
- "position": 0,
- "visibility": [
- {
- "date": "2019-08-24T14:15:22Z",
- "value": 0,
- "top10": 0,
- "top50": 0,
- "top100": 0,
- "_id": "string",
- "ai_ref_count": 0
}
]
}
], - "langloc": { },
- "setup": { },
- "status": { },
- "latest_response_dates": { }
}
]
}Retrieve the keywords of a Quaro monitoring project. Use select to choose returned fields, skip to offset the result set, and limit to control how many records are returned per request.
| key required | string |
| project_id required | string ID of the Quaro monitoring project. You can find it by opening the project in app.quaro.io and copying the last segment of the URL. |
| select | string Optional field selection for the returned keyword records. |
| skip | integer Optional number of keyword records to skip before returning results. |
| limit | integer Optional limit for the returned keyword records. The current code maps this value to the monitoring batch size and caps it at 1000. |
{- "key": "example_api_key",
- "project_id": "project_id"
}{- "count": 0,
- "keywords": [ ]
}Retrieve the top competitor domains for a Quaro monitoring project.
| key required | string |
| project_id required | string ID of the Quaro monitoring project. You can find it by opening the project in app.quaro.io and copying the last segment of the URL. |
| limit | integer Maximum number of competitors to return. |
{- "key": "example_api_key",
- "project_id": "project_id",
- "limit": 10
}{- "count": 0,
- "competitors": [ ]
}Retrieve the top competitor domains within a specific category of a Quaro monitoring project. If no custom sort is provided, results are ordered by the most recent visibility value.
| key required | string |
| project_id required | string ID of the Quaro monitoring project. You can find it by opening the project in app.quaro.io and copying the last segment of the URL. |
| category_id required | string Category ID to filter the competitor list, for example |
| limit | integer Maximum number of competitors to return. |
{- "key": "example_api_key",
- "project_id": "project_id",
- "category_id": "sample_category",
- "limit": 10
}{- "count": 0,
- "competitors": [ ]
}Retrieve competitor data for a selected list of domains in a Quaro monitoring project. If limit is omitted, Quaro uses the number of provided domains.
| key required | string |
| project_id required | string ID of the Quaro monitoring project. You can find it by opening the project in app.quaro.io and copying the last segment of the URL. |
| domains required | Array of strings non-empty Non-empty list of competitor domains. |
| category_id | string Optional category ID to narrow the result, for example |
| limit | integer Maximum number of competitors to return. Defaults to the number of provided domains. |
{- "key": "example_api_key",
- "project_id": "project_id",
- "domains": [
- "www.otto.de",
- "www.idealo.de"
], - "category_id": "sample_category"
}{- "count": 0,
- "competitors": [ ]
}Retrieve competitor data for a Quaro monitoring project. You can optionally filter by category, restrict the result to specific domains, and set a custom limit.
| key required | string |
| project_id required | string ID of the Quaro monitoring project. You can find it by opening the project in app.quaro.io and copying the last segment of the URL. |
| category_id | string Optional category ID to narrow the result, for example |
| domains | Array of strings Optional list of competitor domains to include. |
| limit | integer Optional maximum number of competitors to return. |
{- "key": "example_api_key",
- "project_id": "project_id",
- "category_id": "sample_category",
- "limit": 10
}{- "count": 0,
- "competitors": [
- {
- "_id": "string",
- "domain": "string",
- "position": 0,
- "visibility": [
- {
- "date": "2019-08-24T14:15:22Z",
- "value": 0,
- "top10": 0,
- "top50": 0,
- "top100": 0,
- "_id": "string",
- "ai_ref_count": 0
}
]
}
]
}Retrieve chart-ready competitor visibility data for a Quaro monitoring project. The response is intended for time-series visualizations and uses the same project, category, domain, and limit filters as the competitors endpoint.
| key required | string |
| project_id required | string ID of the Quaro monitoring project. You can find it by opening the project in app.quaro.io and copying the last segment of the URL. |
| category_id | string Optional category ID filter, for example |
| domains | Array of strings Optional list of competitor domains to include. |
| limit | integer Optional maximum number of competitors to return. |
{- "key": "example_api_key",
- "project_id": "project_id",
- "domains": [
- "www.otto.de",
- "www.idealo.de"
], - "category_id": "sample_category"
}{- "count": 0,
- "labels": [
- "2019-08-24"
], - "datasets": [
- {
- "domain": "string",
- "data": [
- {
- "date": "2019-08-24",
- "value": 0
}
]
}
]
}