An R Interface to Tampa Bay Public Open Data

Provides a lightweight R interface for discovering and retrieving public 'ArcGIS' datasets across the Tampa Bay region. Search civic datasets and load records directly into R without manually navigating separate portals, constructing REST API requests, or handling pagination. Supports public data published by the City of Tampa, City of St. Petersburg, City of Clearwater, Hillsborough County, Pinellas County, and Tampa Bay Regional Planning Council. Discover layers in these and other public 'ArcGIS' portals and retrieve them by their REST URLs. A publisher registry configures discovery, while a separate dataset registry identifies layers checked by package maintainers. Filter catalogs by source, geometry, topic, category, and modification date. Retrieve queryable layers with validated pagination, bounded previews, server-side filtering, typed tabular results, optional spatial objects, and source provenance. Save large downloads as local chunks that can be validated and resumed. Designed for analysts, researchers, students, journalists, and civic technologists who work across separate public data portals. Public source pages are the City of Tampa GeoHub < https://city-tampa.opendata.arcgis.com/>, St. Petersburg ArcGIS portal < https://csp.maps.arcgis.com/home/index.html>, Clearwater ArcGIS portal < https://cityofclearwater.maps.arcgis.com/home/index.html>, Hillsborough County GeoHub < https://hcfl.gov/about-hillsborough/open-data-and-gis/geohub>, Pinellas County Enterprise GIS < https://new-pinellas-egis.opendata.arcgis.com/>, and Tampa Bay Regional Planning Council GeoHub < https://opendata-tbrpc.hub.arcgis.com/>.


tampaBayOpenData

Version License: MIT R CMD check pkgcheck Offline test coverage workflow

tampaBayOpenData provides a lightweight R interface for discovering and retrieving public ArcGIS datasets across the Tampa Bay region. The package lets users search for civic datasets and load them directly into R without manually navigating ArcGIS portals, constructing REST API requests, or handling pagination themselves.

It currently supports public data published by:

  • City of Tampa
  • City of St. Petersburg
  • City of Clearwater
  • Hillsborough County
  • Pinellas County
  • Tampa Bay Regional Planning Council

Designed for analysts, researchers, students, journalists, and civic technologists, tampaBayOpenData provides a consistent workflow across ArcGIS publishers that otherwise expose data through separate portals and services.

Install

Install from GitHub:

install.packages("pak") # if needed
pak::pak("Jaclenga/tampaBayOpenData")

Install sf as well if you need spatial results.

Find and retrieve a checked layer

library(tampaBayOpenData)

parks <- tbod_search_datasets("parks", source = "checked")
parks[, c("id", "title", "publisher")]

data <- tbod_get_dataset("stpete-parks", limit = 100)
tbod_provenance(data)[c("publisher", "source_url", "retrieved_at", "complete")]

The search reads the bundled catalog; retrieval contacts the publisher. limit = 100 returns a subset, recorded as incomplete in its provenance when more records match. Omit limit to request all matching records, subject to the service and package limits described in the retrieval guide.

A checked layer has a catalog entry and a saved field, geometry, and CRS snapshot. Before retrieval, its live metadata is compared with that snapshot: compatible changes warn; incompatible changes stop the request. Checked status does not verify individual records or guarantee the service will remain available. See schema checks and retrieval.

Search beyond the catalog

Live discovery searches the six configured ArcGIS publishers. For example, tbod_search_datasets("housing", source = "live", portals = "city") searches Tampa's portal. To search another public ArcGIS portal, supply its sharing REST root:

# Replace this address with the public sharing REST root of your portal.
other <- tbod_discover("https://example.maps.arcgis.com/sharing/rest",
                       query = "parks")
if (nrow(other)) tbod_get_dataset(other[1, ], limit = 100)

Portal results have discovered status; rows from a service or layer URL have not_checked status. Both work with tbod_get_dataset() and have no saved checked schema. Live searches can miss items when the scan is bounded or a publisher service fails; inspect attr(other, "discovery_complete") before treating a result as a complete listing. A direct public FeatureServer/<id> or MapServer/<id> URL also works with tbod_get_dataset(). The discovery and retrieval articles cover filters, scan limits, direct URLs, and downloads.

See spatial data

The checked City of Tampa city-boundary and capital-projects layers can be retrieved as sf objects with spatial = TRUE.

Map of 394 City of Tampa capital project locations and the shoreline-adjusted Tampa boundary

City of Tampa data retrieved October 3, 2026 (both ArcGIS items marked CC0). The shoreline-adjusted boundary is not a legal survey; the points do not establish current project status or complete coverage. Reproduce the map or follow the spatial walkthrough.

Coverage and source limits

The 52 checked layers are selected references, not a complete inventory or uniform coverage of each topic. Publisher services can change, and some layers are active views or approximate boundaries. The TBRPC storm surge layer is a historical planning model, not current emergency guidance. See the coverage guide for publisher counts, layer caveats, and reuse terms, and the catalog policy for selection and maintenance decisions. The package's MIT license covers its code, not the source data. The package is independent of the publishers and rOpenSci.

Citation

Cite the package and the original data publisher and dataset. For the package citation, run:

citation("tampaBayOpenData")
toBibtex(citation("tampaBayOpenData"))

tbod_dataset_info(id) gives catalog source details; tbod_provenance(result) records the retrieval source and time.

Learn more

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("tampaBayOpenData")

0.1.0 by Jack Lenga, 14 hours ago


https://jaclenga.github.io/tampaBayOpenData/, https://github.com/Jaclenga/tampaBayOpenData


Report a bug at https://github.com/Jaclenga/tampaBayOpenData/issues


Browse source code at https://github.com/cran/tampaBayOpenData


Authors: Jack Lenga [aut, cre, cph] (ORCID:


Documentation:   PDF Manual  


MIT + file LICENSE license


Imports httr2, jsonlite, tibble

Suggests knitr, rmarkdown, sf, testthat


See at CRAN