# Google Maps Global 🗺️ Places & Reviews — $3/1K (`viralanalyzer/google-maps-global-scraper`) Actor

Scrape Google Maps businesses in ANY country. Extract name, address, phone, rating, reviews, category, postal code (ZIP/CEP), country and city. Search by keyword + city + country with lower-cost default proxy, automatic residential fallback and multi-language interface support.

- **URL**: https://apify.com/viralanalyzer/google-maps-global-scraper.md
- **Developed by:** [viralanalyzer](https://apify.com/viralanalyzer) (community)
- **Categories:** Lead generation, Marketing
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 place scrapeds

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## 🌍 Google Maps Scraper — Global Businesses + Reviews (Any Country)

> 🔗 [View on Apify Store](https://apify.com/viralanalyzer/google-maps-global-scraper) | 🇺🇸 English | [🇧🇷 Português](#português)

Scrape **Google Maps businesses in ANY country** with full details, reviews, ratings, and postal code extraction. Search by keyword + city + country, extract business information, and collect customer reviews with sentiment analysis.

### ✨ Features

- 🔍 **Search by keyword + city + country** — "restaurants Paris France", "dentistas Madrid España", "pizza Tokyo Japan"
- 🌐 **Global coverage** — works for any country with 11 interface languages (en, pt-BR, es, fr, de, it, ja, zh, ar, hi, ru)
- 📋 **Full business data** — Name, address, phone, rating, category, price level
- 📍 **Country + city detection** — ISO 3166-1 alpha-2 country code and city derived from payload, query, or address
- 📮 **Postal code extraction** — ZIP/CEP extracted from the Google Maps page payload with country-aware regex fallback (no external API needed)
- ⭐ **Review extraction** — Best-effort extraction of author, rating, text, date (see [Limitations](#limitations))
- 💬 **Sentiment analysis** — Score (-1.0 to 1.0) + label per review
- 🛡️ **Validated output** — Every output validated before delivery
- 🛰️ **Automatic residential fallback** — Retries with residential proxy automatically when Google returns stripped pages or zero results
- 💰 **Pay per business** — Only $3 per 1,000 businesses

### 🧭 Capabilities & Limits

| Discover by | Supported? | Notes |
|---|---|---|
| Keyword + city + country (`queries`) | ✅ Yes | Primary input, e.g. `restaurants Paris France` |
| Place ID / Maps URL list | ❌ No | Search queries only |
| Reviews | ⚠️ Best-effort | Business fields are reliable; review **text** is often stripped by Google |
| External ZIP API | ❌ No | Postal code comes from the Maps payload or the address |

### 📥 Input

| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| `queries` | string\[] | ✅ | — | Search queries ("keyword + city + country") |
| `maxPlaces` | integer | ❌ | 10 | Max businesses per query |
| `maxReviews` | integer | ❌ | 5 | Max reviews per business (0 = none) |
| `language` | string | ❌ | "en" | Interface language (en, pt-BR, es, fr, de, it, ja, zh, ar, hi, ru) |
| `region` | string | ❌ | "" | Optional country hint used as fallback for country detection |
| `enrichZipCode` | boolean | ❌ | true | Extract postal code from page payload + address |
| `proxyConfig` | object | ❌ | Apify Proxy | Proxy settings. Lower-cost proxy is the default; residential is used automatically as fallback |

#### Input Example

```json
{
  "queries": [
    "restaurants Paris France",
    "dentists Madrid Spain",
    "pizza Tokyo Japan",
    "hotels Berlin Germany"
  ],
  "maxPlaces": 10,
  "maxReviews": 5,
  "language": "en",
  "enrichZipCode": true
}
```

### 📤 Output

Every business includes these fields:

| Field | Type | Description |
|---|---|---|
| `business_name` | string | Business name |
| `place_id` | string | Google Maps Place ID |
| `address` | string | Full address |
| `zip_code` | string | Postal code (ZIP/CEP) |
| `postal_code` | string | Postal code (alias of zip\_code) |
| `country` | string | Detected country (ISO 3166-1 alpha-2) |
| `city` | string | Detected city |
| `phone` | string | Phone number |
| `rating` | number | Google rating (1.0-5.0) |
| `total_reviews` | number | Total review count |
| `category` | string | Business category |
| `price_level` | string | Price level ($, $$, $$$) |
| `url` | string | Google Maps URL |
| `website` | string | Business website |
| `reviews` | object\[] | Extracted reviews (see below) |

#### Review Fields

| Field | Type | Description |
|---|---|---|
| `author` | string | Reviewer name |
| `rating` | number | Review rating (1-5) |
| `text` | string | Review text |
| `date` | string | Review date |
| `sentiment_score` | number | Sentiment score (-1.0 to 1.0) |
| `sentiment_label` | string | very\_positive / positive / neutral / negative / very\_negative |
| `language` | string | Detected language (en, pt-BR, es, fr, de, it, ja, zh, ar, hi, ru) |
| `topics` | string\[] | Detected topics (food, service, price, etc.) |

#### Output Example

```json
{
  "business_name": "Le Comptoir du Relais",
  "place_id": "ChIJF7Y3Y7wC5kcR8LzW2GpM1qk",
  "address": "9 Carrefour de l'Odéon, 75006 Paris, France",
  "zip_code": "75006",
  "postal_code": "75006",
  "country": "FR",
  "city": "Paris",
  "phone": "+33 1 44 27 07 97",
  "rating": 4.6,
  "total_reviews": 1853,
  "category": "French restaurant",
  "price_level": "$$$",
  "url": "https://www.google.com/maps/place/...",
  "reviews": [
    {
      "author": "John Smith",
      "rating": 5,
      "text": "Best bistro in Paris, amazing duck confit!",
      "date": "1 month ago",
      "sentiment_score": 1.0,
      "sentiment_label": "very_positive",
      "language": "en",
      "topics": ["food"]
    }
  ]
}
```

### 📋 Use Cases

- **Market Research** — Map competitors in any city/country by category
- **Reputation Monitoring** — Track reviews and ratings over time
- **Lead Generation** — Extract business contact info (phone, address)
- **Expansion Analysis** — Compare ratings across cities and countries
- **Customer Insights** — Analyze review topics and sentiment

### ⚠️ Limitations

- **Review text extraction is best-effort.** Google Maps actively blocks automated review extraction with aggressive anti-bot measures. Business data (name, address, phone, rating, total review count, category) is extracted reliably. Individual review text may not always be available.
- **Total review count** is always extracted from the business page (e.g., "1,853 reviews") even when individual review text cannot be retrieved.
- **Geographic entities** (cities, regions) that appear in search results are automatically filtered out.
- **Postal code extraction** uses the Google Maps page payload first; if the payload does not expose it, a country-aware regex falls back to the address. Some addresses legitimately have no postal code — in that case `zip_code` is `null` (honest, never fabricated).
- **Country detection** is derived from the payload, the query, or the address. If your query mixes languages, prefer including the country name explicitly (e.g., "restaurants Paris France").

### ❓ FAQ

**Q: Does this need a Google API key?**
A: No! This actor works without any Google API credentials.

**Q: What proxy does it need?**
A: The default is the lower-cost Apify proxy. The actor automatically retries with residential proxy when Google starts returning stripped pages or zero results.

**Q: Can I search in any city in any country?**
A: Yes! Just use the format "keyword + city + country" in your queries.

**Q: Which languages are supported?**
A: 11 interface languages: en, pt-BR, es, fr, de, it, ja, zh, ar, hi, ru.

**Q: Why are reviews sometimes empty?**
A: Google Maps uses aggressive anti-bot measures that strip review content from automated browsers. Business data and total review counts are always extracted reliably.

**Q: Does it extract the postal code for every business?**
A: Best-effort, without any external API. When the payload or address exposes a postal code it is extracted; otherwise `zip_code` is `null`.

**Q: What sentiment labels are available?**
A: Five levels from very\_positive to very\_negative, based on review context.

### 💰 Pricing

**Pay Per Event + platform usage** (you pay compute, traffic and Apify proxy):

| Event | Cost |
|--------|------|
| `apify-actor-start` | $0.00005 (platform default; 1× per GB) |
| `place-scraped` | $0.003 per valid business ($3.00 / 1,000) |

**Examples**: 100 businesses = **$0.30** in events · 1,000 = **$3.00**, plus the run's CU/proxy on your invoice. Diagnostic rows are not charged.

### 🔗 Related Actors

- [CNPJ Enricher](https://apify.com/viralanalyzer/cnpj-enricher) — Enrich with company data
- [YouTube Fast Scraper](https://apify.com/viralanalyzer/youtube-fast-scraper) — YouTube video metrics
- [TikTok Viral Scanner](https://apify.com/viralanalyzer/tiktok-viral-scanner) — TikTok profile data
- [Instagram Keyword Search](https://apify.com/viralanalyzer/instagram-keyword-search-scraper) — posts by keyword
- [Instagram Transcript](https://apify.com/viralanalyzer/instagram-transcript-scraper) — native Reel captions
- [Instagram Reels Scraper](https://apify.com/viralanalyzer/instagram-reels-scraper) — Instagram metrics

### 📝 Changelog

#### v1.1 (Current)

- Incremental `place-scraped` charge (timeout no longer drops PPE)
- Default run 2048 MB / 600 s (was 1024 / 240 remotely)
- README: client-paid platform usage

#### v1.0

- ✅ Global coverage — search by keyword + city + country
- ✅ 11 interface languages
- ✅ Full business data extraction (name, address, phone, rating, total reviews, category)
- ✅ Best-effort review extraction with sentiment analysis
- ✅ Postal code extraction from page payload + country-aware regex (no external API)
- ✅ Country (ISO 3166-1 alpha-2) + city detection
- ✅ Geographic entity filtering (skips cities/regions)
- ✅ Stealth browsing with lower-cost default proxy + automatic residential fallback
- ✅ Diagnostic guide item when a run returns zero results after residential retry

***

<a name="português"></a>

## 🌍 Google Maps Scraper — Empresas Globais + Avaliações (Qualquer País)

> [🇺🇸 English](#️-google-maps-scraper--global-businesses--reviews-any-country) | 🇧🇷 Português

Extraia **dados de empresas do Google Maps em QUALQUER país** com detalhes completos, avaliações, notas e extração de código postal. Busque por palavra-chave + cidade + país, extraia informações do negócio e colete avaliações de clientes com análise de sentimento.

### ✨ Funcionalidades

- 🔍 **Busca por palavra-chave + cidade + país** — "restaurants Paris France", "dentistas Madrid España", "pizza Tokyo Japan"
- 🌐 **Cobertura global** — funciona para qualquer país com 11 idiomas de interface (en, pt-BR, es, fr, de, it, ja, zh, ar, hi, ru)
- 📋 **Dados completos** — Nome, endereço, telefone, nota, categoria, faixa de preço
- 📍 **Detecção de país + cidade** — código ISO 3166-1 alpha-2 e cidade derivados do payload, da query ou do endereço
- 📮 **Extração de código postal** — ZIP/CEP extraído do payload da página do Google Maps com fallback de regex por país (sem API externa)
- ⭐ **Extração de avaliações** — Extração best-effort de autor, nota, texto, data (veja [Limitações](#limitações))
- 💬 **Análise de sentimento** — Score (-1.0 a 1.0) + label por avaliação
- 🛡️ **Output validado** — Todo output validado antes da entrega
- 🛰️ **Fallback residencial automático** — Tenta novamente com proxy residencial automaticamente quando o Google devolve página capada ou zero resultados
- 💰 **Pague por empresa** — Apenas $3 por 1.000 empresas

### 📥 Entrada

| Parâmetro | Tipo | Obrigatório | Padrão | Descrição |
|---|---|---|---|---|
| `queries` | string\[] | ✅ | — | Buscas ("palavra-chave + cidade + país") |
| `maxPlaces` | inteiro | ❌ | 10 | Máx empresas por busca |
| `maxReviews` | inteiro | ❌ | 5 | Máx avaliações por empresa (0 = nenhuma) |
| `language` | string | ❌ | "en" | Idioma da interface (en, pt-BR, es, fr, de, it, ja, zh, ar, hi, ru) |
| `region` | string | ❌ | "" | Dica opcional de país usada como fallback na detecção |
| `enrichZipCode` | boolean | ❌ | true | Extrair código postal do payload + endereço |
| `proxyConfig` | objeto | ❌ | Apify Proxy | Config de proxy. O modo padrão é mais barato; residencial é usado automaticamente como fallback |

#### Exemplo de Entrada

```json
{
  "queries": [
    "restaurants Paris France",
    "dentists Madrid Spain",
    "pizza Tokyo Japan",
    "hotels Berlin Germany"
  ],
  "maxPlaces": 10,
  "maxReviews": 5,
  "language": "en",
  "enrichZipCode": true
}
```

### 📤 Saída

Cada empresa inclui estes campos:

| Campo | Tipo | Descrição |
|---|---|---|
| `business_name` | string | Nome da empresa |
| `place_id` | string | Google Maps Place ID |
| `address` | string | Endereço completo |
| `zip_code` | string | Código postal (ZIP/CEP) |
| `postal_code` | string | Código postal (alias de zip\_code) |
| `country` | string | País detectado (ISO 3166-1 alpha-2) |
| `city` | string | Cidade detectada |
| `phone` | string | Telefone |
| `rating` | número | Nota Google (1.0-5.0) |
| `total_reviews` | número | Total de avaliações |
| `category` | string | Categoria da empresa |
| `price_level` | string | Faixa de preço ($, $$, $$$) |
| `url` | string | URL do Google Maps |
| `website` | string | Site da empresa |
| `reviews` | objeto\[] | Avaliações extraídas (ver abaixo) |

#### Campos da Avaliação

| Campo | Tipo | Descrição |
|---|---|---|
| `author` | string | Nome do avaliador |
| `rating` | número | Nota (1-5) |
| `text` | string | Texto da avaliação |
| `date` | string | Data |
| `sentiment_score` | número | Score de sentimento (-1.0 a 1.0) |
| `sentiment_label` | string | very\_positive / positive / neutral / negative / very\_negative |
| `language` | string | Idioma detectado (en, pt-BR, es, fr, de, it, ja, zh, ar, hi, ru) |
| `topics` | string\[] | Tópicos detectados (food, service, price, etc.) |

### 📋 Casos de Uso

- **Pesquisa de mercado** — Mapeie concorrentes em qualquer cidade/país por categoria
- **Monitoramento de reputação** — Acompanhe avaliações e notas ao longo do tempo
- **Geração de leads** — Extraia contatos (telefone, endereço)
- **Análise de expansão** — Compare notas entre cidades e países
- **Insights de clientes** — Analise tópicos e sentimento das avaliações

### ⚠️ Limitações

- **Extração de texto de avaliações é best-effort.** O Google Maps bloqueia ativamente a extração automatizada de avaliações com medidas anti-bot agressivas. Dados de negócios (nome, endereço, telefone, nota, total de avaliações, categoria) são extraídos de forma confiável.
- **Contagem total de avaliações** é sempre extraída da página da empresa, mesmo quando o texto individual não está disponível.
- **Entidades geográficas** (cidades, regiões) que aparecem nos resultados são filtradas automaticamente.
- **Extração de código postal** usa primeiro o payload da página do Google Maps; se o payload não expor, um regex por país faz fallback no endereço. Alguns endereços legitimamente não têm código postal — nesse caso `zip_code` é `null` (honesto, nunca inventado).
- **Detecção de país** é derivada do payload, da query ou do endereço. Se sua query misturar idiomas, prefira incluir o nome do país explicitamente (ex.: "restaurants Paris France").

### ❓ Perguntas Frequentes

**P: Precisa de chave da API do Google?**
R: Não! Este actor funciona sem nenhuma credencial de API do Google.

**P: Que tipo de proxy precisa?**
R: O padrão usa o proxy mais barato da Apify. O actor tenta automaticamente com proxy residencial quando o Google devolve página capada ou zero resultados.

**P: Posso buscar em qualquer cidade de qualquer país?**
R: Sim! Use o formato "palavra-chave + cidade + país" nas queries.

**P: Quais idiomas são suportados?**
R: 11 idiomas de interface: en, pt-BR, es, fr, de, it, ja, zh, ar, hi, ru.

**P: Por que as avaliações às vezes estão vazias?**
R: O Google Maps usa medidas anti-bot agressivas que removem conteúdo de avaliações de navegadores automatizados. Dados do negócio e contagens totais são sempre extraídos.

**P: O código postal é extraído para toda empresa?**
R: Best-effort, sem nenhuma API externa. Quando o payload ou o endereço expõe um código postal ele é extraído; caso contrário `zip_code` é `null`.

**P: Quais labels de sentimento estão disponíveis?**
R: Cinco níveis de very\_positive a very\_negative, baseados no contexto da avaliação.

### 💰 Preços

**Pay Per Event + uso de plataforma** (você paga compute, tráfego e proxy Apify):

| Evento | Custo |
|---------|-------|
| `apify-actor-start` | $0.00005 (default; 1× por GB) |
| `place-scraped` | $0.003 por empresa válida ($3,00 / 1.000) |

### 🔗 Actors Relacionados

- [CNPJ Enricher](https://apify.com/viralanalyzer/cnpj-enricher) — Enriquecimento com dados empresariais
- [YouTube Fast Scraper](https://apify.com/viralanalyzer/youtube-fast-scraper) — Métricas do YouTube
- [TikTok Viral Scanner](https://apify.com/viralanalyzer/tiktok-viral-scanner) — Dados do TikTok
- [Instagram Reels Scraper](https://apify.com/viralanalyzer/instagram-reels-scraper) — Métricas do Instagram

### 📝 Changelog

#### v1.1 (Atual)

- Charge incremental; default 2048 MB / 600 s; usage pago pelo cliente

#### v1.0

- ✅ Cobertura global — busca por palavra-chave + cidade + país
- ✅ 11 idiomas de interface
- ✅ Extração completa de dados do negócio (nome, endereço, telefone, nota, total de avaliações, categoria)
- ✅ Extração best-effort de avaliações com análise de sentimento
- ✅ Extração de código postal do payload + regex por país (sem API externa)
- ✅ Detecção de país (ISO 3166-1 alpha-2) + cidade
- ✅ Filtro de entidades geográficas (ignora cidades/regiões)
- ✅ Navegação stealth com proxy padrão mais barato + fallback residencial automático
- ✅ Item de guia de diagnóstico quando um run retorna zero resultados após retry residencial

# Actor input Schema

## `queries` (type: `array`):

List of search queries. Format: 'keyword + city + country' (e.g., 'restaurants Paris France', 'dentistas Madrid España', 'pizza Tokyo Japan')

## `maxPlaces` (type: `integer`):

Maximum number of businesses to extract per search query

## `maxReviews` (type: `integer`):

Maximum number of reviews to extract per business (0 = no reviews)

## `language` (type: `string`):

Google Maps interface language (also drives Accept-Language and browser locale)

## `region` (type: `string`):

Optional country/region hint used as fallback for country detection when the query is ambiguous (e.g., 'United States', 'BR'). Leave empty to auto-detect from the query.

## `enrichZipCode` (type: `boolean`):

Try to extract the postal code (ZIP/CEP) from the Google Maps page payload and the address. No external API is called.

## `proxyConfig` (type: `object`):

Proxy settings for the scraper. Default mode uses lower-cost Apify proxy; RESIDENTIAL is used automatically as a fallback when Google starts returning stripped pages or zero results.

## Actor input object example

```json
{
  "queries": [
    "restaurants Paris France",
    "dentists Madrid Spain",
    "pizza Tokyo Japan",
    "hotels Berlin Germany"
  ],
  "maxPlaces": 3,
  "maxReviews": 5,
  "language": "en",
  "region": "",
  "enrichZipCode": true,
  "proxyConfig": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `results` (type: `string`):

Dataset containing all scraped results. Each item follows the dataset schema.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "queries": [
        "restaurants Paris France"
    ],
    "maxPlaces": 3,
    "maxReviews": 0,
    "language": "en",
    "region": "",
    "enrichZipCode": true,
    "proxyConfig": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("viralanalyzer/google-maps-global-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "queries": ["restaurants Paris France"],
    "maxPlaces": 3,
    "maxReviews": 0,
    "language": "en",
    "region": "",
    "enrichZipCode": True,
    "proxyConfig": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("viralanalyzer/google-maps-global-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "queries": [
    "restaurants Paris France"
  ],
  "maxPlaces": 3,
  "maxReviews": 0,
  "language": "en",
  "region": "",
  "enrichZipCode": true,
  "proxyConfig": {
    "useApifyProxy": true
  }
}' |
apify call viralanalyzer/google-maps-global-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,viralanalyzer/google-maps-global-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/UaIDfoXT5fVeB0j6o/builds/eGHKfqoOQ2JxUf0lB/openapi.json
