Liquid error: Unknown operator current_user

Conductor's Data Platform API (v1)

Getting Started

Overview

Conductor’s Data Platform API empowers organization's like yours to seamlessly integrate traditional and search insights directly into your existing data ecosystems. By automating data delivery, gain rapid, on-demand access to the metrics that matter most—powering custom dashboards, business intelligence tools, and cross-channel reporting without manual effort. 

This API unlocks flexible, secure data sharing at scale, ensuring everyone in your organization is equipped with timely, actionable intelligence. Accelerate decision-making and drive measurable results by connecting Conductor’s data wherever their teams work best.

Note

Conductor provides APIs for several different uses across its Conductor Monitoring and Conductor Intelligence products. This article describes Conductor's Data Platform API, which updates—and will eventually fully replace—the legacy Conductor Reporting API. If you are looking for information about a different API offering, consider the following articles:

 

Base URL

The base URL for Conductor's Data Platform API is:

https://api.conductor.com

Authentication

Conductor uses a signed URL parameter to securely authenticate users. To create this signed parameter, you'll need the following building blocks:

  • An API Key
  • An API Secret
  • The current time (expressed as seconds since the UNIX epoch: unixEpochTimeSeconds)

Additionally, during this alpha program, you'll need to add a header to your request that will allow access to this API.

We'll deal with the first two building blocks of the signed URL parameter before moving on to the third. Then we'll cover how to use all of them to build your full request, below. Finally, we'll cover the required request header.

1. Generate your Conductor API Key and Secret

If you want to build connections with Conductor's public API, you'll need to generate a Key and Secret to use to make calls to the API.

  1. Click here or follow the path Integrations > API in Conductor.
  2. Click Generate API Key.
    Generate Key.png
  3. Click to copy your API Key and Secret to use in building your API calls.
    Key and secret.png

Temporarily save these values so you can reference them below—but be sure to delete or erase your notes after. You can always retrieve these values from the platform again.

2. Generate Your Signed URL Parameter

A signature is a one-way MD5 hash of three values:

  • A user's API key
  • A user's Secret
  • The current time expressed as seconds since the UNIX epoch (unixEpochTimeSeconds)

Your programming environment must provide the ability to do the following, which is part of the standard library for most programming languages:

  • Get the current UNIX time in seconds.
  • Compute MD5 hashes.

Note that, to allow for reasonable clock drift between your servers and Conductor's servers, the Conductor API considers a signature matching if it was signed within 5 minutes of the time on Conductor's servers.

Code Example

Review the Python sample below for computing the signature:

Python 

import hashlib
import time

def compute_signature(api_key: str, secret: str) -> str:
    # Create the string to sign (api_key + secret + timestamp)
    timestamp = str(int(time.time()))  # Unix timestamp in seconds
    string_to_sign = f"{api_key}{secret}{timestamp}"
    # Compute MD5 signature
    signature = hashlib.md5(string_to_sign.encode('utf-8')).hexdigest()
    return signature

# Example usage:
api_key = "your-api-key"
secret = "your-secret"
signature = compute_signature(api_key, secret)

# Full URL example:
url = f"https://api.conductor.com/data-api/v1/keyword_rankings?apiKey={api_key}&sig={signature}"
 

3. Build Your Request URL

You can build request URLs based on the building blocks you now have:

  • Base URL: https://api.conductor.com
  • Request Path: This is your desired endpoint. Each endpoint is documented below. Some endpoints require additional variables to be added to the request path.
  • Query Parameters:
    • apiKey
      This is your API Key generated in the platform.
    • sig
      This is the signature you generated above.
https://api.conductor.com/{REQUEST PATH}?apiKey={YOUR API KEY}&sig={YOUR SIGNATURE}

4. Include the x-api-gateway-key Request Header

Finally, you'll need to add the following header to your request: x-api-gateway-key

For its value, assign the API Key you generated above. Thus, for example:

'x-api-gateway-key': '{YOUR API KEY}'

Use this request URL and the request header to authenticate your calls to the Data Platform API.

Data Platform API and Platform Configuration

Get a list of available datasets

/data-api/v1/get-datasets

Returns a list of all available datasets that can be queried through the Data API. Each dataset represents a specific type of data or metric that can be queried.

Request Body

None

Responses

200

Successful query execution

Schema: See below

Example

[
    {
        "name": "visibility",
        "bi_visible": true
    },
    {
        "name": "msv",
        "bi_visible": false
    },
    {
        "name": "market_share",
        "bi_visible": true
    }
    ...
]
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

Traditional Search

In the platform, this data appears in the Keywords report in Conductor Intelligence.

Get Foundational Keyword Data

/data-api/v1/keyword_rankings

This data shows you rank data for your keywords across any accounts your organization has in the Conductor platform. This data provides the foundation for all keyword-related charts and tables in the Keywords report.

Asynchronous Request Required

Note that this request requires an asynchronous workflow:

  1. Initial Request: Submit your initial request to this endpoint and receive a 202 response with the executionId key-value pair.
  2. Polling. Add the executionId key and value to your request body to poll for results. While the asynchronous workflow is running, you will continue to receive 202 responses. When the query is complete, you'll receive a 200 response.
  3. Pagination. Use the nextPageId value from the completed 200 response to get additional pages. You can also specify the number of results per page using the pageSize parameter.

Parameters

  • For your initial request in the asynchronous query, include all the parameters listed in the Request Body section below.
  • For polling requests, include executionId and, optionally pageSize and nextPageId for pagination.

Request Body

{
  "start_date": "2025-01-01",
  "end_date": "2025-03-03",
  "collection_frequency": "WEEKLY",
  "min_rank": 1,
  "max_rank": 100,
  "result_types": [
    "STANDARD_LINK"
  ],
  "includeMsv": true,
  "limit": 1000
}

start_date

Type: string | Example: 2025-07-01

Required. The first date, in YYYY-MM-DD format, from which you want to begin to pull data with this request.


end_date

Type: string | Example: 2025-07-08

Required. The final date, in YYYY-MM-DD format, through which you want to pull data with this request.


collection_frequency

Type: string | Example: WEEKLY

Required. The frequency, either WEEKLY or DAILY, to see reported rank data. Note that by default, Conductor collects keyword rank data is weekly, and only collects daily if specific keywords are configured to do so. Choosing to report on daily keywords here will include data only for those keywords that have been configured for daily tracking.


min_rank

Type: integer | Example: 1

Required. The highest rank for which you want to see keyword data. The highest possible min_rank would be 1, referring to the top position on a search engine results page.


max_rank

Type: integer | Example: 10

Optional. The lowest rank for which you want to see keyword data. The lowest possible max_rank would be 100 referring to the lowest position Conductor gathers data for on search engine results pages.

By default, data for all positions up to a max_rank of 100 are returned.


result_types
Type: string | Example: [IMAGE_RESULT]

Optional. The list of universal result types you want to see rank data returned for.

By default, data for all result types are returned. Enum values are as follows:

  • STANDARD_LINK. These are Google's traditional "blue link" results.
  • AIO_REFERENCE_RESULT. Google's AI Overview results.
  • GOOGLE_ANSWER_BOX. Google's Answer Box results, which Google also calls Featured Snippets.
  • APPS_RESULT. Google's App results.
  • CAROUSEL_RESULT. Google's Carousel results.
  • ENCYCLOPEDIA. Baidu's Encyclopedia results.
  • EVENT_PACK and EVENT_RESULT. Google's Event results. To query all Event results, you'll need both values.
  • FORUM. Baidu's Forum results.
  • IMAGE_RESULT. Google's Image results.
  • JOB_RESULT. Google's Jobs results.
  • N_PACK. Google's Local 3 Pack results.
  • NEWS_RESULT. Google's News results.
  • NEWS_CAROUSEL. Google's News Carousel results
  • PAA_RESULT. Google's People Also Ask results.
  • PLACES_GROUP and PLACES_SINGLE. Google's Local Pack results. To query all Local Pack results, you'll need both values.
  • PRODUCT_RESULT. Google's Product results.
  • REALTIME_PROFILE_TWEETS. Google' Twitter results.
  • RECIPE_CAROUSEL. Google's Recipe results.
  • VIDEO_CAROUSEL. Google's Video Carousel results.
  • VIDEO_NATURAL and VIDEO_RESULT. Google's Video results. To query all Video results, you'll need both values.

includeMsv
Type: boolean | Example: true

Optional. Determines whether to include monthly search volume data with the rank data returned by this request.

By default, this is false.


limit

Type: integer | Example: 100

Optional. Determines the number of results to return for each request.


Responses

200

Successful query execution

Schema: See below

Example

 {
"results": [
  {
    "time_period_start": "2025-08-05",
    "time_period_end": "2025-08-05",
    "collection_date": "2025-08-05",
    "search_engine_name": "string",
    "search_engine": "string",
    "search_engine_country_code": "string",
    "search_engine_language_code": "string",
    "locode": "US",
    "device": "DESKTOP",
    "query": "string",
    "title": "string",
    "normalized_url": "string",
    "root_domain": "string",
    "subdomain": "string",
    "result_type": "STANDARD_LINK",
    "rank_standard": 0,
    "rank_true": 0,
    "rank_result_type": 0,
    "average_search_volume": 0,
    "cpc": 0,
    "competition": 0,
    "approximate_search_volume": 0
  }
],
"executionState": "COMPLETED",
"executionId": "string",
"requestId": "string",
"nextPageId": "string"
}
202

Query accepted and is being processed asynchronously

Example

{
  "executionState": "IN_PROGRESS",
  "executionId": "string",
  "requestId": "string",
  "nextPageId": "string"
}
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

Get Your Visibility Over Time

/data-api/v1/composite_visibility

This data offers an at-a-glance view of your overall keyword performance, reflecting all your keyword ranks, grouped across visibility zones. In the Keywords report, this data appears in the Overview tab.

Data returned from this endpoint reflects weekly ranks for the past year.

Request Body

None

Responses

200

Successful query execution

Schema: See below

Example

{
  "results": [
    {
      "account_id": 123,
      "account_name": "Example Account",
      "web_property_id": 456,
      "web_property_name": "conductor.com",
      "organization_id": "DF3DAF2955754FDDB180CF505AE4761E",
      "organization_name": "Example Organization",
      "rank_source": "GOOGLE_US_EN",
      "device": "DESKTOP",
      "locode": "US",
      "time_period_start": "2025-08-06",
      "time_period_end": "2025-08-06",
      "time_period_type": "WEEK",
      "collection_date": "2025-08-06",
      "tracked_count": 1000,
      "tracked_ranked": 950,
      "top_3": 150,
      "top_4_10": 200,
      "top_11_20": 250,
      "top_21_40": 200,
      "top_41_100": 150
    }
  ],
  "executionState": "string",
  "executionId": "string",
  "requestId": "string",
  "nextPageId": "string"
}
400 Invalid request parameters
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

Get Your Highest Ranking Page Data for Tracked Keywords

/data-api/v1/highest_ranking_url_per_keyword

This data shows data about your highest ranking page for each keyword you track to help you review your top-performing content. In the Keywords report, this data appears in the table on the Keywords tab.

This endpoint returns data for the most recent time period.

Request Body

None

Responses

200

Successful query execution

Schema: See below

Example

