OSM Road Closures API Documentation

A comprehensive REST API for managing temporary road closures in the OpenStreetMap ecosystem. Built for Google Summer of Code 2025.

REST API

Complete CRUD operations with authentication and authorization

OpenLR Integration

Location referencing standard for cross-platform compatibility

Secure & Scalable

OAuth2 authentication with JWT tokens and role-based access

Overview

The OSM Road Closures API provides a centralized system for collecting and disseminating temporary road closure information. It's designed specifically for the OpenStreetMap ecosystem and supports integration with navigation applications like OsmAnd.

Key Features

  • Geospatial Support: PostGIS-powered spatial queries and geometry storage
  • OpenLR Integration: Generate map-agnostic location references
  • Real-time Updates: Live closure status and validation
  • Authentication: OAuth2 + JWT with Google and GitHub integration
  • Multiple Geometry Types: Support for both Point and LineString closures

Technology Stack

Backend

  • FastAPI (Python 3.11+)
  • PostgreSQL 15 + PostGIS 3.5
  • SQLAlchemy + GeoAlchemy2
  • Redis (caching & rate limiting)

Integration

  • OpenLR location referencing
  • OAuth2 (Google, GitHub)
  • Docker containerization
  • OpenAPI 3.0 specification