diff --git a/ee/server/service/software_installers.go b/ee/server/service/software_installers.go index fdd9e6b2b2..0024ef8d2a 100644 --- a/ee/server/service/software_installers.go +++ b/ee/server/service/software_installers.go @@ -2001,6 +2001,14 @@ func (svc *Service) softwareInstallerPayloadFromSlug(ctx context.Context, payloa app, err := svc.ds.GetMaintainedAppBySlug(ctx, *slug, teamID) if err != nil { + // Return user-friendly message for generic not found error + if fleet.IsNotFound(err) { + // Must return low-level error in order to be properly handled upstream + return fleet.NewUserMessageError( + fmt.Errorf("%s isn't a supported Fleet-maintained app. See supported apps: https://fleetdm.com/learn-more-about/supported-fleet-maintained-app-slugs", *slug), + http.StatusNotFound, + ) + } return err } _, err = maintained_apps.Hydrate(ctx, app)