The announcement of the takeover of the Azeri-majority city came following reports of fierce fighting between Azeri and Armenian forces in the disputed region.
Azeris took to streets celebrating in the capital city Baku, waving flags and chanting slogans, and drivers sounding their car horns.
Armenia's Defense Ministry denied that the city had been captured and said heavy fighting continued in the enclave.
"Despite heavy destruction, the fortress city withstands the blows of the enemy," the Nagorno-Karabakh Rescue Service said.
An Armenian army spokesman, Artsun Ovanissian, wrote on Facebook that there had been "no loss, no retreat" in Shusha.
In a similar statement, the Defense Army of Nagorno-Karabakh said multiple attempts by the Azeri forces to take the city had failed.
Karabakh is internationally recognized as part of Azerbaijan, but is held by ethnic Armenian separatists backed by Yerevan since 1992, when they broke from Azerbaijan in a war that killed some 30,000 people.
The conflict re-erupted in late September, becoming the worst fighting in the region in decades.
The strategic Azeri-majority city of Shusha could serve as a platform for a second assault on the enclave's largest city, Stepanakert.
Meanwhile, Turkish President Tayyip Erdogan called on his Russian counterpart to help resolve the Nagorno-Karabakh conflict between Azerbaijan and Armenia via negotiation.
Erdogan’s office said the Turkish leader told President Vladimir Putin in a phone call Saturday that Armenian forces must first withdraw from occupied Azeri territories, and then "sit down at the negotiating table" to resolve the issue.
Turkey, an ally to Azerbaijan, has promised to support Baku in the conflict and demanded to be included in the negotiations to resolve the standoff. Russia is allied with Armenia and has a military base in the country's second-largest city of Gyumri.
Armenian Prime Minister Nikol Pashinyan has called on the Russian leader for military support, while Azerbaijan is looking up to Turkey for support in the regional conflict.
French President Emmanuel Macron's office said the French leader, too, had spoken with Putin by phone on Saturday, and the two had agreed that "fighting must be stopped ... to allow negotiations to restart."