adapt ServiceResponse to PSR