{
  "results": [
    {
      "account_id": 123,
      "account_name": "Example Account",
      "web_property_id": 456,
      "web_property_name": "conductor.com",
      "organization_id": "DF3DAF2955754FDDB180CF505AE4761E",
      "organization_name": "Example Organization",
      "query": "best smartphones 2024",
      "locode": "US",
      "device": "DESKTOP",
      "rank_source_engine": "google",
      "rank_source_country": "US",
      "rank_source_language": "en",
      "collection_frequency": "DAILY",
      "time_period": "2025-07-17",
      "rank_true": 1,
      "rank_standard": 1,
      "title": "Best Smartphones 2024 - Complete Guide",
      "normalized_url": "https://example.com/best-smartphones-2024",
      "root_domain": "example.com",
      "domain": "www.example.com",
      "result_type": "STANDARD_LINK",
      "monthly_search_volume": 12000,
      "msv_collection_month": 202506,
      "is_average_msv": 0,
      "cpc": 1.25,
      "competition": 0.75
    }
  ],
  "executionState": "string",
  "executionId": "string",
  "requestId": "string",
  "nextPageId": "string"
}
400 Invalid request parameters
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

Get Your Year-Over-Year Seasonality for Monthly Search Volume

/data-api/v1/msv_seasonality

This data shows search demand—using monthly search volumes for the keywords you are reporting on—trended year-by-year to help you understand and respond to fluctuations in search behavior. In the Keywords report, this data appears in the Overview tab.

This endpoint returns monthly search volume data from the most recent two years.

Request Body

None

Responses

200

Successful query execution

Schema: See below

Example

{
  "results": [
    {
      "account_id": 123,
      "account_name": "Conductor Account",
      "web_property_id": 456,
      "web_property_name": "conductor.com",
      "organization_id": "DF3DAF2955754FDDB180CF505AE4761E",
      "organization_name": "Example Organization",
      "rank_source": "GOOGLE_US_EN",
      "device": "DESKTOP",
      "locode": "US",
      "collection_frequency": "DAILY",
      "collection_month": 202401,
      "search_volume": 15000,
      "is_average": false
    }
  ],
  "executionState": "string",
  "executionId": "string",
  "requestId": "string",
  "nextPageId": "string"
} 
400 Invalid request parameters
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

AI Search

AI search data includes the brand mentions and website citations that appear in AI search engine responses for the topics you track with Conductor. In the platform, this data appears in the Overview tab of AI Search Performance in Conductor Intelligence.

Get AI Search Performance Data

/data-api/v1/ai_search_performance

This data shows you performance across brand mentions and website citations for the brands and websites that appear in AI search responses for the topics you track. This data provides the foundation for all topic-related charts and tables in the AI Search Performance report.

Optional Asynchronous Request

Note that this request may also be made with an asynchronous workflow:

  1. Initial Request: Submit your initial request to /data-api/v1/async/ai_search_performance and receive a 202 response with the executionId key-value pair.
  2. Polling. Add the executionId key and value to your request body to poll for results. While the asynchronous workflow is running, you will continue to receive 202 responses. When the query is complete, you'll receive a 200 response.
  3. Pagination. Use the nextPageId value from the completed 200 response to get additional pages. You can also specify the number of results per page using the pageSize parameter.

Parameters

  • For your initial request in the asynchronous query, include all the parameters listed in the Request Body section below.
  • For polling requests, include executionId and, optionally pageSize and nextPageId for pagination.

Request Body

{
  "start_date": "2024-03-01",
  "end_date": "2024-03-31",
  "collection_frequency": "DAILY",
  "limit": 10000
}

start_date

Type: string | Example: 2025-07-01

Required. The first date, in YYYY-MM-DD format, from which you want to begin to pull data with this request.


end_date

Type: string | Example: 2025-07-08

Required. The final date, in YYYY-MM-DD format, through which you want to pull data with this request.


collection_frequency

Type: string | Example: WEEKLY

Required. The frequency, either WEEKLY or DAILY, to see reported AI search data. Note that by default, Conductor collects search data is weekly, and only collects daily if specific topics are configured to do so. Choosing to report on daily topics here will include data only for those topics that have been configured for daily tracking.

Enum values:

  • DAILY
  • WEEKLY

limit

Type: integer | Example: 10000

Optional. The maximum number of results returned through this endpoint.

By default, this endpoint returns up to 1,000,000 results, which is also the maximum number or results that can be returned.


Responses

200

Successful query execution

Schema: See below

Example

{
  "results": [
    {
      "organization_name": "Example Organization",
      "organization_id": "DF3DAF2955754FDDB180CF505AE4761E",
      "account_name": "Example Account",
      "account_id": 123,
      "web_property_name": "conductor.com",
      "web_property_id": 456,
      "time_period_start": "2024-03-01",
      "time_period_end": "2024-03-31",
      "locode": "US",
      "ai_search_engine_name": "ChatGPT Search 4o",
      "topic": "marketing automation",
      "prompt": "best marketing automation tools",
      "intent": "commercial",
      "persona_name": "Marketing Manager",
      "brands": [
        "Conductor",
        "HubSpot",
        "Marketo"
      ],
      "citations_urls": [
        "https://conductor.com/guide",
        "https://hubspot.com/blog"
      ],
      "citations_root_domains": [
        "conductor.com",
        "hubspot.com"
      ],
      "collection_date": "2024-03-15"
    }
  ],
  "executionState": "string",
  "executionId": "string",
  "requestId": "string",
  "nextPageId": "string"
}
400 Invalid request parameters
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

Get Market Share by Brand Mentions

/data-api/v1/ai_marketshare_brand_overview

This data identifies the brands that appear for each of your topics. If you track multiple brands across the website you report on, you'll see those brands mentions aggregated for your website.

Optional Asynchronous Request

Note that this request may also be made with an asynchronous workflow:

  1. Initial Request: Submit your initial request to /data-api/v1/async/ai_marketshare_brand_overview and receive a 202 response with the executionId key-value pair.
  2. Polling. Add the executionId key and value to your request body to poll for results. While the asynchronous workflow is running, you will continue to receive 202 responses. When the query is complete, you'll receive a 200 response.
  3. Pagination. Use the nextPageId value from the completed 200 response to get additional pages. You can also specify the number of results per page using the pageSize parameter.

Parameters

  • For your initial request in the asynchronous query, include all the parameters listed in the Request Body section below.
  • For polling requests, include executionId and, optionally pageSize and nextPageId for pagination.

Request Body

{
  "start_date": "2024-03-01",
  "end_date": "2024-03-15",
  "collection_frequency": "DAILY",
  "limit": 10000
}

start_date

Type: string | Example: 2025-07-01

Required. The first date, in YYYY-MM-DD format, from which you want to begin to pull data with this request.


end_date

Type: string | Example: 2025-07-08

Required. The final date, in YYYY-MM-DD format, through which you want to pull data with this request.


collection_frequency

Type: string | Example: WEEKLY

Required. The frequency, either WEEKLY or DAILY, to see reported AI search data. Note that by default, Conductor collects search data is weekly, and only collects daily if specific topics are configured to do so. Choosing to report on daily topics here will include data only for those topics that have been configured for daily tracking.

Enum values:

  • DAILY
  • WEEKLY

limit

Type: integer | Example: 10000

Optional. The maximum number of results returned through this endpoint.

By default, this endpoint returns up to 100,000 results, which is also the maximum number or results that can be returned.


Responses

200

Successful query execution

Schema: See below

Example

{
 "results": [
   {
     "organization_name": "Example Organization",
     "organization_id": "DF3DAF2955754FDDB180CF505AE4761E",
     "account_name": "Example Account",
     "account_id": 123,
     "web_property_name": "conductor.com",
     "web_property_id": 456,
     "time_period_start": "2024-03-30",
     "time_period_end": "2024-04-12",
     "collection_frequency": "DAILY",
     "locode": "US",
     "ai_search_engine_name": "ChatGPT Search 4o",
     "brand_name": "Conductor",
     "brand_attribution": "YOU",
     "topic_total": 100,
     "topic_brand_count": 25,
     "topic_brand_market_share_percent": 25,
     "prompt_total": 500,
     "prompt_response_brand_count": 75,
     "prompt_response_brand_market_share_percent": 15
   }
 ],
 "executionState": "string",
 "executionId": "string",
 "requestId": "string",
 "nextPageId": "string"
}
400 Invalid request parameters
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

/data-api/v1/ai_marketshare_brand_trends

This data identifies the brands that appear for each of your topics, trended over time. If you track multiple brands across the website you report on, you'll see those brands mentions aggregated for your website.

Optional Asynchronous Request

Note that this request may also be made with an asynchronous workflow:

  1. Initial Request: Submit your initial request to /data-api/v1/async/ai_marketshare_brand_trends and receive a 202 response with the executionId key-value pair.
  2. Polling. Add the executionId key and value to your request body to poll for results. While the asynchronous workflow is running, you will continue to receive 202 responses. When the query is complete, you'll receive a 200 response.
  3. Pagination. Use the nextPageId value from the completed 200 response to get additional pages. You can also specify the number of results per page using the pageSize parameter.

Parameters

  • For your initial request in the asynchronous query, include all the parameters listed in the Request Body section below.
  • For polling requests, include executionId and, optionally pageSize and nextPageId for pagination.

Request Body

{
  "start_date": "2024-03-01",
  "end_date": "2024-03-15",
  "collection_frequency": "DAILY",
  "limit": 10000
}

start_date

Type: string | Example: 2025-07-01

Required. The first date, in YYYY-MM-DD format, from which you want to begin to pull data with this request.


end_date

Type: string | Example: 2025-07-08

Required. The final date, in YYYY-MM-DD format, through which you want to pull data with this request.


collection_frequency

Type: string | Example: WEEKLY

Required. The frequency, either WEEKLY or DAILY, to see reported AI search data. Note that by default, Conductor collects search data is weekly, and only collects daily if specific topics are configured to do so. Choosing to report on daily topics here will include data only for those topics that have been configured for daily tracking.

Enum values:

  • DAILY
  • WEEKLY

limit

Type: integer | Example: 10000

Optional. The maximum number of results returned through this endpoint.

By default, this endpoint returns up to 100,000 results, which is also the maximum number or results that can be returned.


Responses

200

Successful query execution

Schema: See below

Example

{
  "results": [
    {
      "organization_name": "Example Organization",
      "organization_id": "DF3DAF2955754FDDB180CF505AE4761E",
      "account_name": "Example Account",
      "account_id": 123,
      "web_property_name": "conductor.com",
      "web_property_id": 456,
      "time_period_start": "2024-03-30",
      "time_period_end": "2024-04-12",
      "collection_frequency": "DAILY",
      "locode": "US",
      "ai_search_engine_name": "ChatGPT Search 4o",
      "brand_name": "Conductor",
      "brand_attribution": "YOU",
      "topic_total": 100,
      "topic_brand_count": 25,
      "topic_brand_market_share_percent": 25,
      "prompt_total": 500,
      "prompt_response_brand_count": 75,
      "prompt_response_brand_market_share_percent": 15
    }
  ],
  "executionState": "string",
  "executionId": "string",
  "requestId": "string",
  "nextPageId": "string"
}
400 Invalid request parameters
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

Get Market Share by Website Citations

/data-api/v1/ai_marketshare_citations_overview

This data identifies the citations that appear for each of your topics.

Optional Asynchronous Request

