GreenFlow docs

Lugares

Dos endpoints para resolver ubicaciones de retiro/devolución: una búsqueda por radio con PostGIS y un autocompletar tipo typeahead. Ambos alimentan `pickup_place_uuid` directamente en POST /fleet/list.

GET /places — autocompletar

LIKE económico sobre la tabla `places` precargada. Devuelve hasta limit (default 10, max 25) filas ordenadas por coincidencia de prefijo y luego alfabéticamente. Cacheado 5 minutos por (q, country, limit). Aliasado en GET /api/v1/places/autocomplete para quien prefiera el nombre más explícito.

Request

bash
curl -s "https://greenflow.live/api/v1/places?q=miami&country=US&limit=5" \
  -H "Authorization: Bearer gfc_7s2wprmy_DWTZRBGBEV6La4dTOoFdMkEhWmWCsXdwc3zVMnqP"

Response

json
{
  "data": [
    {
      "uuid": "9566c9fe-a2d6-451b-a754-e2fee27a2c8f",
      "name": "Miami Downtown",
      "latitude": 25.77125531,
      "longitude": -80.19186806,
      "country_id": 254,
      "country_code": "US",
      "place_type": 2
    }
  ]
}

Lookup PostGIS `ST_DWithin` sobre la columna geográfica `location`. Pasá `lat` + `lng` (requeridos) y un `radius_km` opcional (default 50, máx 500). Cada resultado incluye las oficinas pivoteadas para ese lugar para saltar directo a POST /fleet/list.

Request

bash
curl -s "https://greenflow.live/api/v1/places/search?lat=-23.6273&lng=-46.6566&radius_km=25" \
  -H "Authorization: Bearer gfc_7s2wprmy_DWTZRBGBEV6La4dTOoFdMkEhWmWCsXdwc3zVMnqP"

Response

json
{
  "data": [
    {
      "uuid": "c31ec1ee-3fdf-4cb2-8445-6d07e82dacd0",
      "name": "Congonhas Airport",
      "latitude": -23.62799975,
      "longitude": -46.65703389,
      "distance_km": 0.089,
      "place_type": 1,
      "offices": [
        {"code": "AACGH", "name": "AGENCIA AEROPORTO CONGONHAS", "brand_id": 11, "distance_km": 0.142}
      ]
    }
  ]
}

Errores

HTTP Body Causa
401{"message": "Invalid API key"}Missing or invalid Bearer token.
422{"message": "The q field is required."}Autocomplete needs `q` (min 2 chars).
422{"message": "The lat field is required."}Search needs both `lat` and `lng`.