Iran agreed to release a Russian journalist detained on suspicion of spying for Israel, in a rare concession that defused a potentially damaging diplomatic rift with its key ally.

The announcement came just hours after Russia’s foreign ministry on Friday summoned the Iranian ambassador in Moscow to account for the arrest of Yulia Yuzik, who was seized from her Tehran hotel room by members of the Revolutionary Guards Corps earlier this week.

Iran has been accused by several Western governments of systematically detaining foreign dual nationals and charging them with espionage to use as leverage in diplomatic disputes. It is rare for a citizen of Russia, a close ally, to be detained.

Iran denies following a policy of diplomatic hostage taking, saying that all detainees are facing legitimate criminal investigations.

Ms Yuzik, a specialist on the North Caucasus who has written for dozens of Russian and Western publications, arrived in Iran on Sunday but immediately ran into trouble when her passport was confiscated at the airport.

“She was there for several days without documents. Then men came to her hotel, kicked in the door and took her away," her former husband Boris Voitsekhovsky told the Telegraph.

In a brief call with her mother on Thursday evening, she said she was being held in a prison cell and was due to appear in court on charges of working with Israeli intelligence on Saturday.