Hey there! That's a good Express REST API tutorial. I came here for only upload part of the application and I found this useful, thank you for your effort. I have a question if you spare few minutes. I implemented the same logic in my application. The task that my router should do is called after uploadImage middleware called, so If any error occurs in my router due to validation, but the application still uploads the image. I removed uploadImage middleware and did the upload part inside my router if validations are passed succesfully. Is this the correct method? And lastly, I couldn't see any way to implement async/await for upload method into the uploadImage logic, I checked out multer's API and couldn't find a method that does the same job but returns Promise. My current implementation has a callback hell, I'm not pretty happy about it. What do you think about it? Thanks in advance and keep amazing work! :)