How to get type of terrain for single coordinate points?

Is there a way to provide a series of points, and get just what type of terrain is in those points?

E.g. I have a list of 10 coordinates, and I get a list similar to
[road, lake, park, sea, park, road, river, road, …]

If it’s impossible, an alternative for me would be to provide 2 or 4 coordinates indicating the limits of a rectangle, get the image map of that area, avoiding any type of text or indicator on it, inspect the colors present in the points I’m interested in, and through that try to understand what type of terrain those are in.

Which one is more feasible? Thanks!

Point-based is not reliable, as highway= roads and often waterway= are only lines. OSM doesn’t provide sea polygons directly either. You would need to find processed ones. A bbox still only works when it crosses =coastline inside.
Raster renders don’t work for this. highway= line thickness is usually unrelated to physical width. waterway= basically impossible.
There are some possible methods. But they have their own limitations.

It should be remembered land-use is not the same as land-cover or terrain. A human activity landuse= can include vegetation and unimproved ground. A large coarse/approximate =farmland could still enclose roads inside.

Fundamentally, this is best done not with OSM, which is vector-based. But with global raster data, and your country’s government data.