{"id":16893,"date":"2023-05-09T12:57:21","date_gmt":"2023-05-09T12:57:21","guid":{"rendered":"https:\/\/docs_v3.dataforseo.com\/v3\/?page_id=16893"},"modified":"2026-03-11T15:18:34","modified_gmt":"2026-03-11T15:18:34","slug":"business_data-business_listings-categories_aggregation-live","status":"publish","type":"page","link":"https:\/\/docs.dataforseo.com\/v3\/business_data-business_listings-categories_aggregation-live\/","title":{"rendered":"business_data\/business_listings\/categories_aggregation\/live"},"content":{"rendered":"<div class=\"wpb-content-wrapper\"><p>[vc_row][vc_column][vc_column_text]<\/p>\n<h2 id=\"live-business_data-business_listings-categories_aggregation-tasks\">Live Business Listings Categories Aggregation Tasks<\/h2>\n<p>\u200c\u200c<br \/>\nBusiness Listings Categories Aggregation endpoint provides results containing information about groups of related categories along with the number of entities in each category. The provided results are specific to the specified parameters.<\/p>\n<p>[\/vc_column_text]    <div class=\"endpoint\">\n        <img decoding=\"async\" class=\"endpoint__icon\" src=\"https:\/\/docs.dataforseo.com\/v3\/wp-content\/themes\/dataforseo\/assets\/img\/icons\/checked-circle.svg\" alt=\"checked\">\n\n                    POST            <button class=\"btn-reset button-link copy-button\" data-href=\"https:\/\/api.dataforseo.com\/v3\/business_data\/business_listings\/categories_aggregation\/live\">\n                https:\/\/api.dataforseo.com\/v3\/business_data\/business_listings\/categories_aggregation\/live                <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\">\n                    <use href=\"https:\/\/docs.dataforseo.com\/v3\/wp-content\/themes\/dataforseo\/assets\/img\/icons\/sprite.svg#layers\"><\/use>\n                <\/svg>\n            <\/button>\n            <\/div>\n    \t<article class=\"info-card info-card--yellow\">\n\t\t<header class=\"info-card__header\">\n\t\t\t<div class=\"info-card__icon\">\n\t\t\t\t<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\">\n\t\t\t\t\t<use href=\"https:\/\/docs.dataforseo.com\/v3\/wp-content\/themes\/dataforseo\/assets\/img\/icons\/sprite.svg#label\"><\/use>\n\t\t\t\t<\/svg>\n\t\t\t<\/div>\n\t\t\t<div class=\"info-card__title\">Pricing<\/div>\n\t\t<\/header>\n\t\t<div class=\"info-card__content\">\n\t\t\t<p> Your account will be charged for each request. The cost can be calculated on the <a title=\"Pricing\" href=\"https:\/\/dataforseo.com\/pricing\/business-data\/business-listings-api\" target=\"_blank\" rel=\"noopener noreferrer\">Pricing<\/a> page.<\/p>\n\t\t<\/div>\n\t<\/article>\n\t[vc_column_text]All POST data should be sent in the <a href=\"https:\/\/en.wikipedia.org\/wiki\/JSON\">JSON<\/a> format (UTF-8 encoding). The task setting is done using the POST method. When setting a task, you should send all task parameters in the task array of the generic POST array. You can send up to 2000 API calls per minute.<\/p>\n<p>Below you will find a detailed description of the fields you can use for setting a task.<\/p>\n<p><strong>Description of the fields for setting a task:<\/strong><\/p>\n<table style=\"width: 100%; height: 1510px;\">\n<thead>\n<tr style=\"height: 24px;\">\n<th style=\"width: 12.4003%; height: 24px;\">Field name<\/th>\n<th style=\"width: 3.91588%; height: 24px;\">Type<\/th>\n<th style=\"width: 82.9587%; height: 24px;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr style=\"height: 168px;\">\n<td style=\"width: 12.4003%; height: 168px;\"><code>categories<\/code><\/td>\n<td style=\"width: 3.91588%; height: 168px;\">array<\/td>\n<td style=\"width: 82.9587%; height: 168px;\"><em>business categories<\/em><br \/>\noptional field<br \/>\nthe categories you specify are used to search for business listings;<br \/>\nif you don&#8217;t use this field, we will return business listings found in the specified location;<br \/>\nyou can specify <strong>up to 10 categories<\/strong>\n<\/td>\n<\/tr>\n<tr style=\"height: 168px;\">\n<td style=\"width: 12.4003%; height: 168px;\"><code>description<\/code><\/td>\n<td style=\"width: 3.91588%; height: 168px;\">string<\/td>\n<td style=\"width: 82.9587%; height: 168px;\"><em>description of the element in SERP<\/em><br \/>\noptional field<br \/>\nthe description of the business entity for which the results are collected;<br \/>\ncan contain up to 200 characters\n<\/td>\n<\/tr>\n<tr style=\"height: 168px;\">\n<td style=\"width: 12.4003%; height: 168px;\"><code>title<\/code><\/td>\n<td style=\"width: 3.91588%; height: 168px;\">string<\/td>\n<td style=\"width: 82.9587%; height: 168px;\"><em>title of the element in SERP<\/em><br \/>\noptional field<br \/>\nthe name of the business entity for which the results are collected;<br \/>\ncan contain up to 200 characters\n<\/td>\n<\/tr>\n<tr style=\"height: 168px;\">\n<td style=\"width: 12.4003%; height: 168px;\"><code>is_claimed<\/code><\/td>\n<td style=\"width: 3.91588%; height: 168px;\">boolean<\/td>\n<td style=\"width: 82.9587%; height: 168px;\"><em>indicates whether the business is verified by its owner on Google Maps<\/em><br \/>\noptional field\n<\/td>\n<\/tr>\n<tr style=\"height: 96px;\">\n<td style=\"width: 12.4003%; height: 96px;\"><code>location_coordinate<\/code><\/td>\n<td style=\"width: 3.91588%; height: 96px;\">string<\/td>\n<td style=\"width: 82.9587%; height: 96px;\"><em>GPS coordinates of a location<\/em><br \/>\noptional field<br \/>\n<code>location_coordinate<\/code> parameter should be specified in the <em>&#8220;latitude,longitude,radius&#8221;<\/em> format<br \/>\nthe maximum number of decimal digits for <em>&#8220;latitude&#8221;<\/em> and <em>&#8220;longitude&#8221;<\/em>: 7<br \/>\nthe minimum value for <em>&#8220;radius&#8221;<\/em>: <code>1<\/code><br \/>\nthe maximum value for <em>&#8220;radius&#8221;<\/em>: <code>100000<\/code><br \/>\nexample:<br \/>\n<code class=\"long-string\">53.476225,-2.243572,200<\/code><\/td>\n<\/tr>\n<tr style=\"height: 48px;\">\n<td style=\"width: 12.4003%; height: 48px;\"><code>initial_dataset_filters<\/code><\/td>\n<td style=\"width: 3.91588%; height: 48px;\">array<\/td>\n<td style=\"width: 82.9587%; height: 48px;\"><em>array of results filtering parameters<\/em><br \/>\noptional field<br \/>\n<strong>you can add several filters at once (8 filters maximum)<\/strong><br \/>\nyou should set a logical operator <code>and<\/code>, <code>or<\/code> between the conditions<br \/>\nthe following operators are supported:<br \/>\n<code>regex<\/code>, <code>not_regex<\/code>, <code>&lt;<\/code>, <code>&lt;=<\/code>, <code>&gt;<\/code>, <code>&gt;=<\/code>, <code>=<\/code>, <code>&lt;&gt;<\/code>, <code>in<\/code>, <code>not_in<\/code>, <code>like<\/code>, <code>not_like<\/code>, <code>match<\/code>, <code>not_match<\/code><br \/>\nyou can use the <code>%<\/code> operator with <code>like<\/code> and <code>not_like<\/code> to match any string of zero or more characters<br \/>\nexample:<br \/>\n<code>[\"rating.value\",\">\",3]<\/code><\/p>\n<p>you can receive the list of available filters\u00a0by making a separate request to <code>https:\/\/api.dataforseo.com\/v3\/business_data\/business_listings\/available_filters<\/code><br \/>\nThe full list of possible filters is available <a href=\"\/v3\/business_data\/business_listings\/filters\/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">here.<\/a>\n<\/td>\n<\/tr>\n<tr style=\"height: 192px;\">\n<td style=\"width: 12.4003%; height: 169px;\"><code>internal_list_limit<\/code><\/td>\n<td style=\"width: 3.91588%; height: 169px;\">integer<\/td>\n<td style=\"width: 82.9587%; height: 169px;\"><em>maximum number of elements within internal arrays<\/em><br \/>\noptional field<br \/>\nyou can use this field to limit the number of elements within the aggregated categories<br \/>\ndefault value: <code>10<\/code>\n<\/td>\n<\/tr>\n<tr style=\"height: 192px;\">\n<td style=\"width: 12.4003%; height: 169px;\"><code>limit<\/code><\/td>\n<td style=\"width: 3.91588%; height: 169px;\">integer<\/td>\n<td style=\"width: 82.9587%; height: 169px;\"><em>the maximum number of returned businesses<\/em><br \/>\noptional field<br \/>\ndefault value: <code>100<\/code><br \/>\nmaximum value: <code>1000<\/code><\/td>\n<\/tr>\n<tr style=\"height: 192px;\">\n<td style=\"width: 12.4003%; height: 169px;\"><code>offset<\/code><\/td>\n<td style=\"width: 3.91588%; height: 169px;\">integer<\/td>\n<td style=\"width: 82.9587%; height: 169px;\"><em>the maximum number of returned businesses<\/em><br \/>\noptional field\n<\/td>\n<\/tr>\n<tr style=\"height: 96px;\">\n<td style=\"width: 12.4003%; height: 96px;\"><code>tag<\/code><\/td>\n<td style=\"width: 3.9884%; height: 96px;\">string<\/td>\n<td style=\"width: 82.8862%; height: 96px;\"><em>user-defined task identifier<\/em><br \/>\noptional field<br \/>\n<em>the character limit is 255<\/em><br \/>\nyou can use this parameter to identify the task and match it with the result<br \/>\nyou will find the specified <code>tag<\/code> value in the <code>data<\/code> object of the response<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u200c\u200c\u200c\u200c\u200c<br \/>\nAs a response of the API server, you will receive <a href=\"https:\/\/en.wikipedia.org\/wiki\/JSON\">JSON<\/a>-encoded data containing a <code>tasks<\/code> array with the information specific to the set tasks.<\/p>\n<p><strong>Description of the fields in the results array:<\/strong><\/p>\n<table style=\"width: 77.3646%; height: 552px;\">\n<thead>\n<tr style=\"height: 24px;\">\n<th style=\"width: 38.423%; height: 24px;\">Field name<\/th>\n<th style=\"width: 1.25156%; height: 24px;\">Type<\/th>\n<th style=\"width: 61.7021%; height: 24px;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr style=\"height: 48px;\">\n<td style=\"width: 24.3517%; height: 48px;\"><code>version<\/code><\/td>\n<td style=\"width: 6.19209%; height: 48px;\">string<\/td>\n<td style=\"width: 79.8065%; height: 48px;\"><em>the current version of the API<\/em><\/td>\n<\/tr>\n<tr style=\"height: 48px;\">\n<td style=\"width: 38.423%; height: 48px;\"><code>status_code<\/code><\/td>\n<td style=\"width: 1.75219%; height: 48px;\">integer<\/td>\n<td style=\"width: 61.2015%; height: 48px;\"><i>general status code<\/i><br \/>\nyou can find the full list of the response codes <a href=\"\/v3\/appendix\/errors\">here<\/a><br \/>\n<strong>Note:<\/strong> we strongly recommend designing a necessary system for handling related exceptional or error conditions<\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 24.3517%; height: 24px;\"><code>status_message<\/code><\/td>\n<td style=\"width: 6.19209%; height: 24px;\">string<\/td>\n<td style=\"width: 79.8065%; height: 24px;\"><em>general informational message<\/em><br \/>\nyou can find the full list of general informational messages <a href=\"\/v3\/appendix\/errors\">here<\/a><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 38.423%; height: 24px;\"><code>time<\/code><\/td>\n<td style=\"width: 1.25156%; height: 24px;\">string<\/td>\n<td style=\"width: 61.7021%; height: 24px;\"><em>execution time, seconds<\/em><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 38.423%; height: 24px;\"><code>cost<\/code><\/td>\n<td style=\"width: 1.25156%; height: 24px;\">float<\/td>\n<td style=\"width: 61.7021%; height: 24px;\"><em>total tasks cost, USD<\/em><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 38.423%; height: 24px;\"><code>tasks_count<\/code><\/td>\n<td style=\"width: 1.25156%; height: 24px;\">integer<\/td>\n<td style=\"width: 61.7021%; height: 24px;\"><em>the number of tasks in the <strong><code>tasks<\/code><\/strong>array<\/em><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 38.423%; height: 24px;\"><code>tasks_error<\/code><\/td>\n<td style=\"width: 1.25156%; height: 24px;\">integer<\/td>\n<td style=\"width: 61.7021%; height: 24px;\"><em>the number of tasks in the <strong><code>tasks<\/code><\/strong> array returned with an error<\/em><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 38.423%; height: 24px;\"><strong><code>tasks<\/code><\/strong><\/td>\n<td style=\"width: 1.25156%; height: 24px;\">array<\/td>\n<td style=\"width: 61.7021%; height: 24px;\"><em>array of tasks<\/em><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 38.423%; height: 24px;\">\u00a0 \u00a0 \u00a0 \u00a0 <code>id<\/code><\/td>\n<td style=\"width: 1.25156%; height: 24px;\">string<\/td>\n<td style=\"width: 61.7021%; height: 24px;\"><em>unique task identifier in our system<\/em><br \/>\nin the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Universally_unique_identifier\">Universally unique identifier (UUID)<\/a> format<\/td>\n<\/tr>\n<tr style=\"height: 48px;\">\n<td style=\"width: 38.423%; height: 48px;\">\u00a0 \u00a0 \u00a0 \u00a0 <code>status_code<\/code><\/td>\n<td style=\"width: 1.25156%; height: 48px;\">integer<\/td>\n<td style=\"width: 61.7021%; height: 48px;\"><em>status code of the task<\/em><br \/>\ngenerated by DataForSEO; can be within the following range: 10000-60000<\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 38.423%; height: 24px;\">\u00a0 \u00a0 \u00a0 \u00a0 <code>status_message<\/code><\/td>\n<td style=\"width: 1.25156%; height: 24px;\">string<\/td>\n<td style=\"width: 61.7021%; height: 24px;\"><em>informational message of the task<\/em><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 38.423%; height: 24px;\">\u00a0 \u00a0 \u00a0 \u00a0 <code>time<\/code><\/td>\n<td style=\"width: 1.25156%; height: 24px;\">string<\/td>\n<td style=\"width: 61.7021%; height: 24px;\"><em>execution time, seconds<\/em><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 38.423%; height: 24px;\">\u00a0 \u00a0 \u00a0 \u00a0 <code>cost<\/code><\/td>\n<td style=\"width: 1.25156%; height: 24px;\">float<\/td>\n<td style=\"width: 61.7021%; height: 24px;\"><em>cost of the task, USD<\/em><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 38.423%; height: 24px;\">\u00a0 \u00a0 \u00a0 \u00a0 <code>result_count<\/code><\/td>\n<td style=\"width: 1.25156%; height: 24px;\">integer<\/td>\n<td style=\"width: 61.7021%; height: 24px;\"><em>number of elements in the <code>result<\/code> array<\/em><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 38.423%; height: 24px;\">\u00a0 \u00a0 \u00a0 \u00a0 <code>path<\/code><\/td>\n<td style=\"width: 1.25156%; height: 24px;\">array<\/td>\n<td style=\"width: 61.7021%; height: 24px;\"><em>URL path<\/em><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 38.423%; height: 24px;\">\u00a0 \u00a0 \u00a0 \u00a0 <code>data<\/code><\/td>\n<td style=\"width: 1.25156%; height: 24px;\">object<\/td>\n<td style=\"width: 61.7021%; height: 24px;\"><em>contains the same parameters that you specified in the POST request<\/em><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 38.423%; height: 24px;\">\u00a0 \u00a0 \u00a0 \u00a0 <strong><code>result<\/code><\/strong><\/td>\n<td style=\"width: 1.25156%; height: 24px;\">array<\/td>\n<td style=\"width: 61.7021%; height: 24px;\"><em>array of results<\/em><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 24.3517%; height: 24px;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <code>total_count<\/code><\/td>\n<td style=\"width: 6.19209%; height: 24px;\">integer<\/td>\n<td style=\"width: 79.8065%; height: 24px;\"><em>total number of results in our database relevant to your request<\/em><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 24.3517%; height: 24px;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <code>count<\/code><\/td>\n<td style=\"width: 6.19209%; height: 24px;\">integer<\/td>\n<td style=\"width: 79.8065%; height: 24px;\"><em>item types<\/em><br \/>\nthe number of items in the <code>items<\/code> array<\/td>\n<\/tr>\n<tr style=\"height: 192px;\">\n<td style=\"width: 12.4003%; height: 169px;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0<code>offset<\/code><\/td>\n<td style=\"width: 3.91588%; height: 169px;\">integer<\/td>\n<td style=\"width: 82.9587%; height: 169px;\"><em>offset in the results array of returned categories<\/em>\n<\/td>\n<\/tr>\n<tr style=\"height: 192px;\">\n<td style=\"width: 12.4003%; height: 169px;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0<code>offset_token<\/code><\/td>\n<td style=\"width: 3.91588%; height: 169px;\">string<\/td>\n<td style=\"width: 82.9587%; height: 169px;\"><em>token for subsequent requests<\/em><br \/>\nby specifying the unique <code>offset_token<\/code> when setting a new task, you will get the subsequent results of the initial task;<br \/>\n<code>offset_token<\/code> values are unique for each subsequent task\n<\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 24.3517%; height: 24px;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <strong><code>items<\/code><\/strong><\/td>\n<td style=\"width: 6.19209%; height: 24px;\">array<\/td>\n<td style=\"width: 79.8065%; height: 24px;\"><em>encountered item types<\/em><br \/>\ntypes of search engine results encountered in the <code>items<\/code> array;<br \/>\npossible item types: <code>business_category<\/code><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 24.3517%; height: 24px;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <code>type<\/code><\/td>\n<td style=\"width: 6.19209%; height: 24px;\">string<\/td>\n<td style=\"width: 79.8065%; height: 24px;\"><em>type of element = <strong>\u2018business_category\u2019<\/strong><\/em><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 24.3517%; height: 24px;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <code>categories<\/code><\/td>\n<td style=\"width: 6.19209%; height: 24px;\">array<\/td>\n<td style=\"width: 79.8065%; height: 24px;\"><em>business categories<\/em><br \/>\nGoogle My Business general category that best describes the cluster of related categories<\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 24.3517%; height: 24px;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <code>aggregation<\/code><\/td>\n<td style=\"width: 6.19209%; height: 24px;\">object<\/td>\n<td style=\"width: 79.8065%; height: 24px;\"><em>aggregation of the category<\/em>\n<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 24.3517%; height: 25px;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <code>top_categories<\/code><\/td>\n<td style=\"width: 5.77015%; height: 25px;\">object<\/td>\n<td style=\"width: 80.2284%; height: 25px;\"><em>the most mentioned related categories<\/em><br \/>\ntop categories displayed with the number of businesses in each category\n<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 24.3517%; height: 25px;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <code>top_countries<\/code><\/td>\n<td style=\"width: 5.77015%; height: 25px;\">object<\/td>\n<td style=\"width: 80.2284%; height: 25px;\"><em>the most mentioned counties<\/em><br \/>\ncountry codes with the biggest number of businesses in the category<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 24.3517%; height: 25px;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <code>websites_count<\/code><\/td>\n<td style=\"width: 5.77015%; height: 25px;\">integer<\/td>\n<td style=\"width: 80.2284%; height: 25px;\"><em>number of unique websites<\/em>\n<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 24.3517%; height: 25px;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <code>count<\/code><\/td>\n<td style=\"width: 5.77015%; height: 25px;\">integer<\/td>\n<td style=\"width: 80.2284%; height: 25px;\"><em>number of unique entities<\/em>\n<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 24.3517%; height: 25px;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <code>top_attributes<\/code><\/td>\n<td style=\"width: 5.77015%; height: 25px;\">object<\/td>\n<td style=\"width: 80.2284%; height: 25px;\"><em>the most mentioned service details<\/em><br \/>\nservice details of a business entity displayed in a form of checks and the number of entities mentioning each attribute<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 24.3517%; height: 25px;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <code>top_place_topics<\/code><\/td>\n<td style=\"width: 5.77015%; height: 25px;\">object<\/td>\n<td style=\"width: 80.2284%; height: 25px;\"><em>top keywords mentioned in customer reviews<\/em><br \/>\ncontains most popular keywords related to products\/services mentioned in customer reviews of a business entity and the number of reviews mentioning each keyword\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u200c\u200c[\/vc_column_text][\/vc_column][\/vc_row]<\/p>\n<blockquote><p>Instead of \u2018login\u2019 and \u2018password\u2019 use your credentials from https:\/\/app.dataforseo.com\/api-access<\/p><\/blockquote><div id=\"curl\" class=\"tab-content example__content\"><div class=\"example__code\"><pre><code class=\"language-bash hljs\"># Instead of &#039;login&#039; and &#039;password&#039; use your credentials from https:\/\/app.dataforseo.com\/api-access \r\nlogin=&quot;login&quot; \r\npassword=&quot;password&quot; \r\ncred=&quot;$(printf ${login}:${password} | base64)&quot; \r\ncurl --location --request POST &quot;https:\/\/api.dataforseo.com\/v3\/business_data\/business_listings\/categories_aggregation\/live&quot; \r\n--header &quot;Authorization: Basic ${cred}&quot;  \r\n--header &quot;Content-Type: application\/json&quot; \r\n--data-raw &#039;[\r\n  {\r\n    &quot;categories&quot;: [\r\n      &quot;pizza_restaurant&quot;\r\n    ],\r\n    &quot;description&quot;: &quot;pizza&quot;,\r\n    &quot;title&quot;: &quot;pizza&quot;,\r\n    &quot;is_claimed&quot;: true,\r\n    &quot;location_coordinate&quot;: &quot;53.476225,-2.243572,10&quot;,\r\n    &quot;initial_dataset_filters&quot;: [\r\n      [\r\n        &quot;rating.value&quot;,\r\n        &quot;&gt;&quot;,\r\n        3\r\n      ]\r\n    ],\r\n    &quot;limit&quot;: 3\r\n  }\r\n]&#039;<\/code><\/pre><\/div><\/div><div id=\"php\" class=\"tab-content example__content\"><div class=\"example__code\"><pre><code class=\"language-php hljs\">&lt;?php\r\n\/\/ You can download this file from here https:\/\/cdn.dataforseo.com\/v3\/examples\/php\/php_RestClient.zip?202197\r\nrequire(&#039;RestClient.php&#039;);\r\n$api_url = &#039;https:\/\/api.dataforseo.com\/&#039;;\r\n\/\/ Instead of &#039;login&#039; and &#039;password&#039; use your credentials from https:\/\/app.dataforseo.com\/api-access\r\n$client = new RestClient($api_url, null, &#039;login&#039;, &#039;password&#039;);\r\n$post_array = array();\r\n\/\/ simple way to get a result\r\n$post_array[] = array(\r\n   &quot;categories&quot; =&gt; [&quot;pizza_restaurant&quot;],\r\n   &quot;description&quot; =&gt; &quot;pizza&quot;,\r\n   &quot;title&quot; =&gt; &quot;pizza&quot;,\r\n   &quot;is_claimed&quot; =&gt; true,\r\n   &quot;location_coordinate&quot; =&gt; &quot;53.476225,-2.243572,10&quot;,\r\n   &quot;initial_dataset_filters&quot; =&gt; [\r\n      [ &quot;rating.value&quot;,&quot;&gt;&quot;,3 ]\r\n   ],\r\n   &quot;internal_list_limit&quot; =&gt; 10,\r\n   &quot;limit&quot; =&gt; 3\r\n);\r\ntry {\r\n   \/\/ POST \/v3\/business_data\/business_listings\/categories_aggregation\/live\r\n   \/\/ the full list of possible parameters is available in documentation\r\n   $result = $client-&gt;post(&#039;\/v3\/business_data\/business_listings\/categories_aggregation\/live&#039;, $post_array);\r\n   print_r($result);\r\n   \/\/ do something with post result\r\n} catch (RestClientException $e) {\r\n   echo &quot;n&quot;;\r\n   print &quot;HTTP code: {$e-&gt;getHttpCode()}n&quot;;\r\n   print &quot;Error code: {$e-&gt;getCode()}n&quot;;\r\n   print &quot;Message: {$e-&gt;getMessage()}n&quot;;\r\n   print  $e-&gt;getTraceAsString();\r\n   echo &quot;n&quot;;\r\n}\r\n$client = null;\r\n?&gt;<\/code><\/pre><\/div><\/div><div id=\"javascript\" class=\"tab-content example__content\"><div class=\"example__code\"><pre><code class=\"language-javascript hljs\">const post_array = [];\r\n\r\npost_array.push({\r\n    &quot;categories&quot;: [\r\n      &quot;pizza_restaurant&quot;\r\n    ],\r\n    &quot;description&quot;: &quot;pizza&quot;,\r\n    &quot;title&quot;: &quot;pizza&quot;,\r\n    &quot;is_claimed&quot;: true,\r\n    &quot;location_coordinate&quot;: &quot;53.476225,-2.243572,10&quot;,\r\n    &quot;initial_dataset_filters&quot;: [\r\n      [\r\n        &quot;rating.value&quot;,\r\n        &quot;&gt;&quot;,\r\n        3\r\n      ]\r\n    ],\r\n    &quot;limit&quot;: 3\r\n  });\r\n\r\nconst axios = require(&#039;axios&#039;);\r\n\r\naxios({\r\n  method: &#039;post&#039;,\r\n  url: &#039;https:\/\/api.dataforseo.com\/v3\/business_data\/business_listings\/categories_aggregation\/live&#039;,\r\n  auth: {\r\n    username: &#039;login&#039;,\r\n    password: &#039;password&#039;\r\n  },\r\n  data: post_array,\r\n  headers: {\r\n    &#039;content-type&#039;: &#039;application\/json&#039;\r\n  }\r\n}).then(function (response) {\r\n  var result = response[&#039;data&#039;][&#039;tasks&#039;];\r\n  \/\/ Result data\r\n  console.log(result);\r\n}).catch(function (error) {\r\n  console.log(error);\r\n});<\/code><\/pre><\/div><\/div><div id=\"python\" class=\"tab-content example__content\"><div class=\"example__code\"><pre><code class=\"language-python hljs\">from client import RestClient\r\n# You can download this file from here https:\/\/cdn.dataforseo.com\/v3\/examples\/python\/python_Client.zip\r\nclient = RestClient(&quot;login&quot;, &quot;password&quot;)\r\npost_data = dict()\r\n# simple way to set a task\r\npost_data[len(post_data)] = dict(\r\n    categories=[\r\n        &quot;pizza_restaurant&quot;\r\n    ],\r\n    description=&quot;pizza&quot;,\r\n    title=&quot;pizza&quot;,\r\n    is_claimed=True,\r\n    location_coordinate=&quot;53.476225,-2.243572,10&quot;,\r\n    initial_dataset_filters=[\r\n        [&quot;rating.value&quot;,&quot;&gt;&quot;,3]\r\n    ],\r\n    internal_list_limit=10,\r\n    limit=3\r\n)\r\n# POST \/v3\/business_data\/business_listings\/categories_aggregation\/live\r\nresponse = client.post(&quot;\/v3\/business_data\/business_listings\/categories_aggregation\/live&quot;, post_data)\r\n# you can find the full list of the response codes here https:\/\/docs.dataforseo.com\/v3\/appendix\/errors\r\nif response[&quot;status_code&quot;] == 20000:\r\n    print(response)\r\n    # do something with result\r\nelse:\r\n    print(&quot;error. Code: %d Message: %s&quot; % (response[&quot;status_code&quot;], response[&quot;status_message&quot;]))<\/code><\/pre><\/div><\/div><div id=\"csharp\" class=\"tab-content example__content\"><div class=\"example__code\"><pre><code class=\"language-csharp hljs\">using Newtonsoft.Json;\r\nusing System;\r\nusing System.Collections.Generic;\r\nusing System.Net.Http;\r\nusing System.Net.Http.Headers;\r\nusing System.Text;\r\nusing System.Threading.Tasks;\r\n\r\nnamespace DataForSeoDemos\r\n{\r\n    public static partial class Demos\r\n    {\r\n        public static async Task business_data_business_listings_categories_aggregation_live()\r\n        {\r\n            var httpClient = new HttpClient\r\n            {\r\n                BaseAddress = new Uri(&quot;https:\/\/api.dataforseo.com\/&quot;),\r\n                \/\/ Instead of &#039;login&#039; and &#039;password&#039; use your credentials from https:\/\/app.dataforseo.com\/api-access\r\n                \/\/DefaultRequestHeaders = { Authorization = new AuthenticationHeaderValue(&quot;Basic&quot;, Convert.ToBase64String(Encoding.ASCII.GetBytes(&quot;login:password&quot;))) }\r\n            };\r\n            var postData = new List&lt;object&gt;();\r\n            \/\/ You can set only one task at a time\r\n            postData.Add(new\r\n            {\r\n                categories = new[]\r\n                {\r\n                    &quot;pizza_restaurant&quot;\r\n                },\r\n                description = &quot;pizza&quot;,\r\n                title = &quot;pizza&quot;,\r\n                is_claimed = true,\r\n                location_coordinate = &quot;53.476225,-2.243572,10&quot;,\r\n                initial_dataset_filters = new object[]\r\n                {\r\n                    new object[] { &quot;rating.value&quot;, &quot;&gt;&quot;, 3 }\r\n                },\r\n                limit = 3\r\n            });\r\n            \/\/ POST \/v3\/business_data\/business_listings\/categories_aggregation\/live\r\n            \/\/ the full list of possible parameters is available in documentation\r\n            var taskPostResponse = await httpClient.PostAsync(&quot;\/v3\/business_data\/business_listings\/categories_aggregation\/live&quot;, new StringContent(JsonConvert.SerializeObject(postData)));\r\n            var result = JsonConvert.DeserializeObject&lt;dynamic&gt;(await taskPostResponse.Content.ReadAsStringAsync());\r\n            \/\/ you can find the full list of the response codes here https:\/\/docs.dataforseo.com\/v3\/appendix\/errors\r\n            if (result.status_code == 20000)\r\n            {\r\n                \/\/ do something with result\r\n                Console.WriteLine(result);\r\n            }\r\n            else\r\n                Console.WriteLine($&quot;error. Code: {result.status_code} Message: {result.status_message}&quot;);\r\n        }\r\n    }\r\n}<\/code><\/pre><\/div><\/div><blockquote><p>The above command returns JSON structured like this:<\/p><\/blockquote><div class=\"example example--json\"><div class=\"example__content\"><div class=\"example__code example__code-json\"><pre><code class=\"language-json hljs\">{\r\n  &quot;version&quot;: &quot;0.1.20221214&quot;,\r\n  &quot;status_code&quot;: 20000,\r\n  &quot;status_message&quot;: &quot;Ok.&quot;,\r\n  &quot;time&quot;: &quot;0.3505 sec.&quot;,\r\n  &quot;cost&quot;: 0.0109,\r\n  &quot;tasks_count&quot;: 1,\r\n  &quot;tasks_error&quot;: 0,\r\n  &quot;tasks&quot;: [\r\n    {\r\n      &quot;id&quot;: &quot;04301510-1535-0545-0000-92269c6091b9&quot;,\r\n      &quot;status_code&quot;: 20000,\r\n      &quot;status_message&quot;: &quot;Ok.&quot;,\r\n      &quot;time&quot;: &quot;0.2798 sec.&quot;,\r\n      &quot;cost&quot;: 0.0109,\r\n      &quot;result_count&quot;: 1,\r\n      &quot;path&quot;: [\r\n        &quot;v3&quot;,\r\n        &quot;business_data&quot;,\r\n        &quot;business_listings&quot;,\r\n        &quot;categories_aggregation&quot;,\r\n        &quot;live&quot;\r\n      ],\r\n      &quot;data&quot;: {\r\n        &quot;api&quot;: &quot;business_data&quot;,\r\n        &quot;function&quot;: &quot;categories_aggregation&quot;,\r\n        &quot;categories&quot;: [\r\n          &quot;pizza_restaurant&quot;\r\n        ],\r\n        &quot;description&quot;: &quot;pizza&quot;,\r\n        &quot;title&quot;: &quot;pizza&quot;,\r\n        &quot;is_claimed&quot;: true,\r\n        &quot;location_coordinate&quot;: &quot;53.476225,-2.243572,10&quot;,\r\n        &quot;initial_dataset_filters&quot;: [\r\n          [\r\n            &quot;rating.value&quot;,\r\n            &quot;&gt;&quot;,\r\n            3\r\n          ]\r\n        ],\r\n        &quot;limit&quot;: 3\r\n      },\r\n      &quot;result&quot;: [\r\n        {\r\n          &quot;total_count&quot;: 26,\r\n          &quot;count&quot;: 3,\r\n          &quot;offset&quot;: null,\r\n          &quot;offset_token&quot;: null,\r\n          &quot;items&quot;: [\r\n            {\r\n              &quot;type&quot;: &quot;business_category&quot;,\r\n              &quot;categoiries&quot;: [\r\n                &quot;pizza_restaurant&quot;\r\n              ],\r\n              &quot;aggregation&quot;: {\r\n                &quot;top_categories&quot;: {\r\n                  &quot;pizza_restaurant&quot;: 32,\r\n                  &quot;pizzatakeaway&quot;: 14,\r\n                  &quot;restaurant&quot;: 12,\r\n                  &quot;pizza_delivery_service&quot;: 11,\r\n                  &quot;delivery_service&quot;: 7,\r\n                  &quot;italian_restaurant&quot;: 7,\r\n                  &quot;neapolitan_restaurant&quot;: 6,\r\n                  &quot;fast_food_restaurant&quot;: 4,\r\n                  &quot;meal_takeaway&quot;: 3,\r\n                  &quot;vegan_restaurant&quot;: 3\r\n                },\r\n                &quot;top_countries&quot;: {\r\n                  &quot;GB&quot;: 32\r\n                },\r\n                &quot;websites_count&quot;: 18,\r\n                &quot;count&quot;: 32,\r\n                &quot;top_attributes&quot;: {\r\n                  &quot;has_delivery&quot;: 32,\r\n                  &quot;has_takeout&quot;: 32,\r\n                  &quot;feels_casual&quot;: 28,\r\n                  &quot;pay_debit_card&quot;: 26,\r\n                  &quot;pay_mobile_nfc&quot;: 23,\r\n                  &quot;has_no_contact_delivery&quot;: 20,\r\n                  &quot;serves_dessert&quot;: 20,\r\n                  &quot;serves_dinner&quot;: 18,\r\n                  &quot;accepts_reservations&quot;: 17,\r\n                  &quot;has_wheelchair_accessible_entrance&quot;: 17\r\n                },\r\n                &quot;top_place_topics&quot;: {\r\n                  &quot;price&quot;: 9,\r\n                  &quot;order&quot;: 8,\r\n                  &quot;money&quot;: 7,\r\n                  &quot;atmosphere&quot;: 6,\r\n                  &quot;dominos&quot;: 6,\r\n                  &quot;vegan&quot;: 6,\r\n                  &quot;cold&quot;: 5,\r\n                  &quot;kids&quot;: 5,\r\n                  &quot;phone&quot;: 5,\r\n                  &quot;dough&quot;: 4\r\n                }\r\n              }\r\n            },\r\n            {\r\n              &quot;type&quot;: &quot;business_category&quot;,\r\n              &quot;categoiries&quot;: [\r\n                &quot;pizzatakeaway&quot;\r\n              ],\r\n              &quot;aggregation&quot;: {\r\n                &quot;top_categories&quot;: {\r\n                  &quot;pizza_restaurant&quot;: 14,\r\n                  &quot;pizzatakeaway&quot;: 14,\r\n                  &quot;pizza_delivery_service&quot;: 8,\r\n                  &quot;restaurant&quot;: 8,\r\n                  &quot;fast_food_restaurant&quot;: 3,\r\n                  &quot;family_restaurant&quot;: 2,\r\n                  &quot;italian_restaurant&quot;: 2,\r\n                  &quot;meal_takeaway&quot;: 2,\r\n                  &quot;vegan_restaurant&quot;: 2,\r\n                  &quot;buffet_restaurant&quot;: 1\r\n                },\r\n                &quot;top_countries&quot;: {\r\n                  &quot;GB&quot;: 14\r\n                },\r\n                &quot;websites_count&quot;: 7,\r\n                &quot;count&quot;: 14,\r\n                &quot;top_attributes&quot;: {\r\n                  &quot;has_delivery&quot;: 14,\r\n                  &quot;has_takeout&quot;: 14,\r\n                  &quot;feels_casual&quot;: 13,\r\n                  &quot;pay_debit_card&quot;: 12,\r\n                  &quot;pay_mobile_nfc&quot;: 12,\r\n                  &quot;has_no_contact_delivery&quot;: 10,\r\n                  &quot;accepts_reservations&quot;: 9,\r\n                  &quot;is_transgender_safespace&quot;: 9,\r\n                  &quot;serves_dessert&quot;: 9,\r\n                  &quot;serves_late_night_food&quot;: 8\r\n                },\r\n                &quot;top_place_topics&quot;: {\r\n                  &quot;price&quot;: 5,\r\n                  &quot;order&quot;: 4,\r\n                  &quot;buffet&quot;: 3,\r\n                  &quot;ice cream&quot;: 3,\r\n                  &quot;kids&quot;: 3,\r\n                  &quot;money&quot;: 3,\r\n                  &quot;pay&quot;: 3,\r\n                  &quot;the pizza&quot;: 3,\r\n                  &quot;app&quot;: 2,\r\n                  &quot;call&quot;: 2\r\n                }\r\n              }\r\n            },\r\n            {\r\n              &quot;type&quot;: &quot;business_category&quot;,\r\n              &quot;categoiries&quot;: [\r\n                &quot;restaurant&quot;\r\n              ],\r\n              &quot;aggregation&quot;: {\r\n                &quot;top_categories&quot;: {\r\n                  &quot;pizza_restaurant&quot;: 12,\r\n                  &quot;restaurant&quot;: 12,\r\n                  &quot;pizzatakeaway&quot;: 8,\r\n                  &quot;pizza_delivery_service&quot;: 5,\r\n                  &quot;italian_restaurant&quot;: 3,\r\n                  &quot;neapolitan_restaurant&quot;: 3,\r\n                  &quot;family_restaurant&quot;: 2,\r\n                  &quot;vegan_restaurant&quot;: 2,\r\n                  &quot;buffet_restaurant&quot;: 1,\r\n                  &quot;delivery_service&quot;: 1\r\n                },\r\n                &quot;top_countries&quot;: {\r\n                  &quot;GB&quot;: 12\r\n                },\r\n                &quot;websites_count&quot;: 3,\r\n                &quot;count&quot;: 12,\r\n                &quot;top_attributes&quot;: {\r\n                  &quot;has_delivery&quot;: 12,\r\n                  &quot;has_takeout&quot;: 12,\r\n                  &quot;accepts_reservations&quot;: 11,\r\n                  &quot;feels_casual&quot;: 11,\r\n                  &quot;is_transgender_safespace&quot;: 11,\r\n                  &quot;pay_debit_card&quot;: 11,\r\n                  &quot;pay_mobile_nfc&quot;: 11,\r\n                  &quot;serves_dessert&quot;: 10,\r\n                  &quot;has_no_contact_delivery&quot;: 8,\r\n                  &quot;has_wheelchair_accessible_entrance&quot;: 8\r\n                },\r\n                &quot;top_place_topics&quot;: {\r\n                  &quot;the pizza&quot;: 4,\r\n                  &quot;buffet&quot;: 3,\r\n                  &quot;ice cream&quot;: 3,\r\n                  &quot;incredible pizza&quot;: 3,\r\n                  &quot;kids&quot;: 3,\r\n                  &quot;order&quot;: 3,\r\n                  &quot;pay&quot;: 3,\r\n                  &quot;vegan&quot;: 3,\r\n                  &quot;app&quot;: 2,\r\n                  &quot;atmosphere&quot;: 2\r\n                }\r\n              }\r\n            }\r\n          ]\r\n        }\r\n      ]\r\n    }\r\n  ]\r\n}<\/code><\/pre><\/div><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>[vc_row][vc_column][vc_column_text] Live Business Listings Categories Aggregation Tasks \u200c\u200c Business Listings Categories Aggregation endpoint provides results containing information about groups of related categories along with the number of entities in each category. The provided results are specific to the specified parameters. [\/vc_column_text] POST https:\/\/api.dataforseo.com\/v3\/business_data\/business_listings\/categories_aggregation\/live Pricing Your account will be charged for each request. The cost can [&hellip;]<\/p>\n","protected":false},"author":11,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"template.php","meta":{"apibase_doc_request_yaml":"","apibase_doc_request_additional_yaml":"","apibase_doc_response_yaml":"","footnotes":""},"class_list":["post-16893","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/pages\/16893","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/comments?post=16893"}],"version-history":[{"count":29,"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/pages\/16893\/revisions"}],"predecessor-version":[{"id":24094,"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/pages\/16893\/revisions\/24094"}],"wp:attachment":[{"href":"https:\/\/docs.dataforseo.com\/v3\/wp-json\/wp\/v2\/media?parent=16893"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}