Quaro

Quaro API (1.0.0)

Download OpenAPI specification:

Public API documentation for Quaro.

Getting Started

Base URL

https://api.quaro.io/v1

Authentication

Authentication is handled with an API key.

  • GET collection export endpoints pass the API key in the request path.
  • POST endpoints send the API key in the JSON request body as key.

Rate Limits

The default rate limit is 3 requests per second, unless otherwise specified on an endpoint.

Product Areas

The API is currently organized into the following documented product areas:

  • Research Suite
  • Monitoring Suite

Some endpoints are global and not tied to one suite.

Global

Global endpoints that are not tied to one suite.

Get credits overview

Retrieve a credit overview for all booked products available in your Quaro account.

Request Body schema: application/json
required
key
required
string

Your API key.

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key"
}

Response samples

Content type
application/json
{
  • "credits": {
    }
}

Research Suite - Quaro Search Volume

Quaro search volume endpoints.

Quaro locations

Retrieve the available location and language codes for Quaro Search Volume. Use this endpoint to discover valid location_code and language_code values before requesting keyword metrics.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Quaro search volume

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.

Request Body schema: application/json
required
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.

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key",
  • "keywords": [
    ],
  • "location_code": 2276,
  • "language_code": "de"
}

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Research Suite - Google Search Volume

Google search volume endpoints.

Google locations

Retrieve the available location codes for Google Search Volume. Use this endpoint to discover valid location_code values before requesting keyword metrics.

Responses

Response samples

Content type
application/json
{
  • "locations": [
    ]
}

Google search volume

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.

Request Body schema: application/json
required
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

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key",
  • "keywords": [
    ],
  • "location_code": 2276
}

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Google search volume demo

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.

Request Body schema: application/json
required
key
required
string
keywords
required
Array of strings <= 1000 items
location_code
integer or null

If omitted, international Adwords data is returned.

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key",
  • "keywords": [
    ],
  • "location_code": 2276
}

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Research Suite - Search Volume Status

Status endpoint for Quaro Search Volume and Google Search Volume.

Search volume status

Retrieve the latest available month for Quaro Search Volume and Google Search Volume data.

Request Body schema: application/json
required
key
required
string

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key"
}

Response samples

Content type
application/json
{
  • "month": "string",
  • "year": "string"
}

Research Suite - Domain Research

Domain and URL research endpoints.

Get Google keywords for domain

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.

Request Body schema: application/json
required
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.

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key",
  • "domain": "quaro.io",
  • "location_code": 2276,
  • "sv_length": 12
}

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Get Google keywords for URL

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.

Request Body schema: application/json
required
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.

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key",
  • "location_code": 2276,
  • "sv_length": 12
}

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Research Suite - Collections

Collection retrieval and collection keyword endpoints.

Get collection

Return the saved data of a single collection.

Request Body schema: application/json
required
key
required
string
collection
required
string

Name of the collection stored in Quaro.

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key",
  • "collection": "collection_name"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Get collection (GET)

Return the saved data for a single collection using the GET route.

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Get collection keywords

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.

path Parameters
collection
required
string

Name of the collection stored in Quaro.

apikey
required
string

Your API key.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Research Suite - Categories

Category-related research endpoints.

Get categories

Retrieve Google categories and any custom categories saved in Quaro.

Request Body schema: application/json
required
key
required
string

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key"
}

Response samples

Content type
application/json
{
  • "categories": [
    ]
}

Monitoring Suite - Categories

Category endpoints for Quaro monitoring projects.

Get monitoring project categories

Retrieve the categories configured for a Quaro monitoring project.

Request Body schema: application/json
required
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.

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key",
  • "project_id": "project_id"
}

Response samples

Content type
application/json
{
  • "count": 165,
  • "categories": [
    ]
}

Monitoring Suite - Projects

Project and keyword endpoints for Quaro monitoring projects.

Add project keywords

Add up to 1000 keywords to a Quaro monitoring project. Rate limit: 1 request per 10 seconds.

Request Body schema: application/json
required
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 /ms/project/categories, for example sample_category.

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key",
  • "project_id": "project_id",
  • "keywords": [
    ],
  • "category_id": "sample_category"
}

Response samples

Content type
application/json
{ }

Delete project keywords

Delete keywords from a Quaro monitoring project.

Request Body schema: application/json
required
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

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key",
  • "project_id": "project_id",
  • "keywords": [
    ]
}

Response samples

Content type
application/json
{ }

Get projects

Retrieve all Quaro monitoring projects available in your Quaro workspace.

Request Body schema: application/json
required
key
required
string

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key"
}

Response samples

Content type
application/json
{
  • "projects": [
    ]
}

Get project keywords

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.

Request Body schema: application/json
required
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.

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key",
  • "project_id": "project_id"
}

Response samples

Content type
application/json
{
  • "count": 0,
  • "keywords": [ ]
}

Monitoring Suite - Competitors

Competitor analysis endpoints for Quaro monitoring projects.

Get top competitors

Retrieve the top competitor domains for a Quaro monitoring project.

Request Body schema: application/json
required
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.

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key",
  • "project_id": "project_id",
  • "limit": 10
}

Response samples

Content type
application/json
{
  • "count": 0,
  • "competitors": [ ]
}

Get top competitors by category

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.

Request Body schema: application/json
required
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 sample_category.

limit
integer

Maximum number of competitors to return.

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key",
  • "project_id": "project_id",
  • "category_id": "sample_category",
  • "limit": 10
}

Response samples

Content type
application/json
{
  • "count": 0,
  • "competitors": [ ]
}

Get selected 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.

Request Body schema: application/json
required
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 sample_category.

limit
integer

Maximum number of competitors to return. Defaults to the number of provided domains.

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key",
  • "project_id": "project_id",
  • "domains": [
    ],
  • "category_id": "sample_category"
}

Response samples

Content type
application/json
{
  • "count": 0,
  • "competitors": [ ]
}

Get 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.

Request Body schema: application/json
required
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 sample_category.

domains
Array of strings

Optional list of competitor domains to include.

limit
integer

Optional maximum number of competitors to return.

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key",
  • "project_id": "project_id",
  • "category_id": "sample_category",
  • "limit": 10
}

Response samples

Content type
application/json
{
  • "count": 0,
  • "competitors": [
    ]
}

Get competitors chart

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.

Request Body schema: application/json
required
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 sample_category.

domains
Array of strings

Optional list of competitor domains to include.

limit
integer

Optional maximum number of competitors to return.

Responses

Request samples

Content type
application/json
{
  • "key": "example_api_key",
  • "project_id": "project_id",
  • "domains": [
    ],
  • "category_id": "sample_category"
}

Response samples

Content type
application/json
{
  • "count": 0,
  • "labels": [
    ],
  • "datasets": [
    ]
}