This is a workaround and I hope there is (or will eventually be) an easier way to access point cloud data in the API.
In your GN tree add an Instance on Points node, plug in a Mesh Line set to a Count of 1 to get a single vertex at $(0, 0, 0)$.
In theory we should be able to access the vertices' geometry but for now the geometry is not "real". We need to realize the instances with a Realize Instances node.
Then, we need to access the evaluated mesh, after the GN modifier has been evaluated. For that we can use the context dependency graph.
import numpy as np
depsgraph = bpy.context.evaluated_depsgraph_get()
obj = bpy.context.active_object.evaluated_get(depsgraph)
coords = np.zeros(len(obj.data.vertices) * 3, dtype=float)
print(coords) # This is a flattened array
coords = coords.reshape(len(obj.data.vertices), 3)
print(coords) # This is a 3D array