One API for every AI answer engine

Send a prompt and an engine — get back exactly what a fresh user would see. Signed out, in-region, structured JSON.

ChatGPT
Gemini
Perplexity
Google AI Overviews
Google AI Mode
Naver

2,000 credits included · no card required

Every engine, one API — and you can see who's up

6 answer surfaces, across regions, at scale. Status is measured, not asserted: an engine under repair says so instead of showing a green light it hasn't earned.

ChatGPTLive
GeminiLive
PerplexityLive
Google AI OverviewsLive
Google AI ModeLive
NaverLive

Why teams pick querying.ai

Calling each provider's API yourself answers a different question than the one your users asked.

The answer a real user sees

A provider's API and its consumer app don't say the same thing. We drive the consumer surface itself, signed out, exactly as a first-time visitor arrives at it — so a result is what that visitor would actually have been told, not an API's sanitised echo.

Localised, per country

Set a country and the task runs from an exit that lives there — what Seoul is told is not what New York is told. Can't serve a region? The submission is rejected up front, never answered from the wrong place.

Parsed, not scraped

Every response comes back structured — the answer text, the sources it cited, its timing — so you read JSON instead of maintaining a scraper that someone else's redesign will quietly break.

One task shape, every engine

ChatGPT, Gemini, Perplexity, Google AI Overviews, Google AI Mode and Naver behind one endpoint. Change taskType; the rest of your call stays exactly the same.

Submit a task. The answer comes to you.

Every task is asynchronous, because a real engine takes seconds to answer. Post it, get an id back, and the result arrives at your webhook — the answer text, the sources it cited and its timing, as JSON. Or poll for it instead.

01You submit a task
curl -X POST https://api.querying.ai/v1/async/task \
  -H "Authorization: Bearer vt_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "taskType": "GEMINI",
    "payload": { "prompt": "best wireless earbuds 2026" },
    "webhook": { "url": "https://yours.app/hooks/querying" }
  }'
02Your webhook receives
{
  "task": {
    "id": "8f2c1e40-…",
    "taskType": "GEMINI",
    "status": "COMPLETED",
    "createdAt": "2026-07-17T04:12:00.000Z"
  },
  "credits": { "creditsToCharge": 12, "creditsCharged": 12 },
  "response": {
    "text": "The best wireless earbuds in 2026 are …",
    "sources": [
      { "position": 1,
        "url": "https://example.com/review",
        "label": "Best earbuds, reviewed" }
    ],
    "timing": { "totalMs": 7400 }
  }
}

Retried five times with backoff if your endpoint is down. Read the docs ↗

Pay for size, not for surprises

$1 buys 2,000 credits on every plan — the plans differ in how much you get, never in what a task costs. Failed tasks are refunded, so an engine outage is not your bill.

Basic
$29/month
58,000 credits included

A single product's tracking, or a build you're still shaping.

19,333–58,000 tasks / month
  • 5 concurrent tasks
  • Every engine we serve
  • Every region we serve
  • Webhooks + polling
  • Email support
Max
$749/month
1,498,000 credits included

An agency or platform running many brands at once.

499,333–1,498,000 tasks / month
  • 50 concurrent tasks
  • Everything in Pro
  • Usage review on request
  • Priority support
Enterprise
Custom
Volume pricing

Committed volume, invoicing, and terms that fit procurement.

Talk to us
Negotiated
  • Everything in Max
  • Custom engine mix
  • Invoice billing
  • Shared support channel

Task estimates vary by engine because each engine uses 1–3 credits.

See what a credit buys, per engine →