Expanded Limits, Across all tiers - Our Gift to you! Learn more →

AlterLab
SearchResearchPricingComparePlaygroundBlogDocsChangelog
    AlterLabAlterLab
    PricingComparePlaygroundBlogDocsChangelog
    IntroductionQuickstartInstallationYour First Request
    REST APICrawl APIMap APISearch APIResearch APINewSERP APINewExtract APIAIJob PollingDomain StatsNewGeocode APINewNews APIBatch ResultsNewAPI KeysSessions APINewEnterprise APIEnterprise
    AccountAutoAI VisibilityAutoAlertsAutoAuthAutoBillingAutoCrawlAutoExtractAutoIntegrationsAutoKeysAutoMapAutoMonitorsAutoOrganizationsAutoResearch SchedulesAutoRunsAutoSchedulesAutoScrapeAutoSearchAutoSearch SchedulesAutoSessionsAutoUser WebhooksAutoV1 EndpointsAutoAffiliatesAutoAgentAutoAgent OnboardingAutoAgent VisibilityAutoAnalyticsAutoApprovalsAutoArtifactsAutoAttributionAutoB2BAutoBatchAutoBeta FeaturesAutoBlogAutoBuyerAutoChatAutoConnectionsAutoConnectorsAutoContact ListsAutoCreatorAutoCross SellAutoDashboardAutoDefaultsAutoDomainsAutoEmail PreferencesAutoFcAutoHandsAutoHealthAutoJobsAutoListingsAutoMaintenanceAutoNewsAutoOauthAutoOauth GrantsAutoPage InspectAutoPlatformAutoPresetsAutoPricingAutoPrivacyAutoPublicAutoPublic PagesAutoReferralAutoReferralsAutoReportsAutoResearchAutoSecretsAutoSerpAutoSSOAutoStorefrontsAutoSupportAutoTemplatesAutoToolsAutoTrackAutoUsageAutoUsage TagsAutoUserAutoWorkflowsAutoWorkspacesAutoWebhooksAuto
    OverviewPythonNode.jsCLI
    Guides OverviewJavaScript RenderingBrowser ActionsOutput FormatsPDF & OCRCachingWebhooksJSON Schema FilteringWebSocket Real-TimeBring Your Own ProxyProSticky SessionsProAuthenticated ScrapingNewHTTP Methods & BodiesNewStructured ExtractionAIWeb SearchAgent and RAG GroundingResearch JobsAgent RunsSite MappingWeb CrawlingBatch ScrapingSchedulerData MarketplaceSelling DataAgent OnboardingEmbeddingsKeyword IdeasAI VisibilityWorkflowsChange DetectionCloud Storage ExportSpend LimitsOrganizations & TeamsScrape TemplatesCustom ConnectorsSecretsContact ListsPlatform Sub-AccountsReferrals & AffiliatesAlerts & NotificationsExtraction ProfilesAIBYOK ExtractionAIOAuth2 Machine-to-MachineSupport & TicketsUnsupported Targets
    Tutorials OverviewStructured ExtractionAIE-commerce ScrapingNews MonitoringPrice MonitoringMulti-Page CrawlingMonitoring DashboardAI Agent / MCPMCPAI Research AgentAISite CrawlingData Pipeline to Cloud
    E-commerceLead GenerationChange MonitoringRAG & AI PipelinesAIResearch
    Reference OverviewPricingRate LimitsReliabilityReliability ContractError CodesChangelogVersioning
    Migrations OverviewFrom FirecrawlFrom ApifyFrom ScrapingBee / ScraperAPIFrom Crawl4AIFrom SpiderSearch to SERPFirecrawl v0 API ReferenceLegacy
    OverviewMCP ServerAIn8n NodeLangChainAICrewAIAILlamaIndexAISupabaseChrome ExtensionSoon
    PlaygroundPricingStatus

    Up to 5,000 free requests · No credit card

    API Reference
    Auto-generated

    Ai Visibility

    API reference for ai visibility endpoints.

    Auto-generated

    This page was generated from the OpenAPI spec. Runmake generate-docs to refresh after spec changes.

    POST /api/v1/ai-visibility/check

    POST
    /api/v1/ai-visibility/check

    Check brand visibility in AI answers (logged-out engines only)

    Parameters

    NameTypeRequiredDescription
    promptsstring[]
    Required
    Prompts
    brandstring
    Required
    Brand
    competitorsstring[]OptionalCompetitors
    enginesstring[]
    Required
    Engines
    countrystringOptionalcountry
    runs_per_promptintegerOptionalRuns Per PromptDefault: 1
    brand_domainsstring[]OptionalBrand Domains
    quote_onlybooleanOptionalQuote OnlyDefault: False
    hard_cap_microcentsintegerOptionalhard_cap_microcents

    Request Example

    Bash
    curl -X POST https://api.alterlab.io/api/v1/ai-visibility/check \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "prompts": [],
        "brand": "example_brand",
        "engines": []
      }'

    Response Example

    JSON
    {
      "run_id": "example",
      "brand": "example",
      "status": "example",
      "answers": [],
      "aggregates": [],
      "total_cost_microcents": 0
    }

    POST /api/v1/ai-visibility/quote

    POST
    /api/v1/ai-visibility/quote

    Quote an AI visibility check without running or billing it

    Parameters

    NameTypeRequiredDescription
    promptsstring[]
    Required
    Prompts
    brandstring
    Required
    Brand
    competitorsstring[]OptionalCompetitors
    enginesstring[]
    Required
    Engines
    countrystringOptionalcountry
    runs_per_promptintegerOptionalRuns Per PromptDefault: 1
    brand_domainsstring[]OptionalBrand Domains
    quote_onlybooleanOptionalQuote OnlyDefault: False
    hard_cap_microcentsintegerOptionalhard_cap_microcents

    Request Example

    Bash
    curl -X POST https://api.alterlab.io/api/v1/ai-visibility/quote \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "prompts": [],
        "brand": "example_brand",
        "engines": []
      }'

    Response Example

    JSON
    {
      "brand": "example",
      "runs_per_prompt": 0,
      "quote": "example",
      "hard_cap_microcents": "example",
      "within_hard_cap": true
    }

    GET /api/v1/ai-visibility/runs/{run_id}

    GET
    /api/v1/ai-visibility/runs/{run_id}

    Status and billing of an AI visibility run

    Parameters

    NameTypeRequiredDescription
    run_idstring
    Required
    run_id

    Request Example

    Bash
    curl -X GET https://api.alterlab.io/api/v1/ai-visibility/runs/<run_id> \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "run_id": "example",
      "brand": "example",
      "status": "example",
      "answers_total": 0,
      "answers_success": 0,
      "billing": "example"
    }

    GET /api/v1/ai-visibility/runs/{run_id}/results

    GET
    /api/v1/ai-visibility/runs/{run_id}/results

    Stored answers of an AI visibility run

    Parameters

    NameTypeRequiredDescription
    run_idstring
    Required
    run_id

    Request Example

    Bash
    curl -X GET https://api.alterlab.io/api/v1/ai-visibility/runs/<run_id>/results \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "run_id": "example",
      "brand": "example",
      "status": "example",
      "answers": [],
      "aggregates": [],
      "total_cost_microcents": 0
    }

    POST /api/v1/ai-visibility/schedules

    POST
    /api/v1/ai-visibility/schedules

    Create a recurring AI visibility check

    Parameters

    NameTypeRequiredDescription
    namestring
    Required
    Name
    frequency"daily" | "weekly"OptionalFrequencyDefault: weekly
    configobject
    Required
    AIVisibilityCheckRequest
    hard_cap_microcentsintegerOptionalhard_cap_microcents

    Request Example

    Bash
    curl -X POST https://api.alterlab.io/api/v1/ai-visibility/schedules \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "example_name",
        "frequency": "...",
        "config": "..."
      }'

    Response Example

    JSON
    {
      "status": "ok"
    }

    GET /api/v1/ai-visibility/schedules

    GET
    /api/v1/ai-visibility/schedules

    List AI visibility schedules

    Parameters

    NameTypeRequiredDescription
    limitintegerOptionallimitDefault: 20
    offsetintegerOptionaloffsetDefault: 0

    Request Example

    Bash
    curl -X GET https://api.alterlab.io/api/v1/ai-visibility/schedules \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "schedules": [],
      "total": 0
    }

    GET /api/v1/ai-visibility/schedules/{schedule_id}

    GET
    /api/v1/ai-visibility/schedules/{schedule_id}

    Get an AI visibility schedule

    Parameters

    NameTypeRequiredDescription
    schedule_idstring
    Required
    schedule_id

    Request Example

    Bash
    curl -X GET https://api.alterlab.io/api/v1/ai-visibility/schedules/<schedule_id> \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "id": "example",
      "name": "example",
      "frequency": "example",
      "config": {},
      "hard_cap_microcents": "example",
      "is_active": true
    }

    PATCH /api/v1/ai-visibility/schedules/{schedule_id}

    PATCH
    /api/v1/ai-visibility/schedules/{schedule_id}

    Update an AI visibility schedule

    Parameters

    NameTypeRequiredDescription
    schedule_idstring
    Required
    schedule_id
    namestringOptionalname
    frequency"daily" | "weekly"Optionalfrequency
    configobjectOptionalAIVisibilityCheckRequest
    hard_cap_microcentsintegerOptionalhard_cap_microcents

    Request Example

    Bash
    curl -X PATCH https://api.alterlab.io/api/v1/ai-visibility/schedules/<schedule_id> \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "id": "example",
      "name": "example",
      "frequency": "example",
      "config": {},
      "hard_cap_microcents": "example",
      "is_active": true
    }

    DELETE /api/v1/ai-visibility/schedules/{schedule_id}

    DELETE
    /api/v1/ai-visibility/schedules/{schedule_id}

    Delete an AI visibility schedule (history is kept)

    Parameters

    NameTypeRequiredDescription
    schedule_idstring
    Required
    schedule_id

    Request Example

    Bash
    curl -X DELETE https://api.alterlab.io/api/v1/ai-visibility/schedules/<schedule_id> \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "status": "ok"
    }

    POST /api/v1/ai-visibility/schedules/{schedule_id}/pause

    POST
    /api/v1/ai-visibility/schedules/{schedule_id}/pause

    Pause an AI visibility schedule

    Parameters

    NameTypeRequiredDescription
    schedule_idstring
    Required
    schedule_id

    Request Example

    Bash
    curl -X POST https://api.alterlab.io/api/v1/ai-visibility/schedules/<schedule_id>/pause \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "id": "example",
      "name": "example",
      "frequency": "example",
      "config": {},
      "hard_cap_microcents": "example",
      "is_active": true
    }

    POST /api/v1/ai-visibility/schedules/{schedule_id}/resume

    POST
    /api/v1/ai-visibility/schedules/{schedule_id}/resume

    Resume a paused AI visibility schedule

    Parameters

    NameTypeRequiredDescription
    schedule_idstring
    Required
    schedule_id

    Request Example

    Bash
    curl -X POST https://api.alterlab.io/api/v1/ai-visibility/schedules/<schedule_id>/resume \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "id": "example",
      "name": "example",
      "frequency": "example",
      "config": {},
      "hard_cap_microcents": "example",
      "is_active": true
    }

    POST /api/v1/ai-visibility/schedules/{schedule_id}/run

    POST
    /api/v1/ai-visibility/schedules/{schedule_id}/run

    Run an AI visibility schedule now (next_run_at is unchanged)

    Parameters

    NameTypeRequiredDescription
    schedule_idstring
    Required
    schedule_id

    Request Example

    Bash
    curl -X POST https://api.alterlab.io/api/v1/ai-visibility/schedules/<schedule_id>/run \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "outcome": "example",
      "run_id": "example"
    }

    GET /api/v1/ai-visibility/schedules/{schedule_id}/runs

    GET
    /api/v1/ai-visibility/schedules/{schedule_id}/runs

    Run history of an AI visibility schedule

    Parameters

    NameTypeRequiredDescription
    schedule_idstring
    Required
    schedule_id
    limitintegerOptionallimitDefault: 20
    offsetintegerOptionaloffsetDefault: 0

    Request Example

    Bash
    curl -X GET https://api.alterlab.io/api/v1/ai-visibility/schedules/<schedule_id>/runs \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "runs": [],
      "total": 0
    }

    GET /api/v1/ai-visibility/schedules/{schedule_id}/trend

    GET
    /api/v1/ai-visibility/schedules/{schedule_id}/trend

    Mention rate and share of voice over time for a schedule

    Parameters

    NameTypeRequiredDescription
    schedule_idstring
    Required
    schedule_id
    daysintegerOptionaldaysDefault: 30
    engine"google_ai_overview" | "google_ai_mode" | "chatgpt" | "perplexity" | "gemini" | "copilot"Optionalengine

    Request Example

    Bash
    curl -X GET https://api.alterlab.io/api/v1/ai-visibility/schedules/<schedule_id>/trend \
      -H "X-API-Key: YOUR_API_KEY" \
      -H "Content-Type: application/json"

    Response Example

    JSON
    {
      "schedule_id": "example",
      "brand": "example",
      "engine": "example",
      "days": 0,
      "points": []
    }
    Last updated: June 2026

    On this page