Help Center

  • Fill out my online form
  • How to collect data on Google My Business (GMB) profiles?

    Collecting data on Google My Business profiles is easy with Business Data API.

    The API has two endpoints that can help you with such a task:

    • My Business Info.
    • My Business Updates.

     
    The My Business Info endpoint will provide information about any business entity listed on Google My Business. It can pull out virtually any publicly available data, including the business category of the establishment, its work hours, address, phone number, specified GMB attributes, and much more.

    As for the My Business Updates endpoint, it provides the latest updates of the business entity. More specifically, it pulls out data from the establishment’s GMB posts.

    How to collect data from My Business Info

    1 Call the My Business Info endpoint.

    POST https://api.dataforseo.com/v3/business_data/google/my_business_info/task_post

    2 Add the keyword field to the Task POST body and specify a keyword that indicates the name of the local establishment in it. Note that you can use the keyword field to pass the following parameters:

    • cid – a unique, google-defined id of the business entity;
    • place_id – an identifier of the business entity in Google Maps;
    • spp – a unique identifier of local services featured in the local_pack element of Google SERP.

     
    Example: "keyword": "cid:194604053573767737"

    You can learn more about the cid and place_id identifiers in this help center article.

    3 Specify location_name, location_code, or location_coordinate.

    You will receive the full list of available locations by making a separate request to the Locations endpoint.

    GET https://api.dataforseo.com/v3/business_data/google/locations

    4 Specify language_name or language code.

    You will receive the full list of available languages by making a separate request to the Languages endpoint.

    GET https://api.dataforseo.com/v3/business_data/google/languages

    Your POST request should be structured as in the example below:

    [
        {
            "language_code": "en",
            "location_name": "New York,New York,United States",
            "keyword": "cid:194604053573767737"
        }
    ]

    5 Once the POST request is set, send it and copy your task ID from the API response.

    6 Use the task ID to retrieve the results from the Task GET endpoint.

    GET https://api.dataforseo.com/v3/business_data/google/my_business_info/task_get/$id

    Example of the response in JSON:

    {
        "version": "0.1.20210917",
        "status_code": 20000,
        "status_message": "Ok.",
        "time": "0.0723 sec.",
        "cost": 0,
        "tasks_count": 1,
        "tasks_error": 0,
        "tasks": [
            {
                "id": "10181621-2806-0242-0000-078178a6ac55",
                "status_code": 20000,
                "status_message": "Ok.",
                "time": "0.0177 sec.",
                "cost": 0,
                "result_count": 1,
                "path": [
                    "v3",
                    "business_data",
                    "google",
                    "my_business_info",
                    "task_get",
                    "10181621-2806-0242-0000-078178a6ac55"
                ],
                "data": {
                    "se_type": "business_info",
                    "se": "google",
                    "api": "business_data",
                    "function": "my_business_info",
                    "language_code": "en",
                    "location_name": "New York,New York,United States",
                    "keyword": "cid:194604053573767737",
                    "device": "desktop",
                    "os": "windows"
                },
                "result": [
                    {
                        "keyword": "cid:194604053573767737",
                        "se_domain": "google.com",
                        "location_code": 1023191,
                        "language_code": "en",
                        "check_url": "https://www.google.com/maps?cid=194604053573767737&hl=en&gl=US",
                        "datetime": "2021-10-18 13:21:31 +00:00",
                        "item_types": [
                            "google_business_info"
                        ],
                        "items_count": 1,
                        "items": [
                            {
                                "type": "google_business_info",
                                "rank_group": 1,
                                "rank_absolute": 1,
                                "position": "left",
                                "title": "Pizzicato",
                                "description": null,
                                "category": "Pizza restaurant",
                                "additional_categories": null,
                                "cid": "194604053573767737",
                                "feature_id": "0x40a4540b44631ff5:0x2b35f5b0d1d9239",
                                "address": "ul. \"Bratya Miladinovi\" 55, 9000 Center, Varna, Bulgaria",
                                "address_info": {
                                    "borough": "Center",
                                    "address": "ul. \"Bratya Miladinovi\" 55",
                                    "city": "Varna",
                                    "zip": "9000",
                                    "region": null,
                                    "country_code": "BG"
                                },
                                "place_id": "ChIJ9R9jRAtUpEAROZIdDVtfswI",
                                "phone": "+35952650500",
                                "url": null,
                                "domain": null,
                                "logo": null,
                                "main_image": "https://lh5.googleusercontent.com/p/AF1QipNnzcCtwsGweRqNHRSwN082S7dIFNIMkQuT_2qF=w426-h240-k-no",
                                "snippet": "ul. \"Bratya Miladinovi\" 55, 9000 Center, Varna, Bulgaria",
                                "latitude": 43.2114219,
                                "longitude": 27.9143379,
                                "is_claimed": false,
                                "attributes": {
                                    "available_attributes": {
                                        "service_options": [
                                            "has_takeout",
                                            "serves_dine_in"
                                        ],
                                        "highlights": [
                                            "has_fast_service"
                                        ],
                                        "accessibility": [
                                            "has_wheelchair_accessible_seating"
                                        ],
                                        "offerings": [
                                            "serves_alcohol",
                                            "serves_healthy",
                                            "has_childrens_menu",
                                            "serves_late_night_food",
                                            "serves_organic",
                                            "quick_bite",
                                            "serves_vegetarian"
                                        ]
                                    },
                                    "unavailable_attributes": null
                                },
                                "place_topics": {
                                    "italian food": 9,
                                    "prices": 5
                                },
                                "rating": {
                                    "rating_type": "Max5",
                                    "value": 4.2,
                                    "votes_count": 516,
                                    "rating_max": null
                                },
                                "rating_distribution": {
                                    "1": 24,
                                    "2": 29,
                                    "3": 61,
                                    "4": 125,
                                    "5": 277
                                },
                                "people_also_search": [
                                    {
                                        "cid": "2531921169995925875",
                                        "feature_id": "0x40a454099768aa81:0x232330e3b0e60973",
                                        "title": "Godzila Sevastopol",
                                        "rating": {
                                            "rating_type": "Max5",
                                            "value": 4.3,
                                            "votes_count": 3427,
                                            "rating_max": null
                                        }
                                    },
                                    {
                                        "cid": "14429090646833622625",
                                        "feature_id": "0x40a4540decf5d15f:0xc83e6d7ea46dee61",
                                        "title": "Red Rock Tavern",
                                        "rating": {
                                            "rating_type": "Max5",
                                            "value": 4.2,
                                            "votes_count": 386,
                                            "rating_max": null
                                        }
                                    },
                                    {
                                        "cid": "5231546504991016502",
                                        "feature_id": "0x40a4547b020678f3:0x489a2fd40fed0636",
                                        "title": "Pitsariya Trimata Musketari",
                                        "rating": {
                                            "rating_type": "Max5",
                                            "value": 3.8,
                                            "votes_count": 1320,
                                            "rating_max": null
                                        }
                                    },
                                    {
                                        "cid": "9637081895531370685",
                                        "feature_id": "0x40a453f55652c8cd:0x85bdcaecae7ed8bd",
                                        "title": "Dragoman Restaurant",
                                        "rating": {
                                            "rating_type": "Max5",
                                            "value": 4.2,
                                            "votes_count": 39,
                                            "rating_max": null
                                        }
                                    }
                                ],
                                "work_time": {
                                    "work_hours": {
                                        "timetable": {
                                            "sunday": [
                                                {
                                                    "open": {
                                                        "hour": 10,
                                                        "minute": 0
                                                    },
                                                    "close": {
                                                        "hour": 23,
                                                        "minute": 0
                                                    }
                                                }
                                            ],
                                            "monday": [
                                                {
                                                    "open": {
                                                        "hour": 10,
                                                        "minute": 0
                                                    },
                                                    "close": {
                                                        "hour": 23,
                                                        "minute": 0
                                                    }
                                                }
                                            ],
                                            "tuesday": [
                                                {
                                                    "open": {
                                                        "hour": 10,
                                                        "minute": 0
                                                    },
                                                    "close": {
                                                        "hour": 23,
                                                        "minute": 0
                                                    }
                                                }
                                            ],
                                            "wednesday": [
                                                {
                                                    "open": {
                                                        "hour": 10,
                                                        "minute": 0
                                                    },
                                                    "close": {
                                                        "hour": 23,
                                                        "minute": 0
                                                    }
                                                }
                                            ],
                                            "thursday": [
                                                {
                                                    "open": {
                                                        "hour": 10,
                                                        "minute": 0
                                                    },
                                                    "close": {
                                                        "hour": 23,
                                                        "minute": 0
                                                    }
                                                }
                                            ],
                                            "friday": [
                                                {
                                                    "open": {
                                                        "hour": 10,
                                                        "minute": 0
                                                    },
                                                    "close": {
                                                        "hour": 23,
                                                        "minute": 0
                                                    }
                                                }
                                            ],
                                            "saturday": [
                                                {
                                                    "open": {
                                                        "hour": 10,
                                                        "minute": 0
                                                    },
                                                    "close": {
                                                        "hour": 23,
                                                        "minute": 0
                                                    }
                                                }
                                            ]
                                        },
                                        "current_status": "temporarily_closed"
                                    }
                                },
                                "popular_times": null,
                                "local_business_links": null
                            }
                        ]
                    }
                ]
            }
        ]
    }

    How to collect data from My Business Updates

    1 Call the My Business Updates endpoint.

    POST https://api.dataforseo.com/v3/business_data/google/my_business_updates/task_post

    2 Add the keyword field to the Task POST body and specify a keyword that indicates the name of the local establishment in it. Note that you can use the keyword field to pass the following parameters:

    • cid – a unique, google-defined id of the business entity;
    • place_id – an identifier of the business entity in Google Maps.

     
    Example: "keyword": "cid:194604053573767737"

    You can learn more about the cid and place_id identifiers in this help center article.

    3 Specify location_name, location_code, or location_coordinate.

    You will receive the full list of available locations by making a separate request to the Locations endpoint.

    GET https://api.dataforseo.com/v3/business_data/google/locations

    4 Specify language_name or language code.

    You will receive the full list of available languages by making a separate request to the Languages endpoint.

    GET https://api.dataforseo.com/v3/business_data/google/languages

    5 Set the number of updates to be returned in the API response by adding the depth field to the Task POST array.

    Note that your account will be charged for every ten updates, and our system processes ten updates in a row. For example, if you specify ”depth”: 11, you will be charged as per 20 updates. That’s why we strongly recommend setting the parsing depth in the multiples of ten. Also, note that Google returns 4490 updates maximum.

    The default depth value is 10.

    Your POST request should be structured as in the example below:

    [
        {
            "language_code": "en",
            "location_name": "New York,New York,United States",
            "keyword": "RustyBrick, Inc.",
            "depth": 10
        }
    ]

    6 Once the POST request is set, send it and copy your task ID from the API response.

    7 Use the task ID to retrieve the results from the Task GET endpoint.

    GET https://api.dataforseo.com/v3/business_data/google/my_business_updates/task_get/$id

    Example of the response in JSON:

    {
        "version": "0.1.20210917",
        "status_code": 20000,
        "status_message": "Ok.",
        "time": "0.0631 sec.",
        "cost": 0,
        "tasks_count": 1,
        "tasks_error": 0,
        "tasks": [
            {
                "id": "10181658-2806-0243-0000-67406f8169a8",
                "status_code": 20000,
                "status_message": "Ok.",
                "time": "0.0203 sec.",
                "cost": 0,
                "result_count": 1,
                "path": [
                    "v3",
                    "business_data",
                    "google",
                    "my_business_updates",
                    "task_get",
                    "10181658-2806-0243-0000-67406f8169a8"
                ],
                "data": {
                    "se_type": "business_updates",
                    "se": "google",
                    "api": "business_data",
                    "function": "my_business_updates",
                    "language_code": "en",
                    "location_name": "New York,New York,United States",
                    "keyword": "RustyBrick, Inc.",
                    "depth": 10,
                    "device": "desktop",
                    "os": "windows"
                },
                "result": [
                    {
                        "keyword": "RustyBrick, Inc.",
                        "se_domain": "google.com",
                        "location_code": 1023191,
                        "language_code": "en",
                        "check_url": "https://www.google.com/search?q=RustyBrick%2C%20Inc.&num=10&hl=en&gl=US&gws_rd=cr&uule=w+CAIQIFISCTsIP9OlT8KJEWL-d-EGjwvI",
                        "datetime": "2021-10-18 13:58:15 +00:00",
                        "business_updates_id": null,
                        "cid": null,
                        "feature_id": null,
                        "item_types": [
                            "google_business_post"
                        ],
                        "items_count": 10,
                        "items": [
                            {
                                "type": "google_business_post",
                                "rank_group": 1,
                                "rank_absolute": 1,
                                "position": "left",
                                "xpath": null,
                                "author": "RustyBrick, Inc.",
                                "snippet": null,
                                "post_text": "Prepping the office for the return of our employees to working in the office after they are vaccinated. Exciting times. ",
                                "url": "https://search.google.com/local/posts?q=RustyBrick,+Inc.&ludocid=2946633002421908862&lpsid=7912589576587513145&source=sh/x/localposts&lsig=AB86z5VWpF0lsMxd28ZU-_oXjiYQ",
                                "images_url": "https://lh4.googleusercontent.com/-fsVsOfiYWxE/AAAAAAAAAAI/AAAAAAAAAAA/vBRv_lPQwLU/s40-c-k-mo/photo.jpg",
                                "post_date": "Apr 7, 2021",
                                "timestamp": "2021-04-07 00:00:00 +00:00",
                                "links": [
                                    {
                                        "type": "link_element",
                                        "title": "Learn more",
                                        "url": "http://www.rustybrick.com/"
                                    }
                                ]
                            },
                            {
                                "type": "google_business_post",
                                "rank_group": 2,
                                "rank_absolute": 2,
                                "position": "left",
                                "xpath": null,
                                "author": "RustyBrick, Inc.",
                                "snippet": null,
                                "post_text": "After a year of being fully remote, starting March 15, 2021 we have limited employees working full time from the office.  We are accepting in-office meetings by appointment only.",
                                "url": "https://search.google.com/local/posts?q=RustyBrick,+Inc.&ludocid=2946633002421908862&lpsid=8016670739885852199&source=sh/x/localposts&lsig=AB86z5VWpF0lsMxd28ZU-_oXjiYQ",
                                "images_url": "https://lh4.googleusercontent.com/-fsVsOfiYWxE/AAAAAAAAAAI/AAAAAAAAAAA/vBRv_lPQwLU/s40-c-k-mo/photo.jpg",
                                "post_date": "Mar 15, 2021",
                                "timestamp": "2021-03-15 00:00:00 +00:00",
                                "links": null
                            },
                            {
                                "type": "google_business_post",
                                "rank_group": 3,
                                "rank_absolute": 3,
                                "position": "left",
                                "xpath": null,
                                "author": "RustyBrick, Inc.",
                                "snippet": null,
                                "post_text": "Wishing you a happy, healthy and prosperous New Year!",
                                "url": "https://search.google.com/local/posts?q=RustyBrick,+Inc.&ludocid=2946633002421908862&lpsid=2986644474808256961&source=sh/x/localposts&lsig=AB86z5VWpF0lsMxd28ZU-_oXjiYQ",
                                "images_url": "https://lh4.googleusercontent.com/-fsVsOfiYWxE/AAAAAAAAAAI/AAAAAAAAAAA/vBRv_lPQwLU/s40-c-k-mo/photo.jpg",
                                "post_date": "Dec 31, 2020",
                                "timestamp": "2020-12-31 00:00:00 +00:00",
                                "links": null
                            },
                            {
                                "type": "google_business_post",
                                "rank_group": 4,
                                "rank_absolute": 4,
                                "position": "left",
                                "xpath": null,
                                "author": "RustyBrick, Inc.",
                                "snippet": null,
                                "post_text": "The RustyBrick team is working from home.  We are fully up and operational.  But we are not physically in the office.  Please be safe and stay home.",
                                "url": "https://search.google.com/local/posts?q=RustyBrick,+Inc.&ludocid=2946633002421908862&lpsid=1410215436954082713&source=sh/x/localposts&lsig=AB86z5VWpF0lsMxd28ZU-_oXjiYQ",
                                "images_url": "https://lh4.googleusercontent.com/-fsVsOfiYWxE/AAAAAAAAAAI/AAAAAAAAAAA/vBRv_lPQwLU/s40-c-k-mo/photo.jpg",
                                "post_date": "Apr 2, 2020",
                                "timestamp": "2020-04-02 00:00:00 +00:00",
                                "links": null
                            },
                            {
                                "type": "google_business_post",
                                "rank_group": 5,
                                "rank_absolute": 5,
                                "position": "left",
                                "xpath": null,
                                "author": "RustyBrick, Inc.",
                                "snippet": null,
                                "post_text": "We hope everyone is safe and healthy.  Virtually all of our staff will be working remotely.  Thankfully, we are set up to allow for remote work.  Phone calls will be returned but it is best to email.  Be safe!",
                                "url": "https://search.google.com/local/posts?q=RustyBrick,+Inc.&ludocid=2946633002421908862&lpsid=1037575848925112213&source=sh/x/localposts&lsig=AB86z5VWpF0lsMxd28ZU-_oXjiYQ",
                                "images_url": "https://lh4.googleusercontent.com/-fsVsOfiYWxE/AAAAAAAAAAI/AAAAAAAAAAA/vBRv_lPQwLU/s40-c-k-mo/photo.jpg",
                                "post_date": "Mar 16, 2020",
                                "timestamp": "2020-03-16 00:00:00 +00:00",
                                "links": null
                            },
                            {
                                "type": "google_business_post",
                                "rank_group": 6,
                                "rank_absolute": 6,
                                "position": "left",
                                "xpath": null,
                                "author": "RustyBrick, Inc.",
                                "snippet": null,
                                "post_text": "The RustyBrick Sukkah is now available for use",
                                "url": "https://search.google.com/local/posts?q=RustyBrick,+Inc.&ludocid=2946633002421908862&lpsid=536816744311833583&source=sh/x/localposts&lsig=AB86z5VWpF0lsMxd28ZU-_oXjiYQ",
                                "images_url": "https://lh4.googleusercontent.com/-fsVsOfiYWxE/AAAAAAAAAAI/AAAAAAAAAAA/vBRv_lPQwLU/s40-c-k-mo/photo.jpg",
                                "post_date": "Sep 27, 2018",
                                "timestamp": "2018-09-27 00:00:00 +00:00",
                                "links": [
                                    {
                                        "type": "link_element",
                                        "title": "Learn more",
                                        "url": "https://www.rustybrick.com/rustysukkah-is-available.html"
                                    }
                                ]
                            },
                            {
                                "type": "google_business_post",
                                "rank_group": 7,
                                "rank_absolute": 7,
                                "position": "left",
                                "xpath": null,
                                "author": "RustyBrick, Inc.",
                                "snippet": null,
                                "post_text": "Double Header For RustyBrick's Annual Rockland Boulders Baseball Game. The stadium was pretty empty, as usual but makes it good to have it to ourselves. :)",
                                "url": "https://search.google.com/local/posts?q=RustyBrick,+Inc.&ludocid=2946633002421908862&lpsid=4949232654074362515&source=sh/x/localposts&lsig=AB86z5VWpF0lsMxd28ZU-_oXjiYQ",
                                "images_url": "https://lh4.googleusercontent.com/-fsVsOfiYWxE/AAAAAAAAAAI/AAAAAAAAAAA/vBRv_lPQwLU/s40-c-k-mo/photo.jpg",
                                "post_date": "Aug 15, 2018",
                                "timestamp": "2018-08-15 00:00:00 +00:00",
                                "links": [
                                    {
                                        "type": "link_element",
                                        "title": "Learn more",
                                        "url": "https://www.rustybrick.com/double-header.html"
                                    }
                                ]
                            },
                            {
                                "type": "google_business_post",
                                "rank_group": 8,
                                "rank_absolute": 8,
                                "position": "left",
                                "xpath": null,
                                "author": "RustyBrick, Inc.",
                                "snippet": null,
                                "post_text": "Our latest Jewish software solution aims at improving the Mikvah experience - introducing MikvahCloud.com",
                                "url": "https://search.google.com/local/posts?q=RustyBrick,+Inc.&ludocid=2946633002421908862&lpsid=8663089673266139268&source=sh/x/localposts&lsig=AB86z5VWpF0lsMxd28ZU-_oXjiYQ",
                                "images_url": "https://lh4.googleusercontent.com/-fsVsOfiYWxE/AAAAAAAAAAI/AAAAAAAAAAA/vBRv_lPQwLU/s40-c-k-mo/photo.jpg",
                                "post_date": "Jul 17, 2018",
                                "timestamp": "2018-07-17 00:00:00 +00:00",
                                "links": [
                                    {
                                        "type": "link_element",
                                        "title": "Learn more",
                                        "url": "https://www.rustybrick.com/MikvahCloud-Revolutionizing-Mikvehs-With-Web--Mobile-Technologies-261.html"
                                    }
                                ]
                            },
                            {
                                "type": "google_business_post",
                                "rank_group": 9,
                                "rank_absolute": 9,
                                "position": "left",
                                "xpath": null,
                                "author": "RustyBrick, Inc.",
                                "snippet": null,
                                "post_text": "Here is our recap of our big ShulCloud Conference that took place yesterday.",
                                "url": "https://search.google.com/local/posts?q=RustyBrick,+Inc.&ludocid=2946633002421908862&lpsid=2533919385382650388&source=sh/x/localposts&lsig=AB86z5VWpF0lsMxd28ZU-_oXjiYQ",
                                "images_url": "https://lh4.googleusercontent.com/-fsVsOfiYWxE/AAAAAAAAAAI/AAAAAAAAAAA/vBRv_lPQwLU/s40-c-k-mo/photo.jpg",
                                "post_date": "Jul 11, 2018",
                                "timestamp": "2018-07-11 00:00:00 +00:00",
                                "links": [
                                    {
                                        "type": "link_element",
                                        "title": "Learn more",
                                        "url": "https://www.rustybrick.com/2018-shulcloud-recap.html"
                                    }
                                ]
                            },
                            {
                                "type": "google_business_post",
                                "rank_group": 10,
                                "rank_absolute": 10,
                                "position": "left",
                                "xpath": null,
                                "author": "RustyBrick, Inc.",
                                "snippet": null,
                                "post_text": "Sales people should not be cold calling on a recorded line - big turn off and another obstacle to closing a sale",
                                "url": "https://search.google.com/local/posts?q=RustyBrick,+Inc.&ludocid=2946633002421908862&lpsid=410006573066419182&source=sh/x/localposts&lsig=AB86z5VWpF0lsMxd28ZU-_oXjiYQ",
                                "images_url": "https://lh4.googleusercontent.com/-fsVsOfiYWxE/AAAAAAAAAAI/AAAAAAAAAAA/vBRv_lPQwLU/s40-c-k-mo/photo.jpg",
                                "post_date": "Jun 20, 2018",
                                "timestamp": "2018-06-20 00:00:00 +00:00",
                                "links": [
                                    {
                                        "type": "link_element",
                                        "title": "Learn more",
                                        "url": "https://www.rustybrick.com/cold-calling-recorded-lines.html"
                                    }
                                ]
                            }
                        ]
                    }
                ]
            }
        ]
    }