curl -X POST "https://client.tukanmx.com/tukan-atlas/places/grouped/" \
-H "Authorization: Token $API_TUKAN" \
-H "Content-Type: application/json" \
-d '{
"group_by": "brand",
"geo_filter": {"latitude": 19.7060, "longitude": -101.1950, "radius_km": 2}
}'
import os
import requests
headers = {"Authorization": f"Token {os.environ['API_TUKAN']}"}
# Marcas con mas presencia a 2 km del centro de Morelia
resp = requests.post(
"https://client.tukanmx.com/tukan-atlas/places/grouped/",
headers=headers,
json={
"group_by": "brand",
"geo_filter": {"latitude": 19.7060, "longitude": -101.1950, "radius_km": 2},
},
)
resp.raise_for_status()
for marca in resp.json()["results"][:3]:
print(marca["brand_name"], marca["places_count"])
{
"count": 45,
"geo_context": {
"state": "Michoacán de Ocampo",
"municipality": "Morelia",
"zipcode": "58000"
},
"results": [
{
"brand_id": 5303,
"places_count": 36,
"brand_name": "OXXO",
"brand_name_en": "OXXO",
"institution_id": "CCO8605231N4.MX",
"institution_name": "Cadena Comercial OXXO",
"legal_name": "Cadena Comercial OXXO, S.A. de C.V.",
"categories": ["Minisuper"]
},
{
"brand_id": 5801,
"places_count": 21,
"brand_name": "Farmacias Similares",
"brand_name_en": "Farmacias Similares",
"institution_id": "FSI970908ML5.MX",
"institution_name": "Farmacias de Similares",
"legal_name": "Farmacias de Similares S.A. de C.V.",
"categories": ["Farmacia"]
}
]
}
Lugares
Conteo por entidad
Cuenta lugares por marca, institución o categoría dentro de un radio, una dirección o una entidad geográfica.
POST
/
places
/
grouped
/
curl -X POST "https://client.tukanmx.com/tukan-atlas/places/grouped/" \
-H "Authorization: Token $API_TUKAN" \
-H "Content-Type: application/json" \
-d '{
"group_by": "brand",
"geo_filter": {"latitude": 19.7060, "longitude": -101.1950, "radius_km": 2}
}'
import os
import requests
headers = {"Authorization": f"Token {os.environ['API_TUKAN']}"}
# Marcas con mas presencia a 2 km del centro de Morelia
resp = requests.post(
"https://client.tukanmx.com/tukan-atlas/places/grouped/",
headers=headers,
json={
"group_by": "brand",
"geo_filter": {"latitude": 19.7060, "longitude": -101.1950, "radius_km": 2},
},
)
resp.raise_for_status()
for marca in resp.json()["results"][:3]:
print(marca["brand_name"], marca["places_count"])
{
"count": 45,
"geo_context": {
"state": "Michoacán de Ocampo",
"municipality": "Morelia",
"zipcode": "58000"
},
"results": [
{
"brand_id": 5303,
"places_count": 36,
"brand_name": "OXXO",
"brand_name_en": "OXXO",
"institution_id": "CCO8605231N4.MX",
"institution_name": "Cadena Comercial OXXO",
"legal_name": "Cadena Comercial OXXO, S.A. de C.V.",
"categories": ["Minisuper"]
},
{
"brand_id": 5801,
"places_count": 21,
"brand_name": "Farmacias Similares",
"brand_name_en": "Farmacias Similares",
"institution_id": "FSI970908ML5.MX",
"institution_name": "Farmacias de Similares",
"legal_name": "Farmacias de Similares S.A. de C.V.",
"categories": ["Farmacia"]
}
]
}
Cuenta los lugares activos de una zona, agrupados por marca, institución o categoría.
Los resultados vienen ordenados de mayor a menor, con un
geo_context que ubica el área consultada. El área se define con geo_filter en uno de tres modos.
| Modo | Campos | Ejemplo de uso |
|---|---|---|
| Radio | latitude, longitude, radius_km | Competencia alrededor de una sucursal |
| Dirección | address, radius_km | Lo mismo, sin conocer las coordenadas |
| Entidad | entity_type, entity_codes | Todos los comercios de un código postal o municipio |
Empieza con
group_by: "category" para ver el perfil comercial de la zona, y baja a group_by: "brand" cuando quieras nombres propios. Para obtener los lugares uno por uno, usa listado por entidad.curl -X POST "https://client.tukanmx.com/tukan-atlas/places/grouped/" \
-H "Authorization: Token $API_TUKAN" \
-H "Content-Type: application/json" \
-d '{
"group_by": "brand",
"geo_filter": {"latitude": 19.7060, "longitude": -101.1950, "radius_km": 2}
}'
import os
import requests
headers = {"Authorization": f"Token {os.environ['API_TUKAN']}"}
# Marcas con mas presencia a 2 km del centro de Morelia
resp = requests.post(
"https://client.tukanmx.com/tukan-atlas/places/grouped/",
headers=headers,
json={
"group_by": "brand",
"geo_filter": {"latitude": 19.7060, "longitude": -101.1950, "radius_km": 2},
},
)
resp.raise_for_status()
for marca in resp.json()["results"][:3]:
print(marca["brand_name"], marca["places_count"])
{
"count": 45,
"geo_context": {
"state": "Michoacán de Ocampo",
"municipality": "Morelia",
"zipcode": "58000"
},
"results": [
{
"brand_id": 5303,
"places_count": 36,
"brand_name": "OXXO",
"brand_name_en": "OXXO",
"institution_id": "CCO8605231N4.MX",
"institution_name": "Cadena Comercial OXXO",
"legal_name": "Cadena Comercial OXXO, S.A. de C.V.",
"categories": ["Minisuper"]
},
{
"brand_id": 5801,
"places_count": 21,
"brand_name": "Farmacias Similares",
"brand_name_en": "Farmacias Similares",
"institution_id": "FSI970908ML5.MX",
"institution_name": "Farmacias de Similares",
"legal_name": "Farmacias de Similares S.A. de C.V.",
"categories": ["Farmacia"]
}
]
}
Autorizaciones
Token de autenticación. Formato requerido: Token tu-token (la palabra Token, un espacio y tu token). Solicita tu token escribiendo a contacto@tukanmx.com.
Cuerpo
application/json
Criterio de agrupación de los resultados
Opciones disponibles:
brand, institution, category Filtro geográfico. Modos disponibles: radio (latitude, longitude, radius_km), dirección (address, radius_km) o polígono (entity_type, entity_codes).
Show child attributes
Show child attributes
¿Esta página le ayudó?