ChangelogNew

Introducing Google Places

Google Places
Google Places with the GOOGLE_PLACES chip, the city Reno, Nevada, United States and the first three places for Reno attorney: Joey Gilbert Law, Viloria, Oliphant, Oster & Aman and Richard Harris Law Firm with their category, rating, review count and address

Get the places Google’s Places tab lists for a search in the city you choose, up to 100, with address, coordinates, phone, website and rating, for 1 credit per 20 places.

What you get

  • GOOGLE_PLACES: one task reads the list Google’s Places tab shows for your query, searched from the city you choose, up to 100 places.
  • places: each place with name, position and the page it came from, plus location (address, latitude and longitude), phoneNumber, url, mapsUrl, placeId, reviews with rating and count, category and the review quote Google shows.
  • pages: how many pages of 20 places the task read, the number it is charged for.

How it works

Send query and city, the city written the way Google names it, such as Reno, Nevada, United States. If your rank tracker already keeps Google’s uule value for a place, send it as uule and Google searches from that place. country sets the market, US by default.

Google shows 20 places a page. limit sets how many you want, from 1 to 100 (20 by default), and the task reads up to five pages in Google’s order. position keeps counting across pages, and a place Google repeats on a later page counts once. When Google’s list ends before your limit, you get every place it had.

The task checks the place Google searched from on every page, so all the places in one list come from the same city.

Where it helps

  • Track where your business ranks among every place Google lists for your category in your city, past the three places of the local pack.
  • Run the same query in each city you serve and compare who leads each market.
  • Put the Places list beside Google AI Overview and AI Mode answers to the same query and see which places the answers recommend.
  • Try it in the Playground: pick Google Places on the Search tab, type a city and choose up to 100 places.

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": "GOOGLE_PLACES",
    "payload": {
      "query": "Reno attorney",
      "city": "Reno, Nevada, United States",
      "limit": 100,
      "country": "US"
    }
  }'

Request fields

taskTypestringRequired
The engine to run, such as CHATGPT or GOOGLE.
payload.querystringRequired
The search query, written the way a user types it into the search box.
payload.citystring
The city to search from, written the way Google names it, such as Reno, Nevada, United States. Up to 100 characters. A task takes city or uule.
payload.uulestring
Google’s location value in its w+ form, the one rank trackers keep for each place. It goes to Google as sent.
payload.limitinteger
Places to return, 1 to 100. Default 20, one page of Google’s list.
payload.countrystring
Two-letter country code of the market to ask from, such as US, KR or JP. Default US.
webhook.urlstring
An HTTPS address on your server. The finished task is posted there the moment it completes.

Response

A finished task looks like this, trimmed for length.

JSON
{
  "success": true,
  "task": {
    "id": "…",
    "taskType": "GOOGLE_PLACES",
    "status": "COMPLETED",
    "createdAt": "…"
  },
  "credits": { "creditsToCharge": 5, "creditsCharged": 5 },
  "response": {
    "places": [
      {
        "name": "Joey Gilbert Law",
        "position": 1,
        "placeId": "ChIJcW7HSupAmYARRnrM6Ap0UtU",
        "location": {
          "address": "405 Marsh Ave, Reno, NV 89509",
          "latitude": 39.519216,
          "longitude": -119.815709
        },
        "phoneNumber": "(775) 210-1501",
        "url": "https://joeygilbertlaw.com/",
        "mapsUrl": "https://maps.google.com/?cid=15371476068373133894",
        "reviews": [
          { "rating": 4.4, "count": 381, "providerName": "Google" }
        ],
        "category": "Criminal justice attorney",
        "snippet": "Joey is knowledgeable, straightforward, and fights hard for his clients.",
        "page": 1
      },
      {
        "name": "Viloria, Oliphant, Oster & Aman L.L.P.",
        "position": 2,
        "placeId": "ChIJv8KkdMlAmYARmINKFMPLxbs",
        "location": {
          "address": "327 California Ave, Reno, NV 89509",
          "latitude": 39.520335,
          "longitude": -119.81519
        },
        "phoneNumber": "(775) 515-8480",
        "url": "https://www.renonvlaw.com/",
        "mapsUrl": "https://maps.google.com/?cid=13530444694224012184",
        "reviews": [
          { "rating": 4.6, "count": 117, "providerName": "Google" }
        ],
        "category": "Personal injury attorney",
        "snippet": "Tom’s work ethic and knowledge of the legal system is beyond reproach.",
        "page": 1
      },
      "…"
    ],
    "pages": 5,
    "city": "Reno, Nevada, United States"
  }
}
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.placesarray
The places in Google’s order: name, position counted across pages, the page it came from, and placeId, location, phoneNumber, url, mapsUrl, reviews, category and snippet when Google shows them.
response.pagesinteger
Pages of 20 places read, from 1 to 5. The task is charged for these pages.

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"

Errors

VALIDATION_ERRORHTTP 422
limit is outside 1 to 100, city is empty or longer than 100 characters, or city is sent with uule or location. details names the field.
MISSING_API_KEYHTTP 401
The Authorization header is missing, or its key is unknown, expired or revoked.
INSUFFICIENT_CREDITSHTTP 402
The balance is below the price of the task. Add credits or upgrade the plan, then send again.

Pricing

Each page of 20 places uses 1 credit, so 100 places use 5 credits. Submitting holds the credits your limit needs, and completion charges the pages read: a list that ends on page 2 uses 2 credits.

More updates

Stay in the loop

Get new product updates in your inbox.

RSS feed