A lightweight Python client for accessing the Urban Observatory Sensor API.
Author: Neil Harris
Version: 1.0.0
def set_base_url(url: str)
Set the global base URL for all API requests. Automatically prepends http://
if missing.
def get_sensors(limit=1000, offset=0, bbox: Optional[List[float]] = None) -> pd.DataFrame
Get latest sensor locations as a DataFrame (from CSV).
Arguments:limit
: Max number of results (-1 for all)offset
: Starting offset for paginationbbox
: Optional bounding box [min_lon, min_lat, max_lon, max_lat]def get_sensor_data(start: Optional[datetime] = None,
end: Optional[datetime] = None,
last_n_hours: Optional[int] = None,
last_n_days: Optional[int] = None,
variables: Optional[List[str]] = None,
bbox: Optional[List[float]] = None,
limit: int = 1000,
offset: int = 0) -> pd.DataFrame
Get sensor readings as a DataFrame (from CSV).
Arguments:start
: Python datetime (UTC) for start timeend
: Python datetime (UTC) for end timelast_n_hours
: Fetch data from the last N hourslast_n_days
: Fetch data from the last N daysvariables
: List of variable names to includebbox
: Optional bounding box [min_lon, min_lat, max_lon, max_lat]limit
: Maximum number of recordsoffset
: Offset for paginationdef get_sensor_data_by_name(sensor_name: str,
start: Optional[datetime] = None,
end: Optional[datetime] = None,
last_n_hours: Optional[int] = None,
last_n_days: Optional[int] = None,
variables: Optional[List[str]] = None,
limit: int = 1000,
offset: int = 0) -> pd.DataFrame
Get data for a specific sensor as a DataFrame (from CSV).
Arguments:sensor_name
: Name of the sensorstart
: Python datetime (UTC) for start timeend
: Python datetime (UTC) for end timelast_n_hours
: Fetch data from the last N hourslast_n_days
: Fetch data from the last N daysvariables
: List of variable names to includelimit
: Maximum number of recordsoffset
: Offset for paginationdef get_variables() -> Dict
Get available sensor variables and metadata.
Returns: JSON dict of variable definitionsdef get_themes() -> Dict
Get available sensor themes (e.g., Air Quality, Weather).
Returns: JSON dict of theme categories