2GIS Places Scraper avatar

2GIS Places Scraper

Pricing

from $1.80 / 1,000 place results

Go to Apify Store
2GIS Places Scraper

2GIS Places Scraper

Extract public 2GIS place listings, ratings, review counts, categories, addresses, coordinates when visible, and diagnostics from search queries or 2GIS search URLs.

Pricing

from $1.80 / 1,000 place results

Rating

0.0

(0)

Developer

Hanna Nosova

Hanna Nosova

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Extract public 2GIS place listings from search queries or public 2GIS search URLs. The Actor saves structured rows with names, URLs, addresses, categories, ratings, review counts when visible, and run diagnostics for troubleshooting.

Use it for local business research, lead lists, location monitoring, market mapping, and automation workflows that need CSV, JSON, Excel, API, or MCP access to 2GIS data.

At a glance

  • Primary job: Search 2GIS by keyword and city, then export public place rows.
  • Input: Search queries, a location, optional public 2GIS URLs, filters, and a result limit.
  • Output: One dataset row per public 2GIS place plus diagnostic KV records.
  • Best for: Lead generation, competitor research, branch discovery, category monitoring, and enrichment pipelines.

Common workflows

  • Lead generation: Search categories such as restaurants, dentists, clinics, cafes, repair shops, or hotels in a target city.
  • Market research: Compare categories, ratings, addresses, and review counts across neighborhoods or regions.
  • Monitoring: Schedule repeat runs for the same query/location and compare new rows or rating changes.
  • Automation: Send dataset exports to a CRM, spreadsheet, webhook, API client, or MCP-enabled AI workflow.

Ready-to-run examples

What data can you extract?

FieldDescription
id2GIS place or branch identifier when available.
titlePublic place name.
urlPublic 2GIS place URL.
querySearch query that produced the row.
locationQueryCity or region used for query searches.
domain2GIS domain used for the source route.
addressPublic address text.
cityInput city or region context.
rubrics / categoryPublic category labels.
ratingVisible rating value, when present.
reviewsCountVisible review/rating count, when present.
sourceStatus, sourceMode, blocked, emptyPageDiagnostics for source handling.
scrapedAtISO timestamp for the row.

Input configuration

SettingJSON keyUse it forExample
Search queriesqueriesBusiness categories or keywords to search.["Restaurants", "Dentists"]
LocationlocationQueryCity or region used in query URLs."dubai"
2GIS URLsstartUrlsPublic 2GIS search or place URLs.[{"url":"https://2gis.ae/dubai/search/Restaurants."}]
Maximum placesmaxItemsCap saved rows and control spend.10
2GIS domaindomainRegional 2GIS domain for query searches."2gis.ae"
LanguagelanguagePreferred page language where supported."en"
Sort bysortByPreferred order when supported by the source route."relevance"
Minimum ratingminRatingKeep places at or above a rating threshold when visible.4
Dedupe places bydedupeBySuppress duplicates across queries and URLs."idOrUrl"

Example input

{
"queries": ["Restaurants"],
"locationQuery": "dubai",
"domain": "2gis.ae",
"language": "en",
"maxItems": 10,
"dedupeBy": "idOrUrl"
}

Example output

{
"id": "70000001055149461",
"title": "Laffah",
"url": "https://2gis.ae/dubai/firm/70000001055149461",
"query": "Restaurants",
"locationQuery": "dubai",
"domain": "2gis.ae",
"address": "Flamingo Building, Sheikh Khalifa Bin Zayed road, Dubai",
"city": "dubai",
"category": "Arabic restaurant",
"rating": 5,
"reviewsCount": 45,
"sourceStatus": "ok",
"sourceMode": "http-static",
"scrapedAt": "2026-07-22T13:03:04.000Z"
}

Pricing

This Actor uses pay-per-event pricing. You are charged $0.02 when a run starts and a tiered price for each place row saved to the dataset.

TierPer saved place
Free$0.003
Bronze$0.0026
Silver$0.0022
Gold$0.0018
Platinum$0.0014
Diamond$0.001

Tips for best results

  • Start small: Use maxItems: 10 until output quality and pricing are verified.
  • Choose the matching region: Use 2gis.ae for UAE routes, 2gis.kz for Kazakhstan, and 2gis.ru for Russia.
  • Keep searches focused: Specific categories and cities usually produce cleaner data than broad keywords.
  • Use public inputs: Account, dashboard, login, and business-management URLs are rejected.

API usage

Node.js:

import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor("fetch_cat/2gis-places-scraper").call({
queries: ["Restaurants"],
locationQuery: "dubai",
domain: "2gis.ae",
maxItems: 10
});
console.log(run.defaultDatasetId);

Python:

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("fetch_cat/2gis-places-scraper").call(run_input={
"queries": ["Restaurants"],
"locationQuery": "dubai",
"domain": "2gis.ae",
"maxItems": 10,
})
print(run["defaultDatasetId"])

cURL:

curl -X POST "https://api.apify.com/v2/acts/fetch_cat~2gis-places-scraper/runs?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"queries":["Restaurants"],"locationQuery":"dubai","domain":"2gis.ae","maxItems":10}'

MCP and AI agents

Use this Actor from MCP-compatible tools through the official Apify MCP Server.

$claude mcp add --transport http apify "https://mcp.apify.com?tools=fetch_cat/2gis-places-scraper"
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=fetch_cat/2gis-places-scraper"
}
}
}

Example prompt: "Run 2GIS Places Scraper for restaurants in Dubai with maxItems 10 and summarize the highest-rated places."

Limits and caveats

  • Coverage: 2GIS availability, public page layout, language, and regional routes vary by country and city.
  • Freshness: Source data can change after a run finishes.
  • Optional fields: Some addresses, ratings, review counts, coordinates, or categories may be unavailable on public search pages.
  • Rate limits: Public endpoints may throttle large or frequent runs.

Legality and responsible use

Process only data that you are allowed to access. Follow website terms, Apify's terms, and applicable laws.

FAQ

Can I export results?

Yes. Apify datasets support JSON, CSV, Excel, XML, RSS, and API access.

Why are some fields empty?

Some 2GIS pages do not expose every field publicly. The Actor leaves unavailable fields empty instead of guessing.

Support

Open an issue from the Actor page if a run fails or output looks wrong. Include the run ID or run URL, input JSON, expected output, actual output, and one reproducible public URL.