The 28-year-old played a key innings in the absence of regular skipper Kane Williamson at the top of the innings in their mammoth chase under the lights but his innings was cut short by a flying Kohli following a mix-up with Ross Taylor in the middle.
Bumrah delivered a slower length ball around off and it cut back into the batsman and Taylor attempted to work it on the leg side. It dropped in the cover region and the duo attempted to steal a leg bye. But Kohli was very active, anticipated the moment, charged towards the ball, picked it up and dived forward to score a direct hit. Nicholls did dive but was short and had to cut short his innings at 79.
Nicholls came out with a defensive approach and initially struggled against Jasprit Bumrah but as the innigns went on, Nicholls settled in and his touch got better. The southpaw played the pacers with ease after getting in and then carried the form on to negotiate the spinner with equal panache as Ravindra Jadeja and Kuldeep Yadav failed to get his wicket until Kohli intervened.
Earlier, Shreyas Iyer continued his purple patch with the bat as he scored his maiden ODI ton to help India set a formidable 348-run target for New Zealand.
Iyer, who had scored six half centuries before this innings, looked determined right from the start and once he got into the groove, he made sure he converted it into a big one and contribute for the team, who have been marred with injuries.
Iyer's century was backed by Virat Kohli's 63-ball 51 and KL Rahul's big flurry with the bat as he finished not out on 88 off 64 balls to take India near 350.
However, both failed to capitalise on their starts as they got out in successive overs. While Shaw (20) was the first to go as he got a peach of a delivery from Colin de Grandhomme, Agarwal tried to be over aggressive and in the process gifted his wicket to Tim Southee after contributing with 32.