{
  "openapi": "3.0.1",
  "info": {
    "title": "AI Answer Visibility Tracker",
    "description": "Check whether Google AI Overviews, ChatGPT, Claude, Perplexity, and Gemini name and cite your brand for your buyers' questions. Named and cited rates, competitor rates, and every cited source. Covers AI Overviews on the normal Google results page, not Google AI Mode.",
    "version": "0.1",
    "x-build-id": "eZCu1fdooo8nVBeJY"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/mambalabs~ai-answer-visibility-tracker/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-mambalabs-ai-answer-visibility-tracker",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/mambalabs~ai-answer-visibility-tracker/runs": {
      "post": {
        "operationId": "runs-sync-mambalabs-ai-answer-visibility-tracker",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/mambalabs~ai-answer-visibility-tracker/run-sync": {
      "post": {
        "operationId": "run-sync-mambalabs-ai-answer-visibility-tracker",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "brand_name": {
            "title": "Brand name",
            "type": "string",
            "description": "Required. The brand to look for in the answers, as people write it. Matched as a whole word, any case."
          },
          "brand_domain": {
            "title": "Brand domain",
            "type": "string",
            "description": "Your website domain, such as hubspot.com. An answer that cites a page on this domain (or a subdomain) counts as cited. Leave empty to match cited domains on the brand name."
          },
          "questions": {
            "title": "Questions",
            "type": "array",
            "description": "Required. 1 to 50 questions your buyers ask, one per line, written the way they would type them, such as \"best crm for small business\".",
            "items": {
              "type": "string"
            }
          },
          "engines": {
            "title": "Answer engines",
            "type": "array",
            "description": "Where to ask. google_ai_overview needs no key. openai (ChatGPT), anthropic (Claude), perplexity, and gemini run on your own API key, given below, and the model use is billed to you by that vendor.",
            "items": {
              "type": "string",
              "enum": [
                "google_ai_overview",
                "openai",
                "anthropic",
                "perplexity",
                "gemini"
              ],
              "enumTitles": [
                "Google AI Overviews",
                "ChatGPT (OpenAI API, your key)",
                "Claude (Anthropic API, your key)",
                "Perplexity (Sonar API, your key)",
                "Gemini (Google AI API, your key)"
              ]
            },
            "default": [
              "google_ai_overview"
            ]
          },
          "samples": {
            "title": "Samples per question",
            "type": "string",
            "description": "How many times each question is asked on each engine, 1 to 10. Answers change from one ask to the next, so the rates come from several samples. Each sample is one charged event. Default 3.",
            "default": "3"
          },
          "competitors": {
            "title": "Competitors",
            "type": "array",
            "description": "Optional. Up to 20 competitors to track in the same answers, one per line, as a name, a domain, or name|domain (Pipedrive|pipedrive.com).",
            "items": {
              "type": "string"
            }
          },
          "brand_aliases": {
            "title": "Other names for the brand",
            "type": "array",
            "description": "Optional. Other ways answers write the brand, such as a product name. Up to 10.",
            "items": {
              "type": "string"
            }
          },
          "country": {
            "title": "Country",
            "type": "string",
            "description": "Two letter country code for Google, such as us or gb. The answer engines are asked without a country.",
            "default": "us"
          },
          "language": {
            "title": "Language",
            "type": "string",
            "description": "Language code for Google, such as en or de.",
            "default": "en"
          },
          "include_answer_text": {
            "title": "Include the answer text",
            "enum": [
              "true",
              "false"
            ],
            "type": "string",
            "description": "true (default): each sample row carries the answer text (up to 8,000 characters) as well as a 300 character excerpt. false: the excerpt only.",
            "default": "true"
          },
          "openai_api_key": {
            "title": "OpenAI API key",
            "type": "string",
            "description": "Your own OpenAI key, needed only for the openai engine. Sent only to api.openai.com, never stored, logged, or written to a row."
          },
          "anthropic_api_key": {
            "title": "Anthropic API key",
            "type": "string",
            "description": "Your own Anthropic key, needed only for the anthropic engine. Sent only to api.anthropic.com, never stored, logged, or written to a row."
          },
          "perplexity_api_key": {
            "title": "Perplexity API key",
            "type": "string",
            "description": "Your own Perplexity key, needed only for the perplexity engine. Sent only to api.perplexity.ai, never stored, logged, or written to a row."
          },
          "gemini_api_key": {
            "title": "Gemini API key",
            "type": "string",
            "description": "Your own Google AI Studio key, needed only for the gemini engine. Sent only to generativelanguage.googleapis.com, never stored, logged, or written to a row."
          },
          "openai_model": {
            "title": "OpenAI model",
            "type": "string",
            "description": "Model for the openai engine, asked with web search on. Default gpt-5-mini.",
            "default": "gpt-5-mini"
          },
          "anthropic_model": {
            "title": "Anthropic model",
            "type": "string",
            "description": "Model for the anthropic engine, asked with web search on. Default claude-sonnet-5-5.",
            "default": "claude-sonnet-5-5"
          },
          "perplexity_model": {
            "title": "Perplexity model",
            "type": "string",
            "description": "Model for the perplexity engine. Default sonar.",
            "default": "sonar"
          },
          "gemini_model": {
            "title": "Gemini model",
            "type": "string",
            "description": "Model for the gemini engine, asked with Google Search grounding on. Default gemini-2.5-flash.",
            "default": "gemini-2.5-flash"
          },
          "max_charge_usd": {
            "title": "Max charge for this run (USD)",
            "type": "string",
            "description": "Optional. The run stops before any charge that would take it past this amount. Leave empty to rely only on the maximum cost per run you set in Apify, which the actor also honors."
          },
          "source_tag": {
            "title": "Source tag",
            "type": "string",
            "description": "Internal attribution tag. Leave empty."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}