Seamer Tim Southee took 5-69 and openers Will Young and Tom Latham hit unbeaten half-centuries as New Zealand fought back on day two of the first Test against India in Kanpur.
India started the day on 258-4 but were all out for 345 after lunch.
Shreyas Iyer scored a century on Test debut for the hosts before he was dismissed for 105 by Southee.
In reply, Young scored 70 not out and Latham reached 50 as the tourists ended the day on 129-0, trailing by 216 runs.
Southee - who left the field on day one with a groin strain - picked up four wickets in the morning session, with spinner Ajaz Patel taking the final two India wickets.
Kiwi opener Latham was twice given out lbw to spinners Umesh Yadav and then Ravindra Jadeja, but successfully reviewed the on-field decision with replays showing an inside edge on both occasions.
India are without Virat Kohli, who has been rested for the match, with Ajinkya Rahane leading the side in his absence.
Kohli is expected to return for the second Test, while Rohit Sharma, Rishabh Pant, Jasprit Bumrah and Mohammed Shami have been rested for the three-match series.
India completed a 3-0 clean sweep of the Twenty20 series between the two sides on Monday.