照会を送信する
lookup.status が COMPLETED になるまで GET /v1/place-lookup/{id} で照会を読み取ってください。ほとんどの照会は2分以内に終わるので、5〜10秒ごとにポーリングしてください。照会は webhook を送りません。リクエストのスキーマは API リファレンスにあります。
リクエストフィールド
ほかのフィールドは、
webhook も含めて 400 VALIDATION_ERROR を返します。
照会の質問のしかた
各エンジンに2つの質問を送ります。ChatGPT、Gemini、Copilot には店舗を地図で表示するよう尋ね、2つ目の質問では住所を加えます。Google の検索結果ページでは店舗の場所を検索し、続いて店舗のピンの位置から店舗名を検索します。Naver AI Tab には店舗の場所を尋ね、続いて店舗名を尋ねます。KR の店舗には韓国語で質問します。ただし ChatGPT の2つ目の質問は英語の Show {name} on a map です。ChatGPT は英語で尋ねたほうが韓国の店舗のプレイスカードを多く表示するためです。place.address がない場合、2つ目の質問に住所を加えるエンジンは1つ目の質問を2回尋ねます。place.location がない場合、KR 以外では Google の2回目の検索に住所を加えます。結果の via[] に、実際に送った質問がそのまま入ります。
結果を読む
Canlis の照会を主なフィールドだけに絞ると、次のようになります。found は false です。
engines[]
record
issues
フリーダイヤルのように、チェーンのすべての支店が載せる番号は比べません。
summary と credits
lookup.status はすべてのエンジンが終わるまでは PROCESSING、終わると COMPLETED です。結果は読み取るたびに保存された回答から判定し直され、照会はタスクの完了後24時間読み取れます。
照会を再送信する
各質問は、キーが{lookup id}:{engine}:{ask} のタスクです。例: canlis-2026-10:GEMINI:2。同じリクエストを同じ idempotencyKey で再送信すると、既存のタスクを返し、クレジット不足で拒否された質問など、まだタスクのない質問を送ります。同じ id で別の店舗、国、エンジンの組み合わせを送ると 409 RESOURCE_ALREADY_EXISTS を返し、何も作りません。後で同じ店舗をもう一度照会するときは、新しい idempotencyKey を使ってください。
プランの同時実行数
各質問はプランの同時実行数のタスク1つとして数えます。照会はプランに空きがある分だけ質問を始め、残りはtasks[] で status: "PENDING" として待ちます。
API_KEY_INACTIVE で FAILED になり、0クレジットです。クレジットと上限を参照してください。
エラーと課金
国の既定のエンジンすべてに尋ねる照会は10クレジットです。各質問がその分担分を払います。KR では10の質問それぞれに1クレジット、その他の国では8の質問それぞれに1.25クレジットです。エンジンを絞った照会は、送った質問の分だけ払います。各質問の価格は送信時に確保され、完了時に請求されます。失敗した質問は0です。クレジットと上限を参照してください。
送信時の拒否
すべての質問が拒否されると、最初の拒否がそのステータスのままレスポンスになり、何も作られません。例:
402 INSUFFICIENT_CREDITS、403 KEY_SCOPE_DENIED。一部の質問が受け付けられた場合、レスポンスは 200 で、拒否された質問は tasks[] に error を持ちます。
照会の読み取り
アカウントで使っていない id と、タスクが24時間を過ぎた照会には、GET /v1/place-lookup/{id} が 404 RESOURCE_NOT_FOUND を返します。失敗した質問は via[] に status: "FAILED" と、コードで始まる error を示します。例: ENGINE_NO_RESULT。コードはそのエンジンのタスクと同じで、始まる前に終わった待機中の質問は API_KEY_INACTIVE か INSUFFICIENT_CREDITS を持ちます。エラーを参照してください。
次のステップ
ChatGPT
ChatGPT が表示するプレイスカード、
map。バッチとグリッド
店舗の周りのグリッドの各地点から同じプロンプトを尋ねます。