error can be null
WS only