Right - I did mention in the comments that the data is fetched directly from Mother Jones' repository to stay up to date with their work. For some reason, their data doesn't include latitude and longitude fields for the 4 most recent shootings. My conjecture is that they incorporate that portion of the data via an geocoding service periodically but I don't know their update schedule. I have reached out to try to learn what's going on with that but haven't heard back. I might set up a way to try to get those fields myself if it looks like the process will generally take longer than I want.
You can use the 'nominatim' to get the lat and lon for the missing_city (without state)
lat = d3.json(
`https://nominatim.openstreetmap.org/search.php?city=${missing_city}&format=jsonv2`
)
.then((r) => +r[0].lat)
Thanks for the tip @cadasa. Unfortunately, I need more precise location information than just the city name can provide and the data doesn't seem to have exact addresses.
I've gone ahead and manually updated the two really high profile shootings in Buffalo and Uvalde but I'm hoping that the folks at Mother Jones will ultimately keep the location data updated.