API para Google Maps

API para Google Maps: Contatos

Busque empresas no Google Maps e enriqueça cada resultado com dados de contato (e-mails, telefones e perfis sociais extraídos dos sites delas), até 20 registros por requisição.

POST/v1/run/maps.contacts
Disponibilidade
98,92%
30d · 556 chamadas
Requisições
556
30d · semanal, últimas 12 sem.
Resposta
56,0s
mediana · 30d

Teste

Faça sua primeira requisição

requireFieldsarray
Opcional; se omitido, o roteamento não muda e a fonte mais barata atende. Informe os campos de saída que esta requisição precisa poder retornar, por exemplo `city` ou `postalCode`, e ela só será atendida por uma fonte que retorne todos eles. Os campos que você não informar continuam sendo retornados sempre que a fonte que atende os tiver. Isso pode aumentar o seu preço: quando a fonte mais barata não consegue retornar um campo informado, uma fonte mais cara atende, e você recebe a cotação e é cobrado pelo preço dela. Um campo informado ainda pode vir ausente em uma empresa que realmente não o tenha. Se você informar uma combinação de campos que nenhuma fonte retorna sozinha, a requisição é recusada como entrada inválida, sem cobrança.
Abrir em
Obter chave grátis
Resposta de exemplo
Execuções grátis retornam só os primeiros 3 resultados. Recarregue uma chave para receber a resposta completa.
{
  "data": {
    "items": [
      {
        "address": "123 Main St",
        "categories": [
          "example"
        ],
        "category": "general",
        "cid": "a1b2c3d4",
        "city": "San Francisco",
        "countryCode": "US",
        "domain": "example.com",
        "emails": [
          "alex@example.com"
        ],
        "facebooks": [
          "example"
        ],
        "image": "https://example.com/image.jpg",
        "instagrams": [
          "example"
        ],
        "language": "en",
        "latitude": 37.7749,
        "linkedIns": [
          "https://example.com/page"
        ],
        "longitude": -122.4194,
        "name": "Example title",
        "neighborhood": "example",
        "phone": "+1 555-0142",
        "phones": [
          "+1 555-0142"
        ],
        "placeId": "a1b2c3d4",
        "postalCode": "94107",
        "rank": 1,
        "rating": 4.6,
        "reviewCount": 12500,
        "state": "CA",
        "street": "123 Main St",
        "tiktoks": [
          "example"
        ],
        "twitters": [
          "example"
        ],
        "url": "https://example.com/page",
        "website": "https://example.com/page",
        "youtubes": [
          "example"
        ]
      }
    ]
  },
  "found": true,
  "reason": "not_found"
}
Interface da resposta
interface MapsContactsResponse {
  data: {
    items: {
      address?: string;
      categories?: string[];
      category?: string;
      cid?: string;
      city?: string;
      countryCode?: string;
      domain?: string;
      emails?: string[];
      facebooks?: string[];
      image?: string;
      instagrams?: string[];
      language?: string;
      latitude?: number;
      linkedIns?: string[];
      longitude?: number;
      name: string;
      neighborhood?: string;
      phone?: string;
      phones?: string[];
      placeId: string;
      postalCode?: string;
      rank?: number;
      rating?: number;
      reviewCount?: number;
      state?: string;
      street?: string;
      tiktoks?: string[];
      twitters?: string[];
      url: string;
      website?: string;
      youtubes?: string[];
    }[];
  } | null;
  found: boolean;
  reason?: "not_found";
}

Referência completa de parâmetros e resposta - todos os campos, tipos e exemplos deste endpoint.

Referência

Requisição, resposta e preço

Última verificação em 2026-09-29 · disponibilidade e latência medidas em 30d
POST /v1/run/maps.contacts
curl -X POST https://api.getanyapi.com/v1/run/maps.contacts \
  -H "Authorization: Bearer $ANYAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":3,"location":"Austin, TX","placeMinimumStars":"four","query":"coffee shop","website":"withWebsite"}'
