SwaggerConfig.java

  1. package no.nav.data.common.swagger;

  2. import io.swagger.v3.oas.models.Components;
  3. import io.swagger.v3.oas.models.ExternalDocumentation;
  4. import io.swagger.v3.oas.models.OpenAPI;
  5. import io.swagger.v3.oas.models.info.Info;
  6. import io.swagger.v3.oas.models.info.License;
  7. import io.swagger.v3.oas.models.security.SecurityRequirement;
  8. import io.swagger.v3.oas.models.security.SecurityScheme;
  9. import io.swagger.v3.oas.models.security.SecurityScheme.Type;
  10. import org.springframework.context.annotation.Bean;
  11. import org.springframework.context.annotation.Configuration;

  12. @Configuration
  13. public class SwaggerConfig {

  14.     @Bean
  15.     public OpenAPI openAPI() {
  16.         return new OpenAPI()
  17.                 .components(new Components().addSecuritySchemes("bearer-key",
  18.                         new SecurityScheme().type(Type.HTTP).scheme("bearer").bearerFormat("token")))
  19.                 .addSecurityItem(new SecurityRequirement().addList("bearer-key"))
  20.                 .info(new Info().title("Team Catalog")
  21.                         .description("Rest API for getting and posting information on teams")
  22.                         .version("v1.0")
  23.                         .license(new License().name("MIT License")))
  24.                 .externalDocs(new ExternalDocumentation()
  25.                         .description("Teamkatalog dokumentasjon")
  26.                         .url("https://navikt.github.io/team-catalog"));
  27.     }
  28. }