AnswerLine Start free

Docs /

Coverage and limits

Engines

The API serves ChatGPT, Gemini, Perplexity, Copilot, Grok, Google AI Mode, Google Search, and Google News.

Engine status

GET /v1/engines lists each engine you can call, whether it is down or up now, and how many of its newest finished requests answered: successRate over everyone's, yourSuccessRate over your own. windowRequests says how many requests each rate reads, and yourRequests how many of yours stand behind your rate. A rate with no request behind it is 100, since nothing failed. A request that failed because of the request itself, such as an invalid payload, is not counted. The call is free.

{
  "windowRequests": 30,
  "engines": [
    { "taskType": "CHATGPT", "name": "ChatGPT", "status": "up", "successRate": 96.7, "yourSuccessRate": 100, "yourRequests": 12 }
  ]
}

An engine is down from the moment almost none of everyone's recent requests answer until most of its newest ones answer again: the same condition as the outage emails. To hear of each change, set an engine status webhook (see Webhooks).

Countries

country takes an ISO 3166-1 alpha-2 code. GET /v1/countries?model=<engine> returns the list an engine serves. A country absent from an engine's list is refused with a 400.

EngineCountries
ChatGPT213 countries, plus US states
Gemini213 countries, plus US states
PerplexityAny country
CopilotAny country
GrokAny country
Google AI Mode213 countries, down to the city
Google Search213 countries, down to the city
Google News71 countries

Google News serves the 71 countries with a Google News edition: Argentina, Australia, Austria, Bangladesh, Belgium, Botswana, Brazil, Bulgaria, Canada, Chile, China, Colombia, Cuba, Czechia, Egypt, Estonia, Ethiopia, Finland, France, Germany, Ghana, Greece, Hong Kong SAR China, Hungary, India, Indonesia, Ireland, Israel, Italy, Japan, Kenya, Latvia, Lebanon, Lithuania, Malaysia, Mexico, Namibia, Netherlands, New Zealand, Nigeria, Norway, Pakistan, Peru, Philippines, Poland, Portugal, Romania, Russia, Saudi Arabia, Senegal, Serbia, Singapore, Slovakia, Slovenia, South Africa, South Korea, Spain, Sweden, Switzerland, Taiwan, Tanzania, Thailand, Türkiye, Uganda, Ukraine, United Arab Emirates, United Kingdom, United States, Venezuela, Vietnam, and Zimbabwe.

US states

Every engine accepts state, a two-letter US state code such as CA. GET /v1/states?country=US lists the codes: the 50 states and the District of Columbia (DC). Without country, a state implies "US"; with any other country it is refused with a 400, and nothing is billed.

ChatGPT and Gemini answer from inside the state, as a person there sees it, in all 50 states and DC. Every other engine accepts state and answers for the whole US, the same as a request without it. ChatGPT and Gemini answer a US request that names no state as a person in California sees it. result.provenance.requestedState echoes the state a request named.

State targeting is best-effort: it steers the market the answer is taken from, not a coordinate, and engines localize by signals beyond the address.

Targeting fields per engine

FieldValuesEnginesNotes
countryISO 3166-1 alpha-2Every engineOptional on Google Search, Google News and Google AI Mode; required on the rest.
stateTwo-letter code, e.g. CAEvery engineImplies country "US"; with another country it is a 400. See US states for where it is answered from.
glISO 3166-1 alpha-2, e.g. usGoogle Search, Google News, Google AI ModeGoogle's name for country, an alias of the same geography; sending both with different values is a 400.
locationFree-form place, e.g. Austin,Texas,United StatesGoogle Search, Google AI ModeCity-level targeting.
uuleLocation-name UULE (w+CAIQICI…)Google Search, Google AI ModeA pre-built UULE instead of a location name; mutually exclusive with location. The coordinate form (a+…) is refused with a 400.
hlInterface language, e.g. frGoogle Search, Google News, Google AI ModeThe UI language the answer is taken in. Without it, the country's own language.

Google News takes country (or gl), state and hl, not location. Google Search and Google AI Mode take a city by location or uule, the interface language by hl, and device. Without location or uule, they are localized to the requested country.

When a request cannot be placed

A request for a country absent from the engine's list, or with a field the engine does not take, is refused with a 400. A request that cannot be placed once accepted fails with 502 EXTERNAL_SERVICE_ERROR. Neither is charged. Retries of a 400 do not help: pick a listed country or drop the field.