defmodule WorkloadServiceWeb.Router do use WorkloadServiceWeb, :router alias WorkloadServiceWeb.TaskController alias WorkloadServiceWeb.HealthController pipeline :api do plug OpenApiSpex.Plug.PutApiSpec, module: WorkloadServiceWeb.ApiSpec end get "/health", HealthController, :health get "/health/ready", HealthController, :ready scope "/api" do pipe_through [:api] get "/openapi", OpenApiSpex.Plug.RenderSpec, [] scope "/v1" do get "/tasks", TaskController, :list get "/tasks/:id", TaskController, :show post "/tasks/:id/submit", TaskController, :submit post "/tasks/:id/approve", TaskController, :approve post "/tasks/:id/complete", TaskController, :complete end end if Mix.env() == :dev do scope "/swaggerui" do get "/", OpenApiSpex.Plug.SwaggerUI, path: "/api/openapi" end end end