- updated request handling
- using callbacks