The 33-year-old joined England off-spinner Jim Laker (1956 against Australia) and India leg-spinner Anil Kumble (1999 against Pakistan) in picking up all wickets in an innings.
"Welcome to the club #AjazPatel #Perfect10. Well bowled! A special effort to achieve it on day one and two of a Test match," spin bowling great Kumble, who took 619 test wickets for India, said on Twitter.
Mumbai-born left-armer Ajaz, whose parents emigrated to New Zealand in 1996, added six wickets to the four he took on the first day on Friday to finish with figures of 10-119.
Ajaz, who started his career as a fast bowler, extracted sharp turn and bounce from the pitch and carried the New Zealand bowling on his shoulders to restrict the hosts' first innings total to 325.
After picking up the wickets of Wriddhiman Saha and Ravichandran Ashwin in his first over on Saturday, the stocky spinner returned after the lunch interval to take the remaining four to wrap up India's innings.
As Rachin Ravindra pouched a skier from India's number 11 batter Mohammed Siraj to confirm the fall of the final wicket, Ajaz went down on one knee with a clenched fist before being hugged by his team mates.
He also received a standing ovation from the Indian team in the dressing room and the sparse crowd at the ground overlooking the Arabian Sea.
While Ajaz dominated the proceedings with the ball, it was Mayank Agarwal who scored the bulk of the runs for the hosts on the tricky surface.
Agarwal reached 150 with a cut shot off Ajaz but was caught behind on the next delivery. All-rounder Axar Patel provided able support with a knock of 52, his maiden Test half century.