2GIS Reviews Scraper
Pricing
from $0.25 / 1,000 reviews
2GIS Reviews Scraper
Collect public 2GIS reviews from place links, branch IDs, or a 2GIS search link. Get structured rows with review text, star ratings, authors, dates, photo links, business replies, and place details.
Pricing
from $0.25 / 1,000 reviews
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
🗺️ Make 2GIS Reviews Ready for Research
Business owners, researchers, agencies, and developers can collect public 2GIS reviews for selected places. Each saved row combines review text and star rating with available source links, author, date, photo links, business reply, provider, and place details, so customer feedback is ready to filter, compare, and export.
Use cases
- Collect source-linked review rows with 2GIS Reviews Data for a public place.
- Get review text and ratings with 2GIS Place Reviews for a selected place.
- Review business feedback with 2GIS Business Reviews for a public 2GIS business.
- Scrape a public review page with Scrape 2GIS Reviews for a customer feedback check.
- Build a review dataset with 2GIS Review Scraper for a place or branch ID.
📊 Review Rows with Place Context
What you get
Each dataset row is one structured review record. It includes a review ID, provider, review text, star rating, and place details, plus a source link, dates, author, likes, comments, photo links, business reply, visibility, and trust signals when available. Attached photos are represented by source links, not downloaded files.
Useful for
Use the rows to study customer feedback, compare places, check public replies, and export source-linked review data for your own workflow.
▶️ Run a 2GIS Review Collection
Run steps
- Choose how to find reviews: place links or branch IDs, a 2GIS search link, or a search term and city.
- Add values only to the fields for the selected discovery method.
- Set review filters and limits when needed. Leave a limit empty when you want the available source data instead.
- Start the run and open the default dataset to inspect or export the saved rows.
Limits
Leave maxPlaces empty to return all available places until the source is exhausted when using search discovery. This field is ignored for place links or branch IDs. Leave maxReviewsPerPlace empty to return all available reviews until the source is exhausted for each place. Leave maxReviews empty to return all available reviews until the source is exhausted for the run.
⚙️ Input
Input fields
| Field | Type | What it does |
|---|---|---|
discoveryMethod | string | Choose placeTargets, searchLink, or searchTerm to select how places are found. |
placeTargets | array of strings | Add public 2GIS place links or branch IDs when using placeTargets. |
searchLink | string | Add one public 2GIS search link when using searchLink. |
searchTerm | string | Add the place name or type to find when using searchTerm. Use it with city. |
city | string | Add the city where the search should run when using searchTerm. |
maxPlaces | integer | Optional cap for places found by a 2GIS search link or search term and city. Leave it empty to return all available places until the source is exhausted. It is ignored for place links or branch IDs. |
maxReviewsPerPlace | integer | Optional cap for each selected or discovered place. Leave it empty to return all available reviews until the source is exhausted for each place. |
maxReviews | integer | Optional cap across the run. Leave it empty to return all available reviews until the source is exhausted. |
starRatings | array of strings | Keep only the selected ratings from 1 to 5. Leave it blank to include all ratings. |
reviewDateFrom | string | Include reviews created on or after this UTC date in YYYY-MM-DD format. |
reviewKeyword | string | Keep reviews whose text contains this keyword. Leave it blank to include all review text. |
reviewTopics | array of strings | Add source topic names to keep reviews with those topics. Leave it blank to include reviews with any topic. |
reviewProviders | array of strings | Add supported provider names to keep reviews from those providers. Leave it blank to include all providers surfaced by 2GIS. |
onlyReviewsWithReplies | boolean | Set true to keep only reviews with a public business reply. |
onlyReviewsWithText | boolean | Set true to keep only reviews that contain written text. |
reviewOrder | string | Choose newest or oldest. Leave it blank to use the source default. |
sourceLocale | string | Add a supported locale code such as en or ru. Leave it blank to use the source default. |
Successful input example
This example is copied from a successful current-beta default-input run.
{"discoveryMethod": "placeTargets","placeTargets": ["https://2gis.ru/moscow/firm/4504127908364700/tab/reviews"],"maxReviews": 3}
🧾 Output
Output shape
All saved records use the same review object shape. Optional fields can be absent when the source does not provide them or the requested details are not available.
Run output
| Field | Type | What it does |
|---|---|---|
reviews | string (URL) | Opens the collected review rows. |
Review record fields
| Field | Type | What it does |
|---|---|---|
reviewId | string | Stable source identifier for the review. |
provider | string | Source provider associated with the review. |
sourceUrl | string (URL) | Source page where the review can be checked when a link is available. |
reviewText | string | Text published in the review. |
starRating | number | Star rating given in the review. |
createdAt | string (date-time) | Date and time when the review was created, when provided. |
editedAt | string (date-time) | Date and time when the review was last edited, when provided. |
author | object | Reviewer identity and profile details when provided. |
author.authorId | string | Stable source identifier for the reviewer. |
author.name | string | Reviewer name shown by the source. |
author.profileUrl | string (URL) | Source profile page for the reviewer when available. |
likeCount | integer | Number of likes shown for the review when provided. |
commentCount | integer | Number of comments shown for the review when provided. |
photoUrls | array of strings | Links to photos attached to the review when available. |
businessReply | object | Public reply from the business when one is available. |
businessReply.text | string | Text published in the business reply. |
businessReply.responder | string | Name or label of the business responder when provided. |
businessReply.repliedAt | string (date-time) | Date and time when the business reply was published, when provided. |
visibility | string | Source-provided visibility state for the review. |
trustSignals | array of strings | Source-provided trust labels or signals when available. |
place | object | Details for the business or location reviewed. |
place.placeId | string | Stable source identifier for the place. |
place.name | string | Place name shown by the source. |
place.address | string | Formatted place address when provided. |
place.locality | string | City, town, or other locality when provided. |
place.region | string | State, province, or other region when provided. |
place.country | string | Country for the place when provided. |
place.coordinates | object | Geographic coordinates when provided. |
place.coordinates.latitude | number | Latitude in decimal degrees. |
place.coordinates.longitude | number | Longitude in decimal degrees. |
place.categories | array of strings | Place categories shown by the source when available. |
place.aggregateRating | number | Overall place rating shown by the source when available. |
place.reviewCount | integer | Number of reviews shown for the place when provided. |
Genuine row
This unshortened row is copied from a successful current-beta run. It includes public source IDs, URLs, photo links, and reply text as returned.
{"reviewId": "270520980","provider": "2gis","reviewText": "Отличное место! Все вкусно и порции большие ))) окунь ммммм. Спасибо !","starRating": 5,"place": {"placeId": "70000001090426385","name": "Мясо&Рыба, ресторан","address": "проспект Мира, 211","locality": "Москва","region": "Москва","country": "Россия","coordinates": {"latitude": 55.844889,"longitude": 37.666795},"categories": ["Рестораны","Доставка еды"],"aggregateRating": 4.9,"reviewCount": 575},"sourceUrl": "https://2gis.ru/moscow/firm/70000001090426385/tab/reviews","createdAt": "2026-08-20T16:21:26.556251+07:00","author": {"authorId": "74655446","name": "Валентина П","profileUrl": "https://2gis.ru/user/ba768638fd4548f1baf8c3769b2685bd"},"likeCount": 0,"commentCount": 1,"photoUrls": ["https://cachizer2.2gis.com/reviews-photos/84b6bdd0-ccdc-4b06-bdf6-70b5bc819e52.jpg","https://cachizer1.2gis.com/reviews-photos/0b4aeda0-4997-4fee-87c8-6a96bbb4d850.jpg","https://cachizer1.2gis.com/reviews-photos/408b182d-9b59-43db-9496-858a5c840cf6.jpg"],"businessReply": {"text": "Валентина , читаем такие отзывы - и настроение сразу поднимается на весь день. Правда, очень приятно знать, что впечатления оправдали ожидания. Именно ради этого мы и работаем. Будем ждать вас снова — надеемся, что ещё не раз порадуем! 🙂","responder": "Мясо&Рыба, ресторан","repliedAt": "2026-08-22T00:00:42.489342+07:00"},"visibility": "visible","trustSignals": ["1 посещение"]}
💳 Pricing
Charged event
Apify charges one event for each structured review returned. The event title is Review; the current price is shown in the Actor pricing panel and can vary by plan. This section covers review events only.
🔌 Integrations
Dataset access
Open the default dataset after a run to inspect the rows. You can export the data as JSON or CSV, or read it through the Apify API.
Video guide
❓ FAQ
What if no review matches my filters?
The dataset can be empty when a place has no public review that matches the selected filters. Try a broader filter or another public place.
Can I use a branch ID instead of a place link?
Yes. Add a public 2GIS place link or a branch ID under placeTargets.
Can I use a 2GIS search link?
Yes. Choose searchLink and paste one public 2GIS search link. Set maxPlaces when you want to stop after a chosen number of places.
What does leaving a limit empty do?
Leave maxPlaces empty to return all available places until the source is exhausted for search discovery. Leave maxReviewsPerPlace empty to return all available reviews until the source is exhausted for each place. Leave maxReviews empty to return all available reviews until the source is exhausted for the run.
Can I filter by rating, date, or review text?
Yes. Use starRatings, reviewDateFrom, and reviewKeyword. You can also filter by source topics, providers, replies, or written text.
Can a row include a review from a provider other than 2GIS?
Yes, when 2GIS surfaces it. The provider field identifies the source associated with the review, and reviewProviders can limit the providers used.
Are review photos downloaded?
No. The Actor returns source photo links when they are available. It does not promise downloaded photo files.
Do I need a 2GIS login or API key?
No buyer-supplied source credentials are needed for public 2GIS review data.
Does the Actor create sentiment labels or summaries?
No. It returns source review fields and does not promise generated sentiment, summaries, or other model-derived analysis.
How do I export the rows?
Open the default dataset after the run and choose an Apify export format, or read the dataset through the Apify API.
📝 Changelog
v0.0 (25-09-2026)
- Initial release.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Related Actors
- Yelp Business Review Scraper: Compare public Yelp reviews with 2GIS feedback.
- Facebook Reviews Scraper: Add public Facebook Page recommendations to a cross-source review study.
- Yelp Scraper: Review Reputation Monitor: Review public Yelp reputation signals for the same business.
- 2GIS Reviews Scraper: Отзывы 2ГИС: Compare another 2GIS review collection option for the same place.
- 2GIS Reviews Scraper API: Compare 2GIS review rows with another public Actor.
Made with ❤️ by Maxime Dupré