this should be cached. right now it's called for every url.

also, it there really any point in exposing this?