middlewares takes incoming request and modifies it before it reaches route handler making a get request by using callback functions[callback functions are nested functions which send responses to complete an action] schemas are blueprints of data