POIs

Ejemplo 1 – Endpoint independiente

En este ejemplo, queremos consultar los restaurantes y gimnasios de la Avenida Afonso Pena, en la ciudad de Campo Grande – MS. Para ello, definimos el parámetro categories con las categorías "ALIMENTOS_E_BEBIDAS" y "ACADEMIAS".

En bufferRouteInMeters definimos el radio de búsqueda a lo largo de la ruta y en bufferStoppingPointsInMeters definimos el radio de búsqueda en los puntos de parada. En nuestro caso, los puntos de parada serán los puntos de origen y destino de cada tramo de la ruta. Ambos se definirán como 500 metros.

El parámetro onlyMyPlaces indica si sólo queremos consultar los establecimientos de nuestra base de datos propietaria o si también queremos consultar la base de datos nativa del servicio. Como en este ejemplo todos los establecimientos han sido dados de alta previamente, utilizaremos el valor true.

El parámetro legs es una array de objetos donde cada objeto representa una sección de la ruta. En cada tramo, debemos definir el parámetro points, que contiene las coordenadas que componen la ruta. En este caso, sólo tenemos un leg que corresponde a toda la ruta.

La solicitud completa puede verse a continuación:

{
    "categories": [
        "ALIMENTOS_E_BEBIDAS",
        "ACADEMIAS"
    ],
    "bufferRouteInMeters": 500,
    "bufferStoppingPointsInMeters": 500,
    "onlyMyPlaces": true,
    "legs": [
        {
            "points": [
                {
                    "latitude": -20.46317952376137,
                    "longitude": -54.612278411463116
                },
                {
                    "latitude": -20.463744,
                    "longitude": -54.615746
                },
                {
                    "latitude": -20.464,
                    "longitude": -54.615697
                },
                {
                    "latitude": -20.462782,
                    "longitude": -54.608564
                }
            ]
        }
    ]
}

En la respuesta se devolverá la siguiente información:

  • total – Número entero que contiene el número de establecimientos encontrados en la búsqueda;
  • places – Array de objetos, donde cada objeto representa un establecimiento. Se devolverá la siguiente información:
    • id – Identificador único del establecimiento;
    • name – Nombre del establecimiento;
    • category – Categoría a la que pertenece el establecimiento;
    • subcategory – Subcategoría a la que pertenece el establecimiento;
    • address – Objeto con datos de dirección:
      • street – String para introducir la dirección;
      • number – String para el número de establecimiento;
      • district – (Opcional) String para el barrio;
      • city – String para la ciudad;
      • state – String para el estado;
      • zipcode – String para el código postal;
      • point – Array con las coordenadas del establecimiento:
        • latitude – Coordenada de latitud en grados decimales;
        • longitude – Coordenada de longitud en grados decimales;
    • active – Valor booleano que indica si el establecimiento está activo o no;
    • tags – Etiquetas del establecimiento, en su caso;
    • phones – Números de teléfono de contacto del establecimiento, si están disponibles.

A continuación encontrará la respuesta completa:

{
    "total": 2,
    "legs": [
        {
            "total": 2,
            "places": [
                {
                    "id": "624c3ea5eab1c41162ba996c",
                    "name": "Restaurante Dummy",
                    "category": "ALIMENTOS_E_BEBIDAS",
                    "subCategory": "RESTAURANTES",
                    "address": {
                        "street": "Praça Tiradentes",
                        "number": "23",
                        "city": "Rio de Janeiro",
                        "state": "RJ",
                        "zipcode": "20060-070",
                        "point": {
                            "latitude": -22.90741716416432,
                            "longitude": -43.182738139927416
                        }
                    },
                    "active": true
                },
                {
                    "id": "62431d8583ce9c2ac592db3b",
                    "name": "Academia Y",
                    "category": "ACADEMIAS",
                    "subCategory": "ACADEMIAS",
                    "address": {
                        "street": "Avenida Brasil",
                        "number": "326",
                        "city": "Campo Grande",
                        "state": "MS",
                        "zipcode": "89848650",
                        "point": {
                            "latitude": -20.463744,
                            "longitude": -54.615746
                        }
                    },
                    "active": true
                }
            ]
        }
    ]
}