@@ -75,7 +75,7 @@ func New(ctx context.Context, cfg *Config, nq notification.Queue) (*Service, err
7575 cancel : cancel ,
7676 cfg : cfg ,
7777 nq : nq ,
78- handler : apihandler .NewHandler (true , nil ),
78+ handler : apihandler .NewHandler (true ),
7979 }
8080 // demo stuff
8181 if cfg .DemoMode {
@@ -87,11 +87,13 @@ func New(ctx context.Context, cfg *Config, nq notification.Queue) (*Service, err
8787 }
8888 _ = srv .handler .Get (DemoInboxPath , srv .demoInboxHandler )
8989 }
90+ // create the rate limiter
91+ rl := apihandler .NewRateLimiter (internalCtx , 100 , time .Minute )
9092 // register the routes and handlers
91- _ = srv .handler .Post (AppsPath , srv .generateAppIDHandler )
92- _ = srv .handler .Post (TokensPath , srv .requestTokenHandler )
93- _ = srv .handler .Put (TokensPath , srv .verifyTokenHandler )
94- _ = srv .handler .Get (HealthCheckPath , srv .healthCheckHandler )
93+ _ = srv .handler .Post (AppsPath , rl . Middleware ( srv .generateAppIDHandler ) )
94+ _ = srv .handler .Post (TokensPath , rl . Middleware ( srv .requestTokenHandler ) )
95+ _ = srv .handler .Put (TokensPath , rl . Middleware ( srv .verifyTokenHandler ) )
96+ _ = srv .handler .Get (HealthCheckPath , rl . Middleware ( srv .healthCheckHandler ) )
9597 // build the http server
9698 srv .httpServer = & http.Server {
9799 Addr : fmt .Sprintf ("%s:%d" , cfg .Server , cfg .ServerPort ),
0 commit comments