Note that this request may also be made with an asynchronous workflow:

  1. Initial Request: Submit your initial request to /data-api/v1/async/ai_marketshare_citations_overview and receive a 202 response with the executionId key-value pair.
  2. Polling. Add the executionId key and value to your request body to poll for results. While the asynchronous workflow is running, you will continue to receive 202 responses. When the query is complete, you'll receive a 200 response.
  3. Pagination. Use the nextPageId value from the completed 200 response to get additional pages. You can also specify the number of results per page using the pageSize parameter.

Parameters

  • For your initial request in the asynchronous query, include all the parameters listed in the Request Body section below.
  • For polling requests, include executionId and, optionally pageSize and nextPageId for pagination.

Request Body

{
  "start_date": "2024-03-01",
  "end_date": "2024-03-15",
  "collection_frequency": "DAILY",
  "limit": 10000
}

start_date

Type: string | Example: 2025-07-01

Required. The first date, in YYYY-MM-DD format, from which you want to begin to pull data with this request.


end_date

Type: string | Example: 2025-07-08

Required. The final date, in YYYY-MM-DD format, through which you want to pull data with this request.


collection_frequency

Type: string | Example: WEEKLY

Required. The frequency, either WEEKLY or DAILY, to see reported AI search data. Note that by default, Conductor collects search data is weekly, and only collects daily if specific topics are configured to do so. Choosing to report on daily topics here will include data only for those topics that have been configured for daily tracking.

Enum values:

  • DAILY
  • WEEKLY

limit

Type: integer | Example: 10000

Optional. The maximum number of results returned through this endpoint.

By default, this endpoint returns up to 100,000 results, which is also the maximum number or results that can be returned.


Responses

200

Successful query execution

Schema: See below

Example

{
  "results": [
    {
      "organization_name": "Example Organization",
      "organization_id": "DF3DAF2955754FDDB180CF505AE4761E",
      "account_name": "Example Account",
      "account_id": 123,
      "web_property_name": "conductor.com",
      "web_property_id": 456,
      "time_period_start": "2024-03-30",
      "time_period_end": "2024-04-12",
      "collection_frequency": "DAILY",
      "locode": "US",
      "ai_search_engine_name": "ChatGPT Search 4o",
      "domain_or_web_property_segment": "conductor.com",
      "citation_ownership": "YOU",
      "topic_total": 100,
      "topic_citation_count": 25,
      "topic_citation_market_share_percent": 25,
      "prompt_total": 500,
      "prompt_response_citation_count": 75,
      "prompt_response_citation_market_share_percent": 15
    }
  ],
  "executionState": "string",
  "executionId": "string",
  "requestId": "string",
  "nextPageId": "string"
}
400 Invalid request parameters
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

/data-api/v1/ai_marketshare_citations_trends

This data identifies the citations that appear for each of your topics, trended over time.

Optional Asynchronous Request

Note that this request may also be made with an asynchronous workflow:

  1. Initial Request: Submit your initial request to /data-api/v1/async/ai_marketshare_citations_trands and receive a 202 response with the executionId key-value pair.
  2. Polling. Add the executionId key and value to your request body to poll for results. While the asynchronous workflow is running, you will continue to receive 202 responses. When the query is complete, you'll receive a 200 response.
  3. Pagination. Use the nextPageId value from the completed 200 response to get additional pages. You can also specify the number of results per page using the pageSize parameter.

Parameters

  • For your initial request in the asynchronous query, include all the parameters listed in the Request Body section below.
  • For polling requests, include executionId and, optionally pageSize and nextPageId for pagination.

Request Body

{
  "start_date": "2024-03-01",
  "end_date": "2024-03-15",
  "collection_frequency": "DAILY",
  "limit": 10000
}

start_date

Type: string | Example: 2025-07-01

Required. The first date, in YYYY-MM-DD format, from which you want to begin to pull data with this request.


end_date

Type: string | Example: 2025-07-08

Required. The final date, in YYYY-MM-DD format, through which you want to pull data with this request.


collection_frequency

Type: string | Example: WEEKLY

Required. The frequency, either WEEKLY or DAILY, to see reported AI search data. Note that by default, Conductor collects search data is weekly, and only collects daily if specific topics are configured to do so. Choosing to report on daily topics here will include data only for those topics that have been configured for daily tracking.

Enum values:

  • DAILY
  • WEEKLY

limit

Type: integer | Example: 10000

Optional. The maximum number of results returned through this endpoint.

By default, this endpoint returns up to 100,000 results, which is also the maximum number or results that can be returned.


Responses

200

Successful query execution

Schema: See below

Example

{
  "results": [
    {
      "organization_name": "Example Organization",
      "organization_id": "DF3DAF2955754FDDB180CF505AE4761E",
      "account_name": "Example Account",
      "account_id": 123,
      "web_property_name": "conductor.com",
      "web_property_id": 456,
      "time_period_start": "2024-03-30",
      "time_period_end": "2024-04-12",
      "collection_frequency": "DAILY",
      "locode": "US",
      "ai_search_engine_name": "ChatGPT Search 4o",
      "domain_or_web_property_segment": "conductor.com",
      "citation_ownership": "YOU",
      "topic_total": 100,
      "topic_citation_count": 25,
      "topic_citation_market_share_percent": 25,
      "prompt_total": 500,
      "prompt_response_citation_count": 75,
      "prompt_response_citation_market_share_percent": 15
    }
  ],
  "executionState": "string",
  "executionId": "string",
  "requestId": "string",
  "nextPageId": "string"
}
400 Invalid request parameters
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

Get Brand Mentions Over Time

/data-api/v1/ai_visibility_brand_attribution

This data indicates the number of topics for which your brand was mentioned and the number of topics for which your brand was not mentioned, across the reporting time period.

Optional Asynchronous Request

Note that this request may also be made with an asynchronous workflow:

  1. Initial Request: Submit your initial request to /data-api/v1/async/ai_visibility_brand_attribution and receive a 202 response with the executionId key-value pair.
  2. Polling. Add the executionId key and value to your request body to poll for results. While the asynchronous workflow is running, you will continue to receive 202 responses. When the query is complete, you'll receive a 200 response.
  3. Pagination. Use the nextPageId value from the completed 200 response to get additional pages. You can also specify the number of results per page using the pageSize parameter.

Parameters

  • For your initial request in the asynchronous query, include all the parameters listed in the Request Body section below.
  • For polling requests, include executionId and, optionally pageSize and nextPageId for pagination.

Request Body

{
  "start_date": "2024-03-01",
  "end_date": "2024-03-15",
  "collection_frequency": "DAILY",
  "limit": 10000
}

start_date

Type: string | Example: 2025-07-01

Required. The first date, in YYYY-MM-DD format, from which you want to begin to pull data with this request.


end_date

Type: string | Example: 2025-07-08

Required. The final date, in YYYY-MM-DD format, through which you want to pull data with this request.


collection_frequency

Type: string | Example: WEEKLY

Required. The frequency, either WEEKLY or DAILY, to see reported AI search data. Note that by default, Conductor collects search data is weekly, and only collects daily if specific topics are configured to do so. Choosing to report on daily topics here will include data only for those topics that have been configured for daily tracking.

Enum values:

  • DAILY
  • WEEKLY

limit

Type: integer | Example: 10000

Optional. The maximum number of results returned through this endpoint.

By default, this endpoint returns up to 100,000 results, which is also the maximum number or results that can be returned.


Responses

200

Successful query execution

Schema: See below

Example

{
  "results": [
    {
      "organization_name": "Example Organization",
      "organization_id": "DF3DAF2955754FDDB180CF505AE4761E",
      "account_name": "Example Account",
      "account_id": 123,
      "web_property_name": "conductor.com",
      "web_property_id": 456,
      "time_period_start": "2024-03-30",
      "time_period_end": "2024-04-12",
      "collection_frequency": "DAILY",
      "locode": "US",
      "ai_search_engine_name": "ChatGPT Search 4o",
      "topic_total": 100,
      "topic_brand_count": 25,
      "topic_without_brand_count": 75,
      "prompt_total": 500,
      "prompt_response_brand_count": 75,
      "prompt_response_without_brand_count": 425
    }
  ],
  "executionState": "string",
  "executionId": "string",
  "requestId": "string",
  "nextPageId": "string"
}
400 Invalid request parameters
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

Get Website Citations Over Time

/data-api/v1/ai_visibility_citations_attribution

This data indicates the number of topics for which your website was cited in AI search results, across the reporting time period.

Optional Asynchronous Request

Note that this request may also be made with an asynchronous workflow:

  1. Initial Request: Submit your initial request to /data-api/v1/async/ai_marketshare_citations_attribution and receive a 202 response with the executionId key-value pair.
  2. Polling. Add the executionId key and value to your request body to poll for results. While the asynchronous workflow is running, you will continue to receive 202 responses. When the query is complete, you'll receive a 200 response.
  3. Pagination. Use the nextPageId value from the completed 200 response to get additional pages. You can also specify the number of results per page using the pageSize parameter.

Parameters

  • For your initial request in the asynchronous query, include all the parameters listed in the Request Body section below.
  • For polling requests, include executionId and, optionally pageSize and nextPageId for pagination.

Request Body

{
  "start_date": "2024-03-01",
  "end_date": "2024-03-15",
  "collection_frequency": "DAILY",
  "limit": 10000
}

start_date

Type: string | Example: 2025-07-01

Required. The first date, in YYYY-MM-DD format, from which you want to begin to pull data with this request.


end_date

Type: string | Example: 2025-07-08

Required. The final date, in YYYY-MM-DD format, through which you want to pull data with this request.


collection_frequency

Type: string | Example: WEEKLY

Required. The frequency, either WEEKLY or DAILY, to see reported AI search data. Note that by default, Conductor collects search data is weekly, and only collects daily if specific topics are configured to do so. Choosing to report on daily topics here will include data only for those topics that have been configured for daily tracking.

Enum values:

  • DAILY
  • WEEKLY

limit

Type: integer | Example: 10000

Optional. The maximum number of results returned through this endpoint.

By default, this endpoint returns up to 100,000 results, which is also the maximum number or results that can be returned.


Responses

200

Successful query execution

Schema: See below

Example

{
  "results": [
    {
      "organization_name": "Example Organization",
      "organization_id": "DF3DAF2955754FDDB180CF505AE4761E",
      "account_name": "Example Account",
      "account_id": 123,
      "web_property_name": "conductor.com",
      "web_property_id": 456,
      "time_period_start": "2024-03-30",
      "time_period_end": "2024-04-12",
      "collection_frequency": "DAILY",
      "locode": "US",
      "ai_search_engine_name": "ChatGPT Search 4o",
      "topic_total": 100,
      "topic_citation_count": 25,
      "topic_without_citation_count": 75,
      "prompt_total": 500,
      "prompt_response_citation_count": 75,
      "prompt_response_without_citation_count": 425
    }
  ],
  "executionState": "string",
  "executionId": "string",
  "requestId": "string",
  "nextPageId": "string"
}
400 Invalid request parameters
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

Get Brand Mentions for All Your Tracked Prompts

/data-api/v1/ai_search_performance_brand

This endpoint returns brand mentions from AI search performance data for all your tracked prompts, including specific data about each brand.

Optional Asynchronous Request

Note that this request may also be made with an asynchronous workflow:

  1. Initial Request: Submit your initial request to /data-api/v1/async/ai_search_performance_brand and receive a 202 response with the executionId key-value pair.
  2. Polling. Add the executionId key and value to your request body to poll for results. While the asynchronous workflow is running, you will continue to receive 202 responses. When the query is complete, you'll receive a 200 response.
  3. Pagination. Use the nextPageId value from the completed 200 response to get additional pages. You can also specify the number of results per page using the pageSize parameter.

