Yes, it's the preferred way to implement asynchronous computation. The Akka.future is deprecated in Play 2.2.0.
By the way, I was not sure it is the implementation you had in mind. it would be probably interesting that the getCredentials and getUserProfile return Futures and we compose / chain them together with map, recover... functions. But this is probably too early because we are not effectively asynchronous.