Data API for the Estonian Transport Administration

Data API is a central middleware application built with a modern tech stack (Java/Spring Boot or Go). This solution acts as an intelligent bridge, capable of querying diverse databases directly via SQL or GET endpoints.

About the Client

The Estonian Transport Administration (TRAM) is a government agency responsible for managing traffic on land, in the air, and on water. They ensure infrastructure maintenance and general safety. Their primary tasks include the construction and maintenance of state roads, management of the traffic register (vehicles and licenses), and supervision across all transport modes. Their goal is to provide a safe, convenient, and smart mobility environment for people and businesses.

Client Transpordiamet (TRAM)
Link to the project see here
Start of the project September 2025
End of the project November 2025

Client brief

The Challenge: Bridging the Gap Between Legacy Data and Modern Standards

The Estonian Transport Administration (TRAM) faced a significant technical hurdle in managing and reporting vital infrastructure data. Information regarding the nation’s roads, railways, ports, and airports was fragmented across several disparate legacy systems, making it difficult to maintain a unified overview of the national transport network.

Core Problem:

Fragmented Transport Infrastructure Data and Manual Reporting to EU Systems. Before the implementation of the TRAM Data API, the client had to manage transport infrastructure data across multiple, disconnected information systems such as Teeregister, Sadamaregister, eStat, and the Electronic Maritime Information System.

  • Disconnected Systems: Each system operated on different technologies and database structures (Oracle, PostgreSQL), creating data silos.
  • Manual Reporting Burden: Reporting to the European Commission’s TENtec system required manual data extraction and conversion to meet specific EU standards.
  • Lack of Central Interface: There was no central interface to aggregate data, covering critical details like road classifications and railway gauge specifications.
  • Data Integrity Risks: The manual approach created a high potential for data errors and a slow, labor-intensive workflow for annual reporting.
  • Validation Issues: There was no automated way to ensure that data pushed to the national Open Data Portal (avaandmed.eesti.ee) was consistently validated against required JSON schemas.

The Solution: A Unified Data Integration Hub

Wenture developed the TRAM Data API—a central, automated middleware application designed to query diverse databases, transform the results into standardized JSON formats, and push them to the national Open Data Portal and TENtec systems.

Key Technical Components:

  1. Automated Data Extraction: Custom SQL queries and GET requests that pull data directly from legacy systems like Oracle and PostgreSQL.
  2. Standardized JSON Transformation: A conversion engine that maps raw data to the specific “Mirroring Jobs API V2” and TENtec protocols.
  3. Automated Validation & Error Handling: Built-in JSON schema validation before data transmission, with a retry logic that logs and stores failed attempts for manual intervention.
  4. Scheduled & On-Demand Execution: Integration with cron-jobs for periodic updates and manual triggers via POST requests or GitLab UI.
  5. Containerized CI/CD Pipeline: Fully automated building and deployment using Docker, Kubernetes (K8), and GitLab CI/CD pipelines.

Tech Stack & Integrations:

  • Backend: Java (Spring Boot)
  • Database: PostgreSQL for storing static and meta-information.
  • Integrations: Connected to Teeregister, Sadamaregister, eStat, and LOIS (Oracle).
  • Output: Integrated with the Andmete teabevärav (Open Data Portal) via Mirroring Jobs API V2.

Results & Impact: From Silos to Seamless Automation

The implementation of the TRAM Data API has transformed how Estonia manages its transport data. By moving from manual, siloed reporting to a managed, API-first architecture, TRAM has significantly reduced the manual overhead of international reporting.

Key Results:

  • Eliminated Manual Data Prep: Automated the conversion of data from four different systems into a single standardized JSON format.
  • Enhanced Reliability: Introduced a “Max retry” system and error logging to ensure data transmission even after temporary network failures.
  • Standardized Security: Secured all data transfers using HTTPS (TLS 1.2/1.3) and Bearer Token authentication.
  • Organizational Change: The team can now manage various data resources (roads, ports, airports) as separate, versioned assets, making the system easily scalable for future information systems.

Future Plans

While initially implemented for TENtec, the architecture allows for the easy addition of new datasets and systems. Future plans include the implementation of a UI panel for managing data sources, real-time visualization of logs via Prometheus and Grafana, and the addition of webhooks for event-driven data updates.