diff --git a/vehicle/silence/api.go b/vehicle/silence/api.go index 0216eadfc..c822d3a5b 100644 --- a/vehicle/silence/api.go +++ b/vehicle/silence/api.go @@ -2,7 +2,9 @@ package silence import ( "errors" + "net/http" + "github.com/evcc-io/evcc/api" "github.com/evcc-io/evcc/util" "github.com/evcc-io/evcc/util/request" "github.com/samber/lo" @@ -45,6 +47,11 @@ func (v *API) Vehicles() ([]string, error) { }), nil } + // force retry on HTTP 500 + if err2, ok := err.(request.StatusError); ok && err2.HasStatus(http.StatusInternalServerError) { + err = api.ErrMustRetry + } + return nil, err }