Context:: Add security to the Swagger UI that is to be used in the api
Snippet – the actual snippet/boilerplate (wrapped in code tags)
_ = services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Title = "AwesomeAPI", Version = "v1" }); // Add security API key as parameter or header c.AddSecurityDefinition("apiKey", new OpenApiSecurityScheme() { Type = SecuritySchemeType.ApiKey, In = ParameterLocation.Header, Name = "ApiKey", // the name of the header to be passed in Scheme = "ApiKeyScheme" }); // Add a security requirement so that the api key is sent along as a header OpenApiSecurityScheme key = new OpenApiSecurityScheme() { Reference = new OpenApiReference { Type = ReferenceType.SecurityScheme, Id = "apiKey" // this needs to be the name of the definition above }, In = ParameterLocation.Header }; OpenApiSecurityRequirement requirement = new OpenApiSecurityRequirement { { key, new List<string>() } }; c.AddSecurityRequirement(requirement); });