Discover local businesses like restaurants, retail stores, service providers, and other physical locations using Google Maps data.
const restaurants = await canvas.places.find({
query: "Italian restaurants",
location: "Austin, TX",
radius: 5000,
minRating: 4.0,
limit: 50,
});
Parameters
What are you looking for?
Search query (e.g., "coffee shops", "dentists", "yoga studios").
Additional keywords to filter results.
Where?
Location to search around (e.g., "Austin, TX", "90210").
Search radius in meters (max 50,000).
Exact coordinates to search around.{ lat: 30.2672, lng: -97.7431 }
Filters
Minimum Google rating (1-5).
Minimum number of reviews.
Only return places with a website.
Only return places currently open.
How many?
Maximum number of places to return.
Returns
Array of places matching the criteria:
| Field | Type | Description |
|---|
name | string | Business name |
address | string | Full address |
phone | string | Phone number |
website | string | Website URL |
rating | number | Google rating (1-5) |
reviewCount | number | Number of reviews |
placeId | string | Google Place ID |
types | string[] | Business types |
hours | object | Operating hours |
priceLevel | number | Price level (1-4) |
Examples
Find Restaurants
const restaurants = await canvas.places.find({
query: "sushi restaurants",
location: "San Francisco, CA",
minRating: 4.0,
limit: 25,
});
Find Service Providers
const dentists = await canvas.places.find({
query: "dentist",
location: "Brooklyn, NY",
minRating: 4.5,
minReviews: 50,
limit: 20,
});
Find by Coordinates
const nearbyGyms = await canvas.places.find({
query: "gym fitness center",
coordinates: { lat: 40.7128, lng: -74.0060 },
radius: 2000,
limit: 10,
});
Find Open Businesses
const openCoffeeShops = await canvas.places.find({
query: "coffee shop",
location: "Seattle, WA",
openNow: true,
minRating: 4.0,
limit: 15,
});
Use Cases
Local Lead Generation
Find businesses in a specific area that might need your services:
const leads = await canvas.places.find({
query: "auto repair shop",
location: "Denver, CO",
minRating: 3.5,
hasWebsite: true,
limit: 100,
});
// Enrich with contact info
const enriched = await canvas.contacts.enrich({
people: leads.map(place => ({
company: place.name,
domain: new URL(place.website).hostname,
})),
});
Competitive Analysis
Map out competitors in a region:
const competitors = await canvas.places.find({
query: "yoga studio pilates",
location: "Austin, TX",
radius: 15000,
limit: 50,
});
// Research each competitor
for (const competitor of competitors) {
const analysis = await canvas.ai.research({
prompt: "Summarize this business's offerings and reviews",
data: competitor,
});
}
Territory Mapping
Find all businesses of a type across multiple locations:
const cities = ["Austin, TX", "Dallas, TX", "Houston, TX", "San Antonio, TX"];
const allPlaces = [];
for (const city of cities) {
const places = await canvas.places.find({
query: "commercial real estate agency",
location: city,
limit: 30,
});
allPlaces.push(...places);
}
return allPlaces;