A security agent working for the Italian embassy in Yemen has been released after being kidnapped by gunmen on Sunday.
The Italian man, Alessandro Spadotto, was handed over to the governor in Maarib, the province where he was being held, a government official said.
The 29-year-old was abducted in south-west Sanaa, close to Italy's embassy.
Kidnappings of foreigners are common in Yemen and are usually resolved after negotiations with the government.
"The Italian diplomat was handed over to the governor of Maarib and he is in good health and will be transferred to Sanaa later to be handed over to the Italian ambassador," the official told Reuters.
A tribal source told AFP news agency that Mr Spadotto was released after "tribal mediation".
The interior ministry said the kidnapper, from the al-Jalal tribe, had wanted charges against him to be dropped, and for compensation.
A tribal source told Reuters that the abductors had also sought the return of land they claimed they owned in Sanaa.
Reports suggest the authorities agreed to at least some of the demands.
More than 200 people have kidnapped in Yemen over the past 15 years, according to AFP news agency. Officials tend to blame tribesmen or gunmen linked to al-Qaeda for taking foreigners.
A French official working for the Red Cross was released earlier this month after being kidnapped in April.
A Swiss woman who was working as a teacher and seized by al-Qaeda militants in March remains a hostage.