Toggle tabs to view scorecard and ball-by-ball commentary
South Africa had an understrength New Zealand in early trouble with four wickets, including Kane Williamson, in the first session of the second Test in Wellington on Thursday.
With weather and pitch conditions assisting swing and seam, Tom Latham and Neil Brook also went cheaply as New Zealand slumped to 21 for three inside 11 overs.
Jeet Raval and Henry Nicholls cautiously headed a rescue mission until Raval went for 36 in the last over before lunch.
Nicholls was not out 24 with New Zealand 73 for four at lunch.
South Africa captain Faf du Plessis said before he won the toss and elected to bowl that getting rid of Williamson cheaply was the secret to rolling New Zealand and Kagiso Rabada answered his call.
With the last ball of his opening over, Rabada had Williamson given out for two after a full-length delivery nipped back and rapped the New Zealand skipper on the back pad.
Williamson sought a review only to learn the ball-tracking technology was not available and the umpire's dismissal stood.
Ball-tracker was up and running three overs later when Raval survived a shout and the review confirmed the not out decision.
Neil Broom, a replacement for the injured Ross Taylor, only faced four balls from Rabada before he was gone without scoring.
It was the first delivery Broom made contact with and the edge was taken low down and one-handed by wicketkeeper Quinton de Kock diving to his right.
The innings was only seven overs old when Morne Morkel took the first wicket with Tom Latham poking at a ball moving away and steering a catch to Dean Elgar at third slip.
It continued a miserable run for Latham who in five Test and one-day innings on this South Africa tour has totalled 20 runs with a highest score of 10.
Left-arm spinner Keshav Maharaj had one over before lunch and while there was no turn he still had enough guile to get Raval caught by Hashim Amla at slip.