Iran has announced that its military "unintentionally" shot down a Ukrainian jetliner, killing all 176 on board.

The statement on Saturday morning blames "human error" for the incident, adding that the military mistook Flight 752 for a "hostile target".

Press TV also quoted Iran's General Staff of the Armed Forces as saying that the plane had flown close to a "sensitive military site".

More:

The military said it was at its “highest level of readiness" amid the heightened tensions with the United States.

"In such a condition, because of human error and in a unintentional way, the flight was hit,” the military said. It apologised and said it would upgrade its systems to prevent future tragedies.

In a statement posted on social media, Iranian President Hassan Rouhani wrote that the country "deeply regrets this disastrous mistake".

"My thoughts and prayers go to all the mourning families. I offer my sincerest condolences," he said, adding that "investigations continue to identify and prosecute this great tragedy and unforgivable mistake".

Ukranian President Volodymyr Zelenskyy in a statement on Saturday said his country expects a full admission of guilt and compensation for the jet's downing.

"We expect from Iran assurances of their readiness for a full and open investigation, bringing those responsible to justice, the return of the bodies of the dead, the payment of compensation, official apologies through diplomatic channels," he said.

Iran had denied for several days that a missile downed the aircraft. But then the US and Canada, citing intelligence, said they believed Iran shot down the aircraft.

On Friday, Ali Abedzadeh, head of Iran's civil aviation authority, said it was impossible due to close coordination between Iran's air defence and the civil aviation department.

"What is obvious for us, and what we can say with certainty, is that no missile hit the plane," Abedzadeh told reporters in Tehran.

Acknowledging that the aeroplane had been taken down, Iran's Supreme Leader Ali Hosseini Khamenei on Saturday offered his condolences and called for an investigation into the incident.

The jetliner, a Boeing 737-800 operated by Ukraine International Airlines, went down on the outskirts of Tehran during takeoff just hours after Iran launched a barrage of missiles at US forces in Iraq.

Al Jazeera's Assed Baig, reporting from Tehran, said questions were now being raised as to why Iranian authorities kept the country's air space open during a military operation.

"There's a lot of explaining to do by Iranian authorities. People want to know why and how it happened."

In a social media post, Iranian Foreign Minister Mohammad Javad Zarif said that "human error at time of crisis caused by US adventurism led to the disaster".

"Our profound regrets, apologies and condolences to our people, to the families of all victims and to other affected nations."

The plane, en route to the Ukrainian capital of Kyiv, was carrying 167 passengers and nine crew members from several countries, including 82 Iranians, 57 Canadians and 11 Ukrainians, when it was shot down.

"This is the right step for the Iranian government to admit responsibility and it gives people a step toward closure with this admission," said Payman Parseyan, a prominent Iranian-Canadian in western Canada who lost a number of friends in the crash.

"I think the investigation would have disclosed it whether they admitted it or not. This will give them an opportunity to save face," he told AP news agency.