Another thing is that retrofit-style API doesn’t have a place to pass context, e.g. to check cookies, headers, etc. It doesn’t need one. So supporting exactly retrofit-compatible interface is either impossible, or will require some hacks like using ThreadStatic “currentContext”, which doesn’t work well with async, etc.