SGEOL is a middleware for managing, visualizing, and integrating data in smart city environments. It provides a set of high-level functionalities that developers can utilize to facilitate the development of applications in the context of smart cities. To achieve this, SGEOL offers functionalities such as: i) management of heterogeneous information from management systems, IoT devices, etc.; ii) security (authentication and authorization) to protect access to information; iii) queries based on geographical processing; iv) semantic queries; v) management of temporal data; vi) complex event processing; vii) data integration services, and; viii) data visualization. All these functionalities can be reused by application developers, avoiding the need for them to reimplement all these services. This makes it much easier to develop applications and integrate heterogeneous data in smart city environments. Additionally, the SGEOL visualization dashboard allows data to be displayed in urban environments, queries involving data from various domains, generation of reports, etc. Thus, it is a powerful tool for managing and visualizing urban and geographical information. Currently, SGEOL is being used in applications developed for municipal secretariats in Natal, for the Public Ministry of RN, and for the State Department of Education of Rio Grande do Norte. In terms of technologies, SGEOL was developed using Java EE, FIWARE Platform, MongoDB (NoSQL database), PostGIS (Geographic database), Apache Jena, REST, Vue JS (JavaScript, HTML, and CSS). It falls within the contexts of Smart Cities, Public Administration, Data Integration, Internet of Things, and Geographic Systems.