ApiResult and ApiClient foundations