Parameters

  • For your initial request in the asynchronous query, include all the parameters listed in the Request Body section below.
  • For polling requests, include executionId and, optionally pageSize and nextPageId for pagination.

Request Body

{
  "start_date": "2024-03-01",
  "end_date": "2024-03-15",
  "collection_frequency": "DAILY",
  "limit": 10000
}

start_date

Type: string | Example: 2025-07-01

Required. The first date, in YYYY-MM-DD format, from which you want to begin to pull data with this request.


end_date

Type: string | Example: 2025-07-08

Required. The final date, in YYYY-MM-DD format, through which you want to pull data with this request.


collection_frequency

Type: string | Example: WEEKLY

Required. The frequency, either WEEKLY or DAILY, to see reported AI search data. Note that by default, Conductor collects search data is weekly, and only collects daily if specific topics are configured to do so. Choosing to report on daily topics here will include data only for those topics that have been configured for daily tracking.

Enum values:

  • DAILY
  • WEEKLY

limit

Type: integer | Example: 10000

Optional. The maximum number of results returned through this endpoint.

By default, this endpoint returns up to 1,000,000 results, which is also the maximum number or results that can be returned.


Responses

200

Successful query execution

Schema: See below

Example

{
  "results": [
    {
      "organization_name": "Example Organization",
      "organization_id": "DF3DAF2955754FDDB180CF505AE4761E",
      "account_name": "Example Account",
      "account_id": 123,
      "web_property_name": "conductor.com",
      "web_property_id": 456,
      "time_period_start": "2024-03-01",
      "time_period_end": "2024-03-15",
      "collection_frequency": "DAILY",
      "locode": "US",
      "ai_search_engine_name": "ChatGPT Search 4o",
      "topic": "marketing automation",
      "prompt": "best marketing automation tools",
      "intent": "commercial",
      "persona_name": "Marketing Manager",
      "brand_name": "Conductor",
      "brand_type": "YOU",
      "collection_date": "2024-03-15"
    }
  ],
  "executionState": "string",
  "executionId": "string",
  "requestId": "string",
  "nextPageId": "string"
}
400 Invalid request parameters
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

Get Website Citations for All Your Tracked Prompts

/data-api/v1/ai_search_performance_citation

This endpoint returns website citations from AI search performance data for all your tracked prompts, including specific data about each website.

Optional Asynchronous Request

Note that this request may also be made with an asynchronous workflow:

  1. Initial Request: Submit your initial request to /data-api/v1/async/ai_search_performance_citation and receive a 202 response with the executionId key-value pair.
  2. Polling. Add the executionId key and value to your request body to poll for results. While the asynchronous workflow is running, you will continue to receive 202 responses. When the query is complete, you'll receive a 200 response.
  3. Pagination. Use the nextPageId value from the completed 200 response to get additional pages. You can also specify the number of results per page using the pageSize parameter.

Parameters

  • For your initial request in the asynchronous query, include all the parameters listed in the Request Body section below.
  • For polling requests, include executionId and, optionally pageSize and nextPageId for pagination.

Request Body

{
  "start_date": "2024-03-01",
  "end_date": "2024-03-15",
  "collection_frequency": "DAILY",
  "limit": 10000
}

start_date

Type: string | Example: 2025-07-01

Required. The first date, in YYYY-MM-DD format, from which you want to begin to pull data with this request.


end_date

Type: string | Example: 2025-07-08

Required. The final date, in YYYY-MM-DD format, through which you want to pull data with this request.


collection_frequency

Type: string | Example: WEEKLY

Required. The frequency, either WEEKLY or DAILY, to see reported AI search data. Note that by default, Conductor collects search data is weekly, and only collects daily if specific topics are configured to do so. Choosing to report on daily topics here will include data only for those topics that have been configured for daily tracking.

Enum values:

  • DAILY
  • WEEKLY

limit

Type: integer | Example: 10000

Optional. The maximum number of results returned through this endpoint.

By default, this endpoint returns up to 1,000,000 results, which is also the maximum number or results that can be returned.


Responses

200

Successful query execution

Schema: See below

Example

{
  "results": [
    {
      "organization_name": "Example Organization",
      "organization_id": "DF3DAF2955754FDDB180CF505AE4761E",
      "account_name": "Example Account",
      "account_id": 123,
      "web_property_name": "conductor.com",
      "web_property_id": 456,
      "time_period_start": "2024-03-01",
      "time_period_end": "2024-03-15",
      "collection_frequency": "DAILY",
      "locode": "US",
      "ai_search_engine_name": "ChatGPT Search 4o",
      "topic": "marketing automation",
      "prompt": "best marketing automation tools",
      "intent": "commercial",
      "persona_name": "Marketing Manager",
      "citation_url": "https://conductor.com/marketing-automation-guide",
      "citation_root_domain": "conductor.com",
      "citation_web_property_segment": "conductor.com",
      "citation_ownership": "YOU",
      "collection_date": "2024-03-15"
    }
  ],
  "executionState": "string",
  "executionId": "string",
  "requestId": "string",
  "nextPageId": "string"
}
400 Invalid request parameters
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

Get Detailed Data about Your Tracked Topics

/data-api/v1/ai_topic_details

This endpoint returns topic-level data with brand mention and website citation data, and can include comparison data across time periods.

Optional Asynchronous Request

Note that this request may also be made with an asynchronous workflow:

  1. Initial Request: Submit your initial request to /data-api/v1/async/ai_topic_details and receive a 202 response with the executionId key-value pair.
  2. Polling. Add the executionId key and value to your request body to poll for results. While the asynchronous workflow is running, you will continue to receive 202 responses. When the query is complete, you'll receive a 200 response.
  3. Pagination. Use the nextPageId value from the completed 200 response to get additional pages. You can also specify the number of results per page using the pageSize parameter.

Parameters

  • For your initial request in the asynchronous query, include all the parameters listed in the Request Body section below.
  • For polling requests, include executionId and, optionally pageSize and nextPageId for pagination.

Request Body

{
  "reference_time_period_start": "2024-03-01",
  "reference_time_period_end": "2024-03-31",
  "comparison_time_period_start": "2024-04-01",
  "comparison_time_period_end": "2024-04-30",
  "locode": "US",
  "ai_search_engine_name": "ChatGPT Search 4o",
  "topic": "blood testing labs",
  "prompt": "allergy blood testing",
  "limit": 10000
}

reference_time_period_start

Type: string | Example: 2024-03-01

Required. This determines the first date, in YYYY-MM-DD format, from which you want to begin to pull data.


reference_time_period_end

Type: string | Example: 2024-03-31

Required. The final date, in YYYY-MM-DD format, through which you want to pull data with this request.


comparison_time_period_start

Type: string | Example: 2024-04-01

Optional. If you want to compare data between the reference data and a comparison data, this is the first date, in YYYY-MM-DD format, from which you want to begin to pull data for the comparison.

By default, no comparison data is provided.


comparison_time_period_end

Type: string | Example: 2024-04-30

Optional. If you want to compare data between the reference data and a comparison data, this is the final date, in YYYY-MM-DD format, through which you want to pull data for the comparison.

By default, no comparison data is provided.


locode

Type: string | Example: US

Optional. The location for which data should be returned.

By default, data for all locations is returned.

Example enum values:

  • Coming soon

ai_search_engine_name

Type: string | Example: ChatGPT Search 4o

Optional. The specific AI search engine for which you want to return data.

By default, data for all engines is returned.

Enum values:

  • ChatGPT Search 3.5
  • ChatGPT Search 4o
  • ChatGPT Search 4.5
  • Perplexity AI GPT-4
  • Google Gemini
  • Google AIO
  • Google AI Mode

topic

Type: string | Example: blood testing labs

Optional. The specific tracked topic for which you want to return data.

By default, data for all topics is returned.


prompt

Type: string | Example: allergy blood testing

Optional. The specific tracked prompt for which you want to return data.

By default, data for all prompts is returned.


limit

Type: integer | Example: 10000

Optional. The maximum number of results returned through this endpoint.

By default, this endpoint returns up to 100,000 results, which is also the maximum number or results that can be returned.


Responses

200

Successful query execution

Schema: See below

Example

{
  "results": [
    {
      "organization_name": "Conductor",
      "account_name": "Marketing Account",
      "web_property_name": "conductor.com",
      "reference_time_period_start": "2024-03-01",
      "reference_time_period_end": "2024-03-31",
      "comparison_time_period_start": "2024-04-01",
      "comparison_time_period_end": "2024-04-30",
      "collection_frequency": "DAILY",
      "locode": "US",
      "ai_search_engine_name": "ChatGPT Search 4o",
      "topic": "blood testing labs",
      "prompt_total": 50,
      "prompt_brand_count": 15,
      "prompt_brand_count_change": 3,
      "prompt_brand_count_percentage": 30,
      "prompt_brand_count_percentage_change": 5.5,
      "prompt_citation_count": 25,
      "prompt_citation_count_change": 5,
      "prompt_citation_count_percentage": 50,
      "prompt_citation_count_percentage_change": 8,
      "top_cited_url": "https://example.com/blood-testing-guide"
    }
  ],
  "executionState": "string",
  "executionId": "string",
  "requestId": "string",
  "nextPageId": "string"
}
400 Invalid request parameters
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

Get Detailed Data about Your Tracked Prompts

/data-api/v1/ai_prompt_details

This endpoint returns prompt-level data with brand mention and website citation data, and can include comparison data across time periods.

Optional Asynchronous Request

Note that this request may also be made with an asynchronous workflow:

  1. Initial Request: Submit your initial request to /data-api/v1/async/ai_prompt_details and receive a 202 response with the executionId key-value pair.
  2. Polling. Add the executionId key and value to your request body to poll for results. While the asynchronous workflow is running, you will continue to receive 202 responses. When the query is complete, you'll receive a 200 response.
  3. Pagination. Use the nextPageId value from the completed 200 response to get additional pages. You can also specify the number of results per page using the pageSize parameter.

Parameters

  • For your initial request in the asynchronous query, include all the parameters listed in the Request Body section below.
  • For polling requests, include executionId and, optionally pageSize and nextPageId for pagination.

Request Body

{
  "reference_time_period_start": "2024-03-01",
  "reference_time_period_end": "2024-03-31",
  "comparison_time_period_start": "2024-04-01",
  "comparison_time_period_end": "2024-04-30",
  "locode": "US",
  "ai_search_engine_name": "ChatGPT Search 4o",
  "topic": "blood testing labs",
  "prompt": "allergy blood testing",
  "limit": 10000
}

reference_time_period_start

Type: string | Example: 2024-03-01

Required. This determines the first date, in YYYY-MM-DD format, from which you want to begin to pull data.


reference_time_period_end

Type: string | Example: 2024-03-31

Required. The final date, in YYYY-MM-DD format, through which you want to pull data with this request.


comparison_time_period_start

Type: string | Example: 2024-04-01

Optional. If you want to compare data between the reference data and a comparison data, this is the first date, in YYYY-MM-DD format, from which you want to begin to pull data for the comparison.

By default, no comparison data is provided.


comparison_time_period_end

Type: string | Example: 2024-04-30

Optional. If you want to compare data between the reference data and a comparison data, this is the final date, in YYYY-MM-DD format, through which you want to pull data for the comparison.

