The two teams went into the halftime break level at 5-5 after each scored an unconverted try, however, the match opened up after the break with both sides using their kicking game to gain field possession and then the driving maul to put points on the board.
Both sides scored three tries apiece, but it was the Emirates Lions who clinched the match with a penalty goal near the end. However, the red and white jerseys could have bagged an easier victory had it not been for some wayward goalkicking earlier in the encounter.
The sides went into the fixture with contrasting form - Edinburgh lost two matches by narrow margins in South Africa, while the Joburg outfit managed to win their previous two fixtures on the road against Welsh opposition.
It was the visitors who made a good start, protecting the ball through several phases as they worked their way into the danger zone. An attacking grubber was recovered just in time by the home defence, who did well to wriggle their way out of trouble.
On the opposite side, Francke Horn did well to pull off a desperate tackle on speedy Pumas wing Emiliano Boffelli who was well on his way for what would have been the opening score of the game.
Edinburgh turned down an easy kickable penalty and opted for the kick to the corner, a decision that brought instant reward when No 8 Viliame Mata scored from a driving maul to put his side 5-0 up just before the halfway mark of the opening half.
The men from Joburg then did well to keep the rampant home team at bay with some solid tackling, but unfortunately Gianni Lombard (flyhalf) missed with two long range penalty attempts, which further eased the pressure on the hosts.
But the Emirates Lions levelled matters a few minutes before the halfway break when fullback Andries Coetzee was sent over next to the poles by the impressive halfback Sanele Nohamba. The try was set up by some strong carries, with the forwards punching holes in the home defence, who eventually ran short of numbers out wide.
Lombard missed the fairly easy conversion kick, which brough the halftime score to 5-5.
Edinburgh piled on the pressure after the break and took the lead when right wing Darcy Graham squeezed himself over the line despite the desperate attempts by a couple of defenders. Boffelli added the extras from out wide to put the hosts 12-5 up early in the second stanza.
Former Junior Springbok outside centre Henco van Wyk showed great determination to break free from a few tackles to score the visitors' second try, which was converted by Lombard to pull the two sides level again at 12-12.
Edinburgh hit back almost immediately with their second maul try of the game and this time it was replacement loose forward Ben Muncaster who dotted down, while Boffelli succeeded again with the conversion to hand the home side a seven point advantage at 19-12.
Horn served notice that the visiting side won’t give up when he ran in for their third five-pointer of the evening and when Lombard slotted his second conversion the scores were once more even, this time at 19-19 with just under a quarter-hour of play remaining.
Edinburgh again piled on the pressure to get that bonus point try and the lead, but once more the visitors showed remarkable bravery to withstand the onslaught and then to wrestle the ball away for full-length counter-attack, which yielded a vital penalty just meters from the home team's tryline.
Lombard slotted the easy penalty goal attempt to nudge the Emirates Lions ahead at 22-19 just before he was replaced by Jordan Hendrikse. Moments later they fell agonisingly close when another counter strike was thwarted by a handling error.
The visitors then did well to manage out the game for a fantastic away victory and their third win in a row on the road, which was even more special for Springbok prop Ruan Dreyer, who made his 100th appearance in the Emirates Lions jersey, as well as fellow front ranker Sti Sithole, who played in his 50th match for the Highvelders.
Edinburgh 19 (5) - Tries: Viliame Mata, Darcy Graham, Ben Muncaster. Conversions: Emiliano Boffelli (2).
Emirates Lions 22 (5) - Tries: Andries Coetzee, Henco van Wyk, Francke Horn. Conversions: Gianni Lombard (2). Penalty goal: Lombard.