diff --git a/src/internal/connector/graph/service.go b/src/internal/connector/graph/service.go index dc5129ac4..f0aa71f08 100644 --- a/src/internal/connector/graph/service.go +++ b/src/internal/connector/graph/service.go @@ -247,11 +247,6 @@ func kiotaMiddlewares( ) []khttp.Middleware { mw := []khttp.Middleware{} - // Optionally add concurrency limiter middleware if it has been initialized - if concurrencyLim != nil { - mw = append(mw, concurrencyLim) - } - mw = append(mw, []khttp.Middleware{ msgraphgocore.NewGraphTelemetryHandler(options), &RetryMiddleware{ @@ -264,10 +259,18 @@ func kiotaMiddlewares( khttp.NewParametersNameDecodingHandler(), khttp.NewUserAgentHandler(), &LoggingMiddleware{}, - &RateLimiterMiddleware{}, - &MetricsMiddleware{}, }...) + // Optionally add concurrency limiter middleware if it has been initialized. + if concurrencyLim != nil { + mw = append(mw, concurrencyLim) + } + + mw = append( + mw, + &RateLimiterMiddleware{}, + &MetricsMiddleware{}) + if len(cc.appendMiddleware) > 0 { mw = append(mw, cc.appendMiddleware...) }