You can add "refresh" lambda to Resource.Error, so client will be able to refresh it, but then you have to decide how it will work, or this refresh returns new Flow<Resource>, it's easy to do, but not very easy to use, or you modify flow, to always be active (so do not complete after error/success) and emit Loading/Success after refresh