ChangelogImproved

Now supporting mainland China on ChatGPT, Gemini and Google

Answers
An API request asking ChatGPT 附近有什么药店? with country CN and the coordinates of 王府井 as location, next to the answer listing nearby pharmacies and their distances

Set country to CN or HK on CHATGPT, GEMINI and GOOGLE tasks to get the answers users in mainland China and Hong Kong see.

What changed

  • Mainland China on CHATGPT tasks: send country: "CN" and ChatGPT answers the way it answers a user in mainland China, in Beijing by default.
  • Hong Kong on CHATGPT tasks: send country: "HK" and ChatGPT answers the way it answers a user in Hong Kong, in Central (中環) by default.
  • Mainland China on GEMINI tasks: send country: "CN" and Gemini answers the way it answers a user in mainland China, in Beijing by default.
  • Mainland China on GOOGLE tasks: send country: "CN" to get the AI Overview Google shows a user in mainland China, in Beijing by default.
  • A precise point in either market with payload.location, such as the coordinates of 王府井 in Beijing or 旺角 in Hong Kong. The result returns it as location.

How it works

Each CN or HK task asks ChatGPT as a user whose device is in that market: in Beijing or Central, or at the place you set in payload.location. ChatGPT answers questions about nearby places for that point. Asked 附近有什么药店? from 王府井, it listed six pharmacies 312 to 938 metres away and cited Baidu Maps.

GEMINI tasks for CN ask Gemini from a device at the same point. Asked 附近有什么药店? with no location, Gemini named pharmacies around 前门 in Beijing, 400 to 650 metres away, with Google Maps links in all 11 production checks. From 王府井, the nearest was 350 metres away.

GOOGLE tasks for CN open Google the way users in mainland China reach it: Google’s international results (gl=us), from a device in Beijing or at your payload.location. The AI Overview and the organic results both come from that page. In production, all 7 questions asked in Simplified Chinese about mobile payment, food delivery, savings, phones, e-bikes, online shopping and sights came back with a Simplified Chinese AI Overview for the mainland: 手机支付用哪个好? named 微信支付 and 支付宝, and 外卖软件用哪个最好? named 美团 and 饿了么. Asked 附近有什么药店?, the AI Overview listed pharmacies in Beijing’s Xicheng district; from 王府井, it listed pharmacies on 王府井大街. AIMODE tasks answer CN for the mainland in Simplified Chinese as well.

For questions about the market as a whole, write the prompt in the market’s language. In Simplified Chinese, ChatGPT answered questions about savings rates, food delivery and mobile payment for the mainland market in 42 of 45 tests, naming 美团, 淘宝闪购, 京东外卖, 支付宝, 微信支付 and mainland banks; the other 3 first asked which region the user meant. Gemini answered all 23 questions about mobile payment, savings and sights for the mainland, and named 美团 and 饿了么 first in all 11 food delivery answers; 8 of them also mentioned apps used abroad, such as DoorDash. In Cantonese, ChatGPT answered 外賣app邊個最好? with Hong Kong’s apps, Keeta and foodpanda.

payload.location takes a point inside the task’s market, mainland China for CN and Hong Kong for HK, as latitude and longitude in decimal degrees. The result carries the same point as location whenever you send one.

The examples below are CHATGPT tasks. For Gemini, set taskType to GEMINI. For Google AI Overviews, set it to GOOGLE and send the question as payload.query.

Where it helps

  • Track how ChatGPT, Gemini and Google AI Overviews recommend your brand to consumers in mainland China, with prompts in Simplified Chinese.
  • Compare the apps, banks and stores each engine names in mainland China and Hong Kong for the same question, asked in each market’s language.
  • Check which stores, restaurants or clinics the engines suggest around each of your locations in mainland China and Hong Kong.

Send a request

Send the request with your API key in the Authorization header.

curl -X POST https://api.querying.ai/v1/async/task \
  -H "Authorization: Bearer $QUERYING_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "taskType": "CHATGPT",
    "payload": {
      "prompt": "附近有什么药店?",
      "country": "CN",
      "location": { "latitude": 39.90695, "longitude": 116.40528 }
    }
  }'

Request fields

taskTypestringRequired
The engine to run, such as CHATGPT or GOOGLE.
payload.promptstringRequired
The question, written the way a user types it into the chat. Up to 100,000 characters.
payload.countrystring
Two-letter country code of the market to ask from, such as US, KR or JP. Default US.
payload.locationobject
A point inside country, as latitude (-90 to 90) and longitude (-180 to 180) in decimal degrees, such as {"latitude": 37.4979, "longitude": 127.0276}. The engine answers as a user standing there. For CHATGPT, GEMINI, GOOGLE, AIMODE and GOOGLE_SERP.
webhook.urlstring
An HTTPS address on your server. The finished task is posted there the moment it completes.
idempotencyKeystring
Your own ID for the request. Each key creates one task per account, so a retried send stays a single task.

Response

A finished task looks like this, trimmed for length.

JSON
{
  "success": true,
  "task": {
    "id": "6e6625b6-2d91-4f17-88a5-9b53df805960",
    "taskType": "CHATGPT",
    "status": "COMPLETED",
    "createdAt": "2026-10-03T17:25:13.462Z"
  },
  "credits": { "creditsToCharge": 2, "creditsCharged": 2 },
  "response": {
    "text": "你附近目前有这些药店:\n\n- 低价药房顺鸿堂药店 — 约 **354 米**\n- 正义药店 — 约 **312 米**\n- 龙华康健大药房 — 约 **514 米**\n…",
    "sources": [
      {
        "position": 1,
        "url": "https://map.baidu.com/mobile/webapp/place/list/…",
        "label": "百度地图",
        "attribution": "map.baidu.com"
      }
    ],
    "searchQueries": ["北京 东城区 附近 药店 营业时间"],
    "location": { "latitude": 39.90695, "longitude": 116.40528 }
  }
}
task.statusstring
QUEUED, PROCESSING, then COMPLETED with the answer or FAILED with error.
credits.creditsChargedinteger
Credits charged for the finished task. A failed task charges 0.
response.textstring
The answer as plain text.
response.locationobject
The point the answer used, as you sent it: latitude and longitude.
response.sourcesarray
The pages the answer cites, in the engine’s order, each with position, url and label.
response.searchQueriesarray
The web searches the engine ran to write the answer.

Receive the result

The request returns the task right away with status QUEUED. Poll GET /v1/async/task/{id} until status is COMPLETED or FAILED, or add webhook.url and the finished task arrives at your server with the same task, credits and response. Results stay available for 24 hours after a task finishes.

curl https://api.querying.ai/v1/async/task/$TASK_ID \
  -H "Authorization: Bearer $QUERYING_API_KEY"

Pricing

A CN or HK task costs the same as any task on its engine, per completed task: 2 credits for ChatGPT, 1 credit for Gemini and 2 credits for Google AI Overviews.

More updates

Stay in the loop

Get new product updates in your inbox.

RSS feed