CampoTipoValor de exemplo
Corpo da requisição
locationstring"Austin, TX"Localização da busca em texto livre, de preferência cidade e país (ex.: Denver, USA).
querystring"coffee shop"O que você digitaria na barra de busca do Google Maps (ex.: dentist).
categoryFilterWordsarrayLista opcional de nomes de categoria de local do Google Maps a manter; os resultados ficam limitados a locais cuja categoria corresponda a um deles. Use os nomes de categoria em minúsculas, como aparecem no Google Maps (ex.: ["dentist", "orthodontist"]). Omita para incluir todas as categorias.
languagestringCódigo de idioma de duas letras para os resultados (ex.: en).
limitinteger3Número máximo de resultados a retornar (1-20, padrão 20).
placeMinimumStarsenum"four"Retorna apenas locais com pelo menos esta nota média: two (2+), twoAndHalf (2.5+), three (3+), threeAndHalf (3.5+), four (4+) ou fourAndHalf (4.5+). Locais sem avaliações são excluídos. Omita para não filtrar por nota.
requireFieldsarrayOpcional; se omitido, o roteamento não muda e a fonte mais barata atende. Informe os campos de saída que esta requisição precisa poder retornar, por exemplo `city` ou `postalCode`, e ela só será atendida por uma fonte que retorne todos eles. Os campos que você não informar continuam sendo retornados sempre que a fonte que atende os tiver. Isso pode aumentar o seu preço: quando a fonte mais barata não consegue retornar um campo informado, uma fonte mais cara atende, e você recebe a cotação e é cobrado pelo preço dela. Um campo informado ainda pode vir ausente em uma empresa que realmente não o tenha. Se você informar uma combinação de campos que nenhuma fonte retorna sozinha, a requisição é recusada como entrada inválida, sem cobrança.
websiteenum"withWebsite"Filtra locais conforme listem ou não um site: allPlaces (padrão), withWebsite (apenas locais que têm site) ou withoutWebsite (apenas locais sem site). O enriquecimento de contatos extrai e-mails e perfis sociais do site do local, então withWebsite mira leads que podem ser enriquecidos.
Resposta
dataobjectThe result wrapper, or null when nothing matched.
data.itemsobject[]Matching business records, each enriched with contact details scraped from the business website. Populated whenever the provider has data for the entity.
data.items[].addressstringFull formatted street address.
data.items[].categoriesstring[]Every Google Maps category listed for the business.
data.items[].categorystringPrimary business category.
data.items[].cidstringGoogle customer/place id (cid).
data.items[].citypode ser exigidostringCity the business is in.
data.items[].countryCodepode ser exigidostringTwo-letter country code.
data.items[].domainstringRegistrable domain of the business website.
data.items[].emailsstring[]Email addresses scraped from the business website.
data.items[].facebooksstring[]Facebook profile URLs found on the business website.
data.items[].imagestringPrimary business photo URL.
data.items[].instagramsstring[]Instagram profile URLs found on the business website.
data.items[].languagepode ser exigidostringTwo-letter language code of the listing Google served.
data.items[].latitudenumberLatitude of the business in decimal degrees.
data.items[].linkedInsstring[]LinkedIn profile URLs found on the business website.
data.items[].longitudenumberLongitude of the business in decimal degrees.
data.items[].namestringBusiness name. Populated whenever the provider has data for the entity.
data.items[].neighborhoodpode ser exigidostringNeighborhood the business is in.
data.items[].phonestringBusiness phone number in E.164 format, when listed on Google Maps.
data.items[].phonesstring[]Additional phone numbers scraped from the business website.
data.items[].placeIdstringGoogle Maps place id (stable identifier for the business). Populated whenever the provider has data for the entity.
data.items[].postalCodepode ser exigidostringPostal code of the business.
data.items[].rankintegerOne-based position of the business in the Google Maps result order.
data.items[].ratingnumberAverage star rating out of 5.
data.items[].reviewCountnumberTotal number of reviews.
data.items[].statepode ser exigidostringState or region the business is in.
data.items[].streetpode ser exigidostringStreet portion of the address.
data.items[].tiktoksstring[]TikTok profile URLs found on the business website.
data.items[].twittersstring[]X/Twitter profile URLs found on the business website.
data.items[].urlstringCanonical Google Maps URL for the business. Populated whenever the provider has data for the entity.
data.items[].websitestringThe business website URL, when listed.
data.items[].youtubesstring[]YouTube channel URLs found on the business website.
foundbooleanTrue when the search returned at least one matching business.
reason"not_found"Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.
Preço
Preço por requisiçãoUSDUS$ 0,00325
Preço /mil req.USDUS$ 3,25

Dúvidas frequentes

Sobre o endpoint Contatos da API para Google Maps

O endpoint Contatos da AnyAPI para Google Maps retorna dados de Google Maps em JSON normalizado com uma chamada POST para /v1/run/maps.contacts. Busque empresas no Google Maps e enriqueça cada resultado com dados de contato (e-mails, telefones e perfis sociais extraídos dos sites delas), até 20 registros por requisição. A AnyAPI distribui cada requisição entre 2 fontes, com failover automático quando uma falha. Custa a partir de US$ 3,25 por mil requisições, em dólares, sem assinatura e sem mínimo mensal. Nos últimos 30 dias, 98,9% das chamadas ao endpoint Contatos da API para Google Maps feitas pela AnyAPI tiveram sucesso, com tempo de resposta mediano de 56,0 segundos, em 556 chamadas medidas.

Custa a partir de US$ 3,25 por mil requisições, em dólares, sem assinatura e sem mínimo mensal. Você recarrega uma carteira em dólares e cada chamada desconta dela. Algumas requisições pagas pela carteira que falham geram cobranças de processamento, que repassamos pelo custo, sem margem; a resposta de erro mostra o valor cobrado.

Busque empresas no Google Maps e enriqueça cada resultado com dados de contato (e-mails, telefones e perfis sociais extraídos dos sites delas), até 20 registros por requisição. A resposta é JSON normalizado, com o mesmo envelope que todo endpoint da AnyAPI retorna, então processar um segundo endpoint é só trocar a URL, e nada mais.

Nos últimos 30 dias, 98,9% das chamadas ao endpoint Contatos da API para Google Maps feitas pela AnyAPI tiveram sucesso, com tempo de resposta mediano de 56,0 segundos, em 556 chamadas medidas. Estas são medições da própria AnyAPI sobre o tráfego que passa pelo gateway, recalculadas continuamente, e não uma meta de nível de serviço publicada.