By default, no comparison data is provided.


locode

Type: string | Example: US

Optional. The location for which data should be returned.

By default, data for all locations is returned.

Enum values:

  • Coming soon

ai_search_engine_name

Type: string | Example: ChatGPT Search 4o

Optional. The specific AI search engine for which you want to return data.

By default, data for all engines is returned.

Enum values:

  • ChatGPT Search 3.5
  • ChatGPT Search 4o
  • ChatGPT Search 4.5
  • Perplexity AI GPT-4
  • Google Gemini
  • Google AIO
  • Google AI Mode

topic

Type: string | Example: blood testing labs

Optional. The specific tracked topic for which you want to return data.

By default, data for all topics is returned.


prompt

Type: string | Example: allergy blood testing

Optional. The specific tracked prompt for which you want to return data.

By default, data for all prompts is returned.


limit

Type: integer | Example: 1000

Optional. The maximum number of results returned through this endpoint.

By default, this endpoint returns up to 10,000 results, which is also the maximum number or results that can be returned.


Responses

200

Successful query execution

Schema: See below

Example

{
  "results": [
    {
      "organization_name": "Conductor",
      "account_name": "Marketing Account",
      "web_property_name": "conductor.com",
      "reference_time_period_start": "2024-03-01",
      "reference_time_period_end": "2024-03-31",
      "comparison_time_period_start": "2024-04-01",
      "comparison_time_period_end": "2024-04-30",
      "collection_frequency": "DAILY",
      "locode": "US-NY",
      "ai_search_engine_name": "ChatGPT Search 4o",
      "topic": "marketing automation",
      "prompt": "best marketing automation tools",
      "intent": "commercial",
      "persona_name": "Marketing Manager",
      "brand_count": 3,
      "brand_count_difference": 1,
      "brand_count_change_percent": 33.33,
      "citation_count": 5,
      "citation_count_difference": 2,
      "citation_count_change_percent": 40
    }
  ],
  "executionState": "string",
  "executionId": "string",
  "requestId": "string",
  "nextPageId": "string"
}
400 Invalid request parameters
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

Get AI Responses for All Your Tracked Prompts

/data-api/v1/ai_search_response

This endpoint returns data about the AI search engine responses to your tracked prompts, including the actual AI response text.

Optional Asynchronous Request

Note that this request may also be made with an asynchronous workflow:

  1. Initial Request: Submit your initial request to /data-api/v1/async/ai_search_response and receive a 202 response with the executionId key-value pair.
  2. Polling. Add the executionId key and value to your request body to poll for results. While the asynchronous workflow is running, you will continue to receive 202 responses. When the query is complete, you'll receive a 200 response.
  3. Pagination. Use the nextPageId value from the completed 200 response to get additional pages. You can also specify the number of results per page using the pageSize parameter.

Parameters

  • For your initial request in the asynchronous query, include all the parameters listed in the Request Body section below.
  • For polling requests, include executionId and, optionally pageSize and nextPageId for pagination.

Request Body

{
  "time_period_start": "2024-03-01",
  "time_period_end": "2024-03-31",
  "collection_frequency": "DAILY",
  "locode": "US",
  "ai_search_engine_name": "ChatGPT Search 4o",
  "topic": "marketing automation",
  "prompt": "best marketing automation tools",
  "limit": 100
}

time_period_start

Type: string | Example: 2025-07-01

Required. The first date, in YYYY-MM-DD format, from which you want to begin to pull data with this request.


time_period_end

Type: string | Example:  2025-07-08

Required. The final date, in YYYY-MM-DD format, through which you want to pull data with this request.


collection_date

Type: string | Example: WEEKLY

Required. The frequency, either WEEKLY or DAILY, to see reported AI search data. Note that by default, Conductor collects search data is weekly, and only collects daily if specific topics are configured to do so. Choosing to report on daily topics here will include data only for those topics that have been configured for daily tracking.

Enum values:

  • DAILY
  • WEEKLY

locode

Type: string | Example: US

Optional. The location for which data should be returned.

By default, data for all locations is returned.

Enum values:

  • Coming soon

ai_search_engine_name

Type: string | Example: ChatGPT Search 4o

Optional. The specific AI search engine for which you want to return data.

By default, data for all engines is returned.

Enum values:

  • ChatGPT Search 3.5
  • ChatGPT Search 4o
  • ChatGPT Search 4.5
  • Perplexity AI GPT-4
  • Google Gemini
  • Google AIO
  • Google AI Mode

topic

Type: string | Example: blood testing labs

Optional. The specific tracked topic for which you want to return data.

By default, data for all topics is returned.


prompt

Type: string | Example: allergy blood testing

Optional. The specific tracked prompt for which you want to return data.

By default, data for all prompts is returned.


limit

Type: integer | Example: 100

Optional. The maximum number of results returned through this endpoint.

By default, this endpoint returns up to 1,000 results, which is also the maximum number or results that can be returned.


Responses

200

Successful query execution

Schema: See below

Example

 {
 "results": [
   {
     "organization_name": "Example Organization",
     "organization_id": "DF3DAF2955754FDDB180CF505AE4761E",
     "account_name": "Example Account",
     "account_id": 123,
     "web_property_name": "conductor.com",
     "web_property_id": 456,
     "collection_frequency": "DAILY",
     "time_period_start": "2024-03-01",
     "time_period_end": "2024-03-31",
     "locode": "US",
     "ai_search_engine_id": "engine-123",
     "ai_search_engine_name": "ChatGPT Search 4o",
     "topic": "marketing automation",
     "prompt": "best marketing automation tools",
     "intent": "commercial",
     "persona_name": "Marketing Manager",
     "ai_response": "Here are some of the best marketing automation tools available...",
     "collection_date": “2024-03-15”
   }
 ],
 "executionState": "string",
 "executionId": "string",
 "requestId": "string",
 "nextPageId": “string”
}
400 Invalid request parameters
401 Unauthorized - API key missing or invalid
429 Too many requests
500 Internal server error

Dataset Schemas and Definitions

Get Datasets

This is the response schema for the /data-api/v1/get-datasets endpoint.

name

Type: string | Example: visibility

The name of the dataset.


bi_visible

Type: boolean | Example: true

Indicates whether the dataset is available through business intelligence (hence, "bi") integrations. Currently, Conductor supports Looker Studio.


Keyword Search Performance

This is the response schema for the /data-api/v1/keyword_rankings endpoint.

account_id

Type: integer | Example: 24558

The identifier in Conductor for the platform account associated with the result.


web_property_id

Type: integer | Example: 131208

The identifier in Conductor for the web property associated with the result.


organization_id

Type: string | Example: DF3DAF2955754FDDB180CF505AE4761E

The unique identifier assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


time_period_start

Type: string | Example: 2025-07-01

The first date, in YYYY-MM-DD format, from which you are pulling data.


time_period_end

Type: type | Example: sdf

The last date, in YYYY-MM-DD format, through which you are pulling data.


collection_date

Type: date | Example: 2025-07-01

The date Conductor collected data about this result, in YYYY-MM-DD format.


search_engine_name

Type: string | Example: GOOGLE_en_US

The identifier of the rank source for this result. It combines the search_engine, search_engine_language_code, and search_engine_country_code objects.


search_engine

Type: string | Example: GOOGLE

The identifier for the search engine on which you are tracking this keyword.


search_engine_country_code

Type: string | Example: US

The identifier for the country associated with the search engine on which you are tracking this keyword.


search_engine_language_code

Type: string | Example: en

The identifier for the language associated with the search engine on which you are tracking this keyword.


locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


device

Type: string | Example: DESKTOP

The type of device used for the search.

Enum values vary by endpoint:

  • For traditional search endpoints: DESKTOP, MOBILE, TABLET.
  • For AI search endpoints: DESKTOP, MOBILE.

query

Type: string | Example: best new mattresses

The specific tracked keyword associated with this result.


title

Type: string | Example: Best Smartphones 2024 - Complete Guide

The page title collected for the associated URL.


normalized_url

Type: string | Example: https://example.com/best-smartphones-2024

The normalized version of the URL associated with this result. Conductor cleans and standardizes URLs to provide consistent page reporting.

This process includes normalizing:

  • Different cases (Example.com/Path vs example.com/path)
  • Trailing slashes (/page vs /page/)
  • Multiple encodings (%7E vs ~)
  • Query parameter ordering (?b=2&a=1 vs ?a=1&b=2)
  • Fragment identifiers (#section)
  • Duplicated query parameters

root_domain

Type: string | Example: conductor.com

The root domain of the website that includes this the URL associated with this result.


subdomain

Type: string | Example: support.conductor.com

If any, the subdomain in the website to which this result belongs.


result_type

Type: string | Example: STANDARD_LINK

The type of result on the search engine results page—including standard and universal result types—associated with this result. Enum values are as follows:

  • STANDARD_LINK. These are Google's traditional "blue link" results.
  • AIO_REFERENCE_RESULT. Google's AI Overview results.
  • GOOGLE_ANSWER_BOX. Google's Answer Box results, which Google also calls Featured Snippets.
  • APPS_RESULT. Google's App results.
  • CAROUSEL_RESULT. Google's Carousel results.
  • ENCYCLOPEDIA. Baidu's Encyclopedia results.
  • EVENT_PACK and EVENT_RESULT. Google's Event results. To query all Event results, you'll need both values.
  • FORUM. Baidu's Forum results.
  • IMAGE_RESULT. Google's Image results.
  • JOB_RESULT. Google's Jobs results.
  • N_PACK. Google's Local 3 Pack results.
  • NEWS_RESULT. Google's News results.
  • NEWS_CAROUSEL. Google's News Carousel results
  • PAA_RESULT. Google's People Also Ask results.
  • PLACES_GROUP and PLACES_SINGLE. Google's Local Pack results. To query all Local Pack results, you'll need both values.
  • PRODUCT_RESULT. Google's Product results.
  • REALTIME_PROFILE_TWEETS. Google' Twitter results.
  • RECIPE_CAROUSEL. Google's Recipe results.
  • VIDEO_CAROUSEL. Google's Video Carousel results.
  • VIDEO_NATURAL and VIDEO_RESULT. Google's Video results. To query all Video results, you'll need both values.

rank_standard

Type: integer | Example: 1

Position in standard rank for this result.


rank_true

Type: integer | Example: 1

Position in true rank for this result.


rank_result_type

Type: integer | Example: 3

The rank for the result within the universal result type it owns. For example, if your result is the third item in a carousel result, your rank_result_type would be "3".


monthly_search_volume

Type: integer | Example: 2500

The monthly search volume for the keyword. Depending on data availability, this data might be either:

  • The actual approximate monthly search volume during the month specified.
  • A rolling average of search volume that Conductor calculates for a given month based on the previous 12 months of search volume data.

cpc

Type: float | Example: 9.90

The average cost-per-click for paid advertisements related to the keyword.


competition

Type: string | Example: LOW

Describes the level of competition for the keyword in paid search.


approximate_search_volume

Type: integer | Example: 2400

The approximate monthly search volume for this keyword.


Keyword Visibility

This is the response schema for the /data-api/v1/composite_visibility endpoint.

account_id

Type: integer | Example: 24558

The identifier in Conductor for the platform account associated with the result.


account_name

Type: string | Example: Conductor

The name of the Conductor account associated with the result.


web_property_id

Type: integer | Example: 131208

The identifier in Conductor for the web property associated with the result.


web_property_name

Type: integer | Example: conductor.com

The name of the website or property associated with the data.


organization_id

Type: string | Example: DF3DAF2955754FDDB180CF505AE4761E

The unique identifier assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


rank_source

Type: string | Example: GOOGLE_EN_US

The combined string indicating the search engine, language, and country associated with the tracked  keyword results.


device

Type: string | Example: DESKTOP

The type of device used for the search.

Enum values vary by endpoint:

  • For traditional search endpoints: DESKTOP, MOBILE, TABLET.
  • For AI search endpoints: DESKTOP, MOBILE.

locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


time_period_start

Type: string | Example: 2025-07-01

The first date, in YYYY-MM-DD format, from which you are pulling data.


time_period_end

Type: type | Example: sdf

The last date, in YYYY-MM-DD format, through which you are pulling data.


time_period_type

Type: string | Example: WEEK

The reporting granularity across which data is aggregated.


collection_date

Type: date | Example: 2025-07-01

The date Conductor collected data about this result, in YYYY-MM-DD format.


tracked_count

Type: integer | Example: 1000

The total number of tracked keywords you are reporting on.


tracked_ranked

Type: integer | Example: 950

The total number of tracked keywords for which your pages are ranking.


top_3

Type: integer | Example: 150

The number of tracked keywords for which your pages are ranking in positions 1–3.


top_4_10

Type: integer | Example: 200

The number of tracked keywords for which your pages are ranking in positions 4–10.


top_11_20

Type: integer | Example: 250

The number of tracked keywords for which your pages are ranking in positions 11–20.


top_21_40

Type: integer | Example: 200

The number of tracked keywords for which your pages are ranking in positions 21–40.


top_41_100

Type: integer | Example: 150

The number of tracked keywords for which your pages are ranking in positions 1–3.


Highest Ranking URL per Keyword for a Single Time Period

This is the response schema for the /data-api/v1/highest_ranking_url_per_keyword endpoint.

account_id

Type: integer | Example: 24558

The identifier in Conductor for the platform account associated with the result.


account_name

Type: string | Example: Conductor

The name of the Conductor account associated with the result.


web_property_id

Type: integer | Example: 131208

The identifier in Conductor for the web property associated with the result.


organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


organization_id

Type: string | Example: DF3DAF2955754FDDB180CF505AE4761E

The unique identifier assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


query

Type: string | Example: best new mattresses

The specific tracked keyword associated with this result.


locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


device

Type: string | Example: DESKTOP

The type of device used for the search.

Enum values vary by endpoint:

  • For traditional search endpoints: DESKTOP, MOBILE, TABLET.
  • For AI search endpoints: DESKTOP, MOBILE.

rank_source_engine

Type: string | Example: google

The identifier for the search engine on which you are tracking this keyword.

We'll publish an enumerated list of values for this array soon.


rank_source_country

Type: string | Example: US

The country code associated with the rank source for this result.

We'll publish an enumerated list of values for this array soon.


rank_source_country

Type: string | Example: US

The country code associated with the rank source for this result.

We'll publish an enumerated list of values for this array soon.


rank_source_language

Type: string | Example: en

The language code associated with the rank source for this result.

We'll publish an enumerated list of values for this array soon.


collection_frequency

Type: string | Example: WEEKLY

How frequently the data was collected.


time_period

Type: string | Example: 2025-07-17

The time period for this data point.


rank_true

Type: integer | Example: 1

Position in true rank for this result.


rank_standard

Type: integer | Example: 1

Position in standard rank for this result.


title

Type: string | Example: Best Smartphones 2024 - Complete Guide

The page title collected for the associated URL.


normalized_url

Type: string | Example: https://example.com/best-smartphones-2024

The normalized version of the URL associated with this result. Conductor cleans and standardizes URLs to provide consistent page reporting.

This process includes normalizing:

  • Different cases (Example.com/Path vs example.com/path)
  • Trailing slashes (/page vs /page/)
  • Multiple encodings (%7E vs ~)
  • Query parameter ordering (?b=2&a=1 vs ?a=1&b=2)
  • Fragment identifiers (#section)
  • Duplicated query parameters

root_domain

Type: string | Example: conductor.com

The root domain of the website that includes this the URL associated with this result.


domain

Type: string | Example: www.conductor.com

The full domain of to which the URL associated with this result belongs.


result_type

Type: string | Example: STANDARD_LINK

The type of result on the search engine results page—including standard and universal result types—associated with this result. Enum values are as follows:

  • STANDARD_LINK. These are Google's traditional "blue link" results.
  • AIO_REFERENCE_RESULT. Google's AI Overview results.
  • GOOGLE_ANSWER_BOX. Google's Answer Box results, which Google also calls Featured Snippets.
  • APPS_RESULT. Google's App results.
  • CAROUSEL_RESULT. Google's Carousel results.
  • ENCYCLOPEDIA. Baidu's Encyclopedia results.
  • EVENT_PACK and EVENT_RESULT. Google's Event results. To query all Event results, you'll need both values.
  • FORUM. Baidu's Forum results.
  • IMAGE_RESULT. Google's Image results.
  • JOB_RESULT. Google's Jobs results.
  • N_PACK. Google's Local 3 Pack results.
  • NEWS_RESULT. Google's News results.
  • NEWS_CAROUSEL. Google's News Carousel results
  • PAA_RESULT. Google's People Also Ask results.
  • PLACES_GROUP and PLACES_SINGLE. Google's Local Pack results. To query all Local Pack results, you'll need both values.
  • PRODUCT_RESULT. Google's Product results.
  • REALTIME_PROFILE_TWEETS. Google' Twitter results.
  • RECIPE_CAROUSEL. Google's Recipe results.
  • VIDEO_CAROUSEL. Google's Video Carousel results.
  • VIDEO_NATURAL and VIDEO_RESULT. Google's Video results. To query all Video results, you'll need both values.

monthly_search_volume

Type: integer | Example: 2500

The monthly search volume for the keyword. Depending on data availability, this data might be either:

  • The actual approximate monthly search volume during the month specified.
  • A rolling average of search volume that Conductor calculates for a given month based on the previous 12 months of search volume data.

msv_collection_month

Type: integer | Example: 202507

The month, in YYYYMM format, during which the monthly search volume data point was collected. 


in_average_msv

Type: integer | Example: 0

Indicates whether the monthly search volume data point is a 12 month average or the actual approximate value for that month. See the monthly_search_volume object for more information.


cpc

Type: float | Example: 9.90

The average cost-per-click for paid advertisements related to the keyword.


competition

Type: string | Example: LOW

Describes the level of competition for the keyword in paid search.


Monthly Search Volume Seasonality

This is the response schema for the /data-api/v1/msv_seasonality endpoint.

account_id

Type: integer | Example: 24558

The identifier in Conductor for the platform account associated with the result.


account_name

Type: string | Example: Conductor

The name of the Conductor account associated with the result.


web_property_id

Type: integer | Example: 131208

The identifier in Conductor for the web property associated with the result.


web_property_name

Type: integer | Example: conductor.com

The name of the website or property associated with the data.


organization_id

Type: string | Example: DF3DAF2955754FDDB180CF505AE4761E

The unique identifier assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


rank_source

Type: string | Example: GOOGLE_EN_US

The combined string indicating the search engine, language, and country associated with the tracked  keyword results.


device

Type: string | Example: DESKTOP

The type of device used for the search.

Enum values vary by endpoint:

  • For traditional search endpoints: DESKTOP, MOBILE, TABLET.
  • For AI search endpoints: DESKTOP, MOBILE.

locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


collection_frequency

Type: string | Example: WEEKLY

How frequently the data was collected.


collection_month

Type: integer | Example: 202507

The month, in YYYYMM format, during which the data point collected. 


search_volume

Type: integer | Example: 2400

The total search volume for the month. 


is_average

Type: boolean | Example: false

Indicates whether the search volume is a 12-month average (true) or based on actual approximate volume (false).


AI Search Performance

This is the response schema for the /data-api/v1/ai_search_performance endpoint.

organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


organization_id

Type: string | Example: DF3DAF2955754FDDB180CF505AE4761E

The unique identifier assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


account_name

Type: string | Example: Conductor

The name of the Conductor account associated with the result.


account_id

Type: integer | Example: 24558

The identifier in Conductor for the platform account associated with the result.


web_property_name

Type: integer | Example: conductor.com

The name of the website or property associated with the data.


web_property_id

Type: integer | Example: 131208

The identifier in Conductor for the web property associated with the result.


time_period_start

Type: string | Example: 2025-07-01

The first date, in YYYY-MM-DD format, from which you are pulling data.


time_period_end

Type: type | Example: sdf

The last date, in YYYY-MM-DD format, through which you are pulling data.


locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


ai_search_engine_name

Type: type | Example: Perplexity

The name of the AI search engine associated with the result.

Enum values:

  • ChatGPT Search 3.5
  • ChatGPT Search 4o
  • ChatGPT Search 4.5
  • Perplexity AI GPT-4
  • Google Gemini
  • Google AIO
  • Google AI Mode

topic

Type: string | Example: marketing automation

The topic associated with the prompt.


prompt

Type: string | Example: best marketing automation tools

The specific text of the relevant prompt.


intent

Type: string | Example: Comparison

The intent type associated with the related prompt.

Enum values:

  • Brand/Service Navigation
  • Comparison
  • Education
  • Other
  • Pricing
  • Purchase
  • Recommendations
  • Support

persona_name

Type: string | Example: Eco-conscious shopper

The name of the persona associated with the result.


brands

Type: array | Example: ["conductor", "conductor creator"]

The brands mentioned in an AI search response.


citations_urls

Type: array | Example: ["https://conductor.com/guide", "https://hubspot.com/blog"]

The array of URLs cited in an AI search response.


citations_root_domains

Type: array | Example: ["conductor.com", "hubspot.com"]

The array of root domains that include cited URLs in an AI search response.


collection_date

Type: date | Example: 2025-07-01

The date Conductor collected data about this result, in YYYY-MM-DD format.


AI Market Share Brand Mention Overview

This is the response schema for the /data-api/v1/ai_marketshare_brand_overview endpoint.

organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


organization_id

Type: string | Example: DF3DAF2955754FDDB180CF505AE4761E

The unique identifier assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


account_name

Type: string | Example: Conductor

The name of the Conductor account associated with the result.


account_id

Type: integer | Example: 24558

The identifier in Conductor for the platform account associated with the result.


web_property_name

Type: integer | Example: conductor.com

The name of the website or property associated with the data.


web_property_id

Type: integer | Example: 131208

The identifier in Conductor for the web property associated with the result.


time_period_start

Type: string | Example: 2025-07-01

The first date, in YYYY-MM-DD format, from which you are pulling data.


time_period_end

Type: type | Example: sdf

The last date, in YYYY-MM-DD format, through which you are pulling data.


collection_frequency

Type: string | Example: WEEKLY

How frequently the data was collected.


locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


ai_search_engine_name

Type: type | Example: Perplexity

The name of the AI search engine associated with the result.

Enum values:

  • ChatGPT Search 3.5
  • ChatGPT Search 4o
  • ChatGPT Search 4.5
  • Perplexity AI GPT-4
  • Google Gemini
  • Google AIO
  • Google AI Mode

brand_name

Type: string | Example: conductor intelligence

The brand name associated with the result.


brand_attribution

Type: string | Example: COMPETITOR

Identifies whether the brand mentioned is one of your brands or one of your competitors.


topic_total

Type: integer | Example: 100

The total number of topics.


topic_brand_count

Type: integer | Example: 25

The number of tracked topics for which the brand is mentioned in AI search responses.


topic_brand_market_share_percent

Type: number | Example: 25

The percentage of topics for which the brand is mentioned in AI search responses.


prompt_total

Type: integer | Example: 500

The total number of prompts.


prompt_response_brand_count

Type: integer | Example: 25

The number of prompts for which the brand is mentioned in the AI search response.


prompt_response_brand_market_share_percent

Type: number | Example: 15

The percentage of prompts for which the brand is mentioned in the AI search response.


This is the response schema for the /data-api/v1/ai_marketshare_brand_trends endpoint.

organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


organization_id

Type: string | Example: DF3DAF2955754FDDB180CF505AE4761E

The unique identifier assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


account_name

Type: string | Example: Conductor

The name of the Conductor account associated with the result.


account_id

Type: integer | Example: 24558

The identifier in Conductor for the platform account associated with the result.


web_property_name

Type: integer | Example: conductor.com

The name of the website or property associated with the data.


web_property_id

Type: integer | Example: 131208

The identifier in Conductor for the web property associated with the result.


time_period_start

Type: string | Example: 2025-07-01

The first date, in YYYY-MM-DD format, from which you are pulling data.


time_period_end

Type: type | Example: sdf

The last date, in YYYY-MM-DD format, through which you are pulling data.


collection_frequency

Type: string | Example: WEEKLY

How frequently the data was collected.


locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


ai_search_engine_name

Type: type | Example: Perplexity

The name of the AI search engine associated with the result.

Enum values:

  • ChatGPT Search 3.5
  • ChatGPT Search 4o
  • ChatGPT Search 4.5
  • Perplexity AI GPT-4
  • Google Gemini
  • Google AIO
  • Google AI Mode

brand_name

Type: string | Example: conductor intelligence

The brand name associated with the result.


brand_attribution

Type: string | Example: COMPETITOR

Identifies whether the brand mentioned is one of your brands or one of your competitors.


topic_total

Type: integer | Example: 100

The total number of topics.


topic_brand_count

Type: integer | Example: 25

The number of topics for which the brand is mentioned in AI search responses.


topic_brand_market_share_percent

Type: number | Example: 16

The percentage of topics for which the brand is mentioned in AI search responses.


prompt_total

Type: integer | Example: 500

The total number of prompts.


prompt_response_brand_count

Type: integer | Example: 23

The number of prompts for which the brand is mentioned in the AI search response.


prompt_response_brand_market_share_percent

Type: number | Example: 17

The percentage of prompts for which the brand is mentioned in the AI search response.


AI Market Share Website Citations Overview

This is the response schema for the /data-api/v1/ai_marketshare_citations_overview endpoint.

organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


organization_id

Type: string | Example: DF3DAF2955754FDDB180CF505AE4761E

The unique identifier assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


account_name

Type: string | Example: Conductor

The name of the Conductor account associated with the result.


account_id

Type: integer | Example: 24558

The identifier in Conductor for the platform account associated with the result.


web_property_name

Type: integer | Example: conductor.com

The name of the website or property associated with the data.


web_property_id

Type: integer | Example: 131208

The identifier in Conductor for the web property associated with the result.


time_period_start

Type: string | Example: 2025-07-01

The first date, in YYYY-MM-DD format, from which you are pulling data.


time_period_end

Type: type | Example: sdf

The last date, in YYYY-MM-DD format, through which you are pulling data.


collection_frequency

Type: string | Example: WEEKLY

How frequently the data was collected.


locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


ai_search_engine_name

Type: type | Example: Perplexity

The name of the AI search engine associated with the result.

Enum values:

  • ChatGPT Search 3.5
  • ChatGPT Search 4o
  • ChatGPT Search 4.5
  • Perplexity AI GPT-4
  • Google Gemini
  • Google AIO
  • Google AI Mode

domain_or_web_property_segment

Type: string | Example: conductor.com

The domain or web property segment that appears in the citation


citation_ownership

Type: string | Example: COMPETITOR

Identifies whether your website owns this result or someone else. 

Enum values vary depending on which endpoint you called:

  • /data-api/v1/ai_marketshare_citations_trends: YOU, COMPETITOR, UNKNOWN
  • /data-api/v1/ai_search_performance_citation: YOU, OTHER

topic_total

Type: integer | Example: 100

The total number of topics.


topic_citation_count

Type: integer | Example: 42

The number of topics for which the domain or web property segment is cited.


topic_citation_market_share_percent

Type: number | Example: 23

The percentage of topics for which the domain or web property segment is cited.


prompt_total

Type: integer | Example: 500

The total number of prompts.


prompt_response_citation_count

Type: integer | Example: 42

The number of prompts for which the domain or web property segment is cited.


prompt_response_citation_market_share_percent

Type: number | Example: 23

The percentage of prompts for which the domain or web property segment is cited.


This is the response schema for the /data-api/v1/ai_marketshare_citations_trends endpoint.

organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


organization_id

Type: string | Example: DF3DAF2955754FDDB180CF505AE4761E

The unique identifier assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


account_name

Type: string | Example: Conductor

The name of the Conductor account associated with the result.


account_id

Type: integer | Example: 24558

The identifier in Conductor for the platform account associated with the result.


web_property_name

Type: integer | Example: conductor.com

The name of the website or property associated with the data.


web_property_id

Type: integer | Example: 131208

The identifier in Conductor for the web property associated with the result.


time_period_start

Type: string | Example: 2025-07-01

The first date, in YYYY-MM-DD format, from which you are pulling data.


time_period_end

Type: type | Example: sdf

The last date, in YYYY-MM-DD format, through which you are pulling data.


collection_frequency

Type: string | Example: WEEKLY

How frequently the data was collected.


locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


ai_search_engine_name

Type: type | Example: Perplexity

The name of the AI search engine associated with the result.

Enum values:

  • ChatGPT Search 3.5
  • ChatGPT Search 4o
  • ChatGPT Search 4.5
  • Perplexity AI GPT-4
  • Google Gemini
  • Google AIO
  • Google AI Mode

domain_or_web_property_segment

Type: string | Example: conductor.com

The domain or web property segment that appears in the citation


citation_ownership

Type: string | Example: COMPETITOR

Identifies whether your website owns this result or someone else. 

Enum values vary depending on which endpoint you called:

  • /data-api/v1/ai_marketshare_citations_trends: YOU, COMPETITOR, UNKNOWN
  • /data-api/v1/ai_search_performance_citation: YOU, OTHER

topic_total

Type: integer | Example: 100

The total number of topics.


topic_citation_count

Type: integer | Example: 42

The number of topics for which the domain or web property segment is cited.


topic_citation_market_share_percent

Type: number | Example: 23

The percentage of topics for which the domain or web property segment is cited.


prompt_total

Type: integer | Example: 500

The total number of prompts.


prompt_response_citation_count

Type: integer | Example: 42

The number of prompts for which the domain or web property segment is cited.


prompt_response_citation_market_share_percent

Type: number | Example: 23

The percentage of prompts for which the domain or web property segment is cited.


AI Visibility Brand Mentions over Time

This is the response schema for the /data-api/v1/ai_visibility_brand_attribution endpoint.

organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


organization_id

Type: string | Example: DF3DAF2955754FDDB180CF505AE4761E

The unique identifier assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


account_name

Type: string | Example: Conductor

The name of the Conductor account associated with the result.


account_id

Type: integer | Example: 24558

The identifier in Conductor for the platform account associated with the result.


web_property_name

Type: integer | Example: conductor.com

The name of the website or property associated with the data.


web_property_id

Type: integer | Example: 131208

The identifier in Conductor for the web property associated with the result.


time_period_start

Type: string | Example: 2025-07-01

The first date, in YYYY-MM-DD format, from which you are pulling data.


time_period_end

Type: type | Example: sdf

The last date, in YYYY-MM-DD format, through which you are pulling data.


collection_frequency

Type: string | Example: WEEKLY

How frequently the data was collected.


locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


ai_search_engine_name

Type: type | Example: Perplexity

The name of the AI search engine associated with the result.

Enum values:

  • ChatGPT Search 3.5
  • ChatGPT Search 4o
  • ChatGPT Search 4.5
  • Perplexity AI GPT-4
  • Google Gemini
  • Google AIO
  • Google AI Mode

topic_total

Type: integer | Example: 100

The total number of topics.


topic_brand_count

Type: integer | Example: 42

The number of topics for which your brand is mentioned in AI search responses.


topic_without_brand_count

Type: integer | Example: 23

The number of topics for which your brand is not mentioned in AI search responses.


prompt_total

Type: integer | Example: 500

The total number of prompts.


prompt_response_brand_count

Type: integer | Example: 54

The number of prompts for which your brand is mentioned in AI search responses.


prompt_response_without_brand_count

Type: integer | Example: 33

The number of prompts for which your brand is not mentioned in AI search responses.


AI Visibility Website Citations over Time

This is the response schema for the /data-api/v1/ai_visibility_citations_attribution endpoint.

organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


organization_id

Type: string | Example: DF3DAF2955754FDDB180CF505AE4761E

The unique identifier assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


account_name

Type: string | Example: Conductor

The name of the Conductor account associated with the result.


account_id

Type: integer | Example: 24558

The identifier in Conductor for the platform account associated with the result.


web_property_name

Type: integer | Example: conductor.com

The name of the website or property associated with the data.


web_property_id

Type: integer | Example: 131208

The identifier in Conductor for the web property associated with the result.


time_period_start

Type: string | Example: 2025-07-01

The first date, in YYYY-MM-DD format, from which you are pulling data.


time_period_end

Type: type | Example: sdf

The last date, in YYYY-MM-DD format, through which you are pulling data.


collection_frequency

Type: string | Example: WEEKLY

How frequently the data was collected.


locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


ai_search_engine_name

Type: type | Example: Perplexity

The name of the AI search engine associated with the result.

Enum values:

  • ChatGPT Search 3.5
  • ChatGPT Search 4o
  • ChatGPT Search 4.5
  • Perplexity AI GPT-4
  • Google Gemini
  • Google AIO
  • Google AI Mode

topic_total

Type: integer | Example: 100

The total number of topics.


topic_citation_count

Type: integer | Example: 42

The number of topics for which the domain or web property segment is cited.


topic_without_citation_count

Type: integer | Example: 23

The number of topics for which no citations appear.


prompt_total

Type: integer | Example: 500

The total number of prompts.


prompt_response_citation_count

Type: integer | Example: 42

The number of prompts for which the domain or web property segment is cited.


prompt_response_without_citation_count

Type: integer | Example: 23

The number of prompts for which no citations appear.


AI Search Performance Brand Mentions

This is the response schema for the /data-api/v1/ai_search_performance_brand endpoint.

organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


organization_id

Type: string | Example: DF3DAF2955754FDDB180CF505AE4761E

The unique identifier assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


account_name

Type: string | Example: Conductor

The name of the Conductor account associated with the result.


account_id

Type: integer | Example: 24558

The identifier in Conductor for the platform account associated with the result.


web_property_name

Type: integer | Example: conductor.com

The name of the website or property associated with the data.


web_property_id

Type: integer | Example: 131208

The identifier in Conductor for the web property associated with the result.


time_period_start

Type: string | Example: 2025-07-01

The first date, in YYYY-MM-DD format, from which you are pulling data.


time_period_end

Type: type | Example: sdf

The last date, in YYYY-MM-DD format, through which you are pulling data.


collection_frequency

Type: string | Example: WEEKLY

How frequently the data was collected.


locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


ai_search_engine_name

Type: type | Example: Perplexity

The name of the AI search engine associated with the result.

Enum values:

  • ChatGPT Search 3.5
  • ChatGPT Search 4o
  • ChatGPT Search 4.5
  • Perplexity AI GPT-4
  • Google Gemini
  • Google AIO
  • Google AI Mode

topic

Type: string | Example: marketing automation

The topic associated with the prompt.


prompt

Type: string | Example: best marketing automation tools

The specific text of the relevant prompt.


intent

Type: string | Example: Comparison

The intent type associated with the related prompt.

Enum values:

  • Brand/Service Navigation
  • Comparison
  • Education
  • Other
  • Pricing
  • Purchase
  • Recommendations
  • Support

persona_name

Type: string | Example: Eco-conscious shopper

The name of the persona associated with the result.


brand_name

Type: string | Example: conductor intelligence

The brand name associated with the result.


brand_type

Type: string | Example: YOU

Designates the brand as one of the following enum values: YOU, COMPETITOR, PARTNER


collection_date

Type: date | Example: 2025-07-01

The date Conductor collected data about this result, in YYYY-MM-DD format.


AI Search Performance Website Citations

This is the response schema for the /data-api/v1/ai_search_performance_citation endpoint.

organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


organization_id

Type: string | Example: DF3DAF2955754FDDB180CF505AE4761E

The unique identifier assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


account_name

Type: string | Example: Conductor

The name of the Conductor account associated with the result.


account_id

Type: integer | Example: 24558

The identifier in Conductor for the platform account associated with the result.


web_property_name

Type: integer | Example: conductor.com

The name of the website or property associated with the data.


web_property_id

Type: integer | Example: 131208

The identifier in Conductor for the web property associated with the result.


time_period_start

Type: string | Example: 2025-07-01

The first date, in YYYY-MM-DD format, from which you are pulling data.


time_period_end

Type: type | Example: sdf

The last date, in YYYY-MM-DD format, through which you are pulling data.


collection_frequency

Type: string | Example: WEEKLY

How frequently the data was collected.


locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


ai_search_engine_name

Type: type | Example: Perplexity

The name of the AI search engine associated with the result.

Enum values:

  • ChatGPT Search 3.5
  • ChatGPT Search 4o
  • ChatGPT Search 4.5
  • Perplexity AI GPT-4
  • Google Gemini
  • Google AIO
  • Google AI Mode

topic

Type: string | Example: marketing automation

The topic associated with the prompt.


prompt

Type: string | Example: best marketing automation tools

The specific text of the relevant prompt.


intent

Type: string | Example: Comparison

The intent type associated with the related prompt.

Enum values:

  • Brand/Service Navigation
  • Comparison
  • Education
  • Other
  • Pricing
  • Purchase
  • Recommendations
  • Support

persona_name

Type: string | Example: Eco-conscious shopper

The name of the persona associated with the result.


citation_url

Type: string | Example: https://conductor.com/marketing-automation-guide

The full URL cited in the AI search response.


citation_root_domain

Type: string | Example: conductor.com

The root domain to which the cited URL belongs.


citation_web_property_segment

Type: string | Example: conductor.com

The web property segment to which the cited URL belongs.


citation_ownership

Type: string | Example: COMPETITOR

Identifies whether your website owns this result or someone else. 

Enum values vary depending on which endpoint you called:

  • /data-api/v1/ai_marketshare_citations_trends: YOU, COMPETITOR, UNKNOWN
  • /data-api/v1/ai_search_performance_citation: YOU, OTHER

collection_date

Type: date | Example: 2025-07-01

The date Conductor collected data about this result, in YYYY-MM-DD format.


AI Topic Details

This is the response schema for the /data-api/v1/ai_topic_details endpoint.

organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


account_name

Type: string | Example: Conductor

The name of the Conductor account associated with the result.


web_property_name

Type: integer | Example: conductor.com

The name of the website or property associated with the data.


reference_time_period_start

Type: type | Example: sdf

The first date, in YYYY-MM-DD format, from which you are pulling data with this request.


reference_time_period_end

Type: string | Example: 2025-07-08

The final date, in YYYY-MM-DD format, through which you are pulling data with this request..


comparison_time_period_start

Type: string | Example: 2025-07-01

If you are comparing data between the reference data and a comparison data, this is the first date, in YYYY-MM-DD format, from which you are pulling data for the comparison.


comparison_time_period_end

Type: type | Example: sdf

If you are comparing data between the reference data and a comparison data, this is the final date, in YYYY-MM-DD format, through which you are pulling data for the comparison.


collection_frequency

Type: string | Example: WEEKLY

How frequently the data was collected.


locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


ai_search_engine_name

Type: type | Example: Perplexity

The name of the AI search engine associated with the result.

Enum values:

  • ChatGPT Search 3.5
  • ChatGPT Search 4o
  • ChatGPT Search 4.5
  • Perplexity AI GPT-4
  • Google Gemini
  • Google AIO
  • Google AI Mode

topic

Type: string | Example: marketing automation

The topic associated with the prompt.


prompt_total

Type: integer | Example: 500

The total number of prompts.


prompt_brand_count

Type: integer | Example: 23

Number of prompts with brand mentions for this topic.


prompt_brand_count_change

Type: integer | Example: 25

Change in the number of prompts with brand mentions for this topic. (Only returned when comparing time periods.)


prompt_brand_count_percentage

Type: number | Example: 12

Percentage of prompts with brand mentions for this topic.


prompt_brand_count_percentage_change

Type: integer | Example: 14

Change in the percentage of prompts with brand mentions for this topic. (Only returned when comparing time periods.)


prompt_citation_count

Type: integer | Example: 52

Number of prompts with website citations for this topic.


prompt_citation_count_change

Type: integer | Example: 32

Change in the number of prompts with website citations for this topic. (Only returned when comparing time periods.)


prompt_citation_count_percentage

Type: number | Example: 21

Percentage of prompts with website citations for this topic.


prompt_citation_count_percentage_change

Type: integer | Example: 4

Change in the percentage of prompts with website citations for this topic. (Only returned when comparing time periods.)


top_cited_url

Type: string | Example: https://example.com/blood-testing-guide

The URL with the most citations for this topic


AI Prompt Details

This is the response schema for the /data-api/v1/ai_prompt_details endpoint.

organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


account_name

Type: string | Example: Conductor

The name of the Conductor account associated with the result.


web_property_name

Type: integer | Example: conductor.com

The name of the website or property associated with the data.


reference_time_period_start

Type: type | Example: sdf

The first date, in YYYY-MM-DD format, from which you are pulling data with this request.


reference_time_period_end

Type: string | Example: 2025-07-08

The final date, in YYYY-MM-DD format, through which you are pulling data with this request..


comparison_time_period_start

Type: string | Example: 2025-07-01

If you are comparing data between the reference data and a comparison data, this is the first date, in YYYY-MM-DD format, from which you are pulling data for the comparison.


comparison_time_period_end

Type: type | Example: sdf

If you are comparing data between the reference data and a comparison data, this is the final date, in YYYY-MM-DD format, through which you are pulling data for the comparison.


collection_frequency

Type: string | Example: WEEKLY

How frequently the data was collected.


locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


ai_search_engine_name

Type: type | Example: Perplexity

The name of the AI search engine associated with the result.

Enum values:

  • ChatGPT Search 3.5
  • ChatGPT Search 4o
  • ChatGPT Search 4.5
  • Perplexity AI GPT-4
  • Google Gemini
  • Google AIO
  • Google AI Mode

topic

Type: string | Example: marketing automation

The topic associated with the prompt.


prompt

Type: string | Example: best marketing automation tools

The specific text of the relevant prompt.


intent

Type: string | Example: Comparison

The intent type associated with the related prompt.

Enum values:

  • Brand/Service Navigation
  • Comparison
  • Education
  • Other
  • Pricing
  • Purchase
  • Recommendations
  • Support

persona_name

Type: string | Example: Eco-conscious shopper

The name of the persona associated with the result.


brand_count

Type: integer | Example: 14

The number of brand mentions in the AI response during the reference time period or single time period.


brand_count_difference

Type: integer | Example: 23

The difference in number of brand mentions between the comparison time period and the reference time period. (Only returned when comparing time periods.)


brand_count_change_percent

Type: number | Example: 21

The percentage change in the number of brand mentions between the comparison time period and the reference time period (Only returned when comparing time periods.)


citation_count

Type: integer | Example: 42

The number of website citations in the AI response during the reference time period or single time period.


citation_count_difference

Type: integer | Example: 33

The difference in number of website citations between the comparison time period and the reference time period. (Only returned when comparing time periods.)


citation_count_change_percent

Type: number | Example: 10

The percentage change in the number of website citations between the comparison time period and the reference time period (Only returned when comparing time periods.)


AI Search Response

This is the response schema for the /data-api/v1/ai_search_response endpoint.

organization_name:

Type: string | Example: Conductor LLC

The name assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


organization_id

Type: string | Example: DF3DAF2955754FDDB180CF505AE4761E

The unique identifier assigned to your organization in Conductor. Organizations may have more than one platform accounts associated with them.


account_name

Type: string | Example: Conductor

The name of the Conductor account associated with the result.


account_id

Type: integer | Example: 24558

The identifier in Conductor for the platform account associated with the result.


web_property_name

Type: integer | Example: conductor.com

The name of the website or property associated with the data.


web_property_id

Type: integer | Example: 131208

The identifier in Conductor for the web property associated with the result.


collection_frequency

Type: string | Example: WEEKLY

How frequently the data was collected.


time_period_start

Type: string | Example: 2025-07-01

The first date, in YYYY-MM-DD format, from which you are pulling data.


time_period_end

Type: type | Example: sdf

The last date, in YYYY-MM-DD format, through which you are pulling data.


locode

Type: string | Example: US

The location code associated with the result.

We'll provide an enumerated list of values for this array soon.


ai_search_engine_id

Type: string | Example: engine-123

The unique identifier of the AI search engine.


ai_search_engine_name

Type: type | Example: Perplexity

The name of the AI search engine associated with the result.

Enum values:

  • ChatGPT Search 3.5
  • ChatGPT Search 4o
  • ChatGPT Search 4.5
  • Perplexity AI GPT-4
  • Google Gemini
  • Google AIO
  • Google AI Mode

topic

Type: string | Example: marketing automation

The topic associated with the prompt.


prompt

Type: string | Example: best marketing automation tools

The specific text of the relevant prompt.


intent

Type: string | Example: Comparison

The intent type associated with the related prompt.

Enum values:

  • Brand/Service Navigation
  • Comparison
  • Education
  • Other
  • Pricing
  • Purchase
  • Recommendations
  • Support

persona_name

Type: string | Example: Eco-conscious shopper

The name of the persona associated with the result.


ai_response

Type: type | Example: sdf

Description


collection_date

Type: date | Example: 2025-07-01

The date Conductor collected data about this result, in YYYY-MM-DD format.