Calculating the volume of a sphere after switching to spherical coordinates?

Employing most of your own code;

Integrate[
 f @@ CoordinatesToCartesian[#, Spherical @@ #] JacobianDeterminant[Spherical @@ #] &@{r, θ, ϕ}, 
 {r, 0, R}, {θ, 0, π}, {ϕ, -π, π}
 ]

(4 π R^3)/3

That is, you just have to add the integral boundaries.


Try this

transform[f : (_Function | _Symbol), coordi_: {x, y, z}, coordf_: {r, θ, ϕ}] := Module[{rules, jdet},
          rules = Thread[coordi -> CoordinateTransformData["Spherical" -> "Cartesian", "Mapping", coordf]];
          jdet = CoordinateTransformData["Spherical" -> "Cartesian", "MappingJacobianDeterminant", coordf];
          jdet f @@ coordi /. rules
         ]

f[x_, y_, z_] := 1

Integrate[transform[f], r, {θ, 0, π}, {ϕ, 0, 2 π}]
(4 π r^3)/3