After doing some additional testing, it seems that when a method of a controller containing parameters is defined, grails automatically creates a method without parameters. So when a request arrives at the endpoint without parameters, it does not crash and redirects to the method with parameters valued at null.