A video showing the Syrian man who blew himself up in Ansbach, Germany, on Sunday pledging allegiance to the leader of so-called Islamic State has been found on his phone, says Bavaria's interior minister.
Joachim Hermann says two phones, multiple SIM cards and a laptop were found with the body of the 27-year-old asylum seeker or at his accommodation.
The man threatened a "revenge attack" on Germans in the video, he said.
Fifteen people were injured.
The attacker "announced in the name of Allah that he pledged allegiance to [IS chief] Abu Bakr al-Baghdadi... and announced an act of revenge against Germans because they were standing in the way of Islam," Mr Hermann said.
Germany was already reeling after five people were wounded on a train in another part of Bavaria a week ago by an axe-wielding teenager from Afghanistan who had pledged allegiance to IS.
On Friday nine people were killed by a teenage gunman in the state capital, Munich, who then shot himself dead. That incident was not believed to be jihadist-inspired.
What is going on in Germany?
Bavarian authorities said that the bomb which exploded in Ansbach was constructed in such a way that it was clearly meant to kill as many people as possible.
Further bomb-making equipment was found at the asylum seeker accommodation where the man was living, including petrol, hydrogen peroxide and batteries, they added.
A detailed analysis of the content of the videos was ongoing, Mr Hermann said.
"I think it is unquestionable that it is a terror attack with corresponding Islamist convictions of the perpetrator," he said.
Seven deadly days
A week of bloody attacks has frayed nerves in Germany, which led the way in accepting asylum seekers from Syria. To date, only the first has been linked to a militant group:
- 18 July: An axe-wielding teenage asylum seeker from Afghanistan is shot dead after injuring five people in an attack on a train. IS claims the attack, releasing a video recorded by the attacker before the incident
- 22 July: A German teenager of Iranian extraction goes on a shooting rampage in the Bavarian state capital, Munich, killing nine people, most of them migrants, before shooting himself. He is said to have been obsessed with school shootings
- 24 July: A Syrian asylum seeker is arrested in the town of Reutlingen, Baden-Wuerttemberg, after allegedly killing a Polish woman with a machete and injuring two other people. Police suggest it was probably a "crime of passion"
- 24 July: A failed Syrian asylum seeker blows himself up outside a music festival in the small Bavarian town of Ansbach, injuring 15 other people.
German media on the attacks
The German interior minister, Thomas de Maiziere, acknowledged possible links to international terrorism and IS but also added: "At the same time, we cannot exclude a particular psychological or mental disorder or instability - or we may be talking about a combination of both factors."
Mr de Maiziere has ordered increased police presence in public places.
The Ansbach attacker - who has not been named - came to Germany two years ago but was denied asylum and was due to be deported to Bulgaria, where he had already been granted refugee status.
Officials say the man has tried to kill himself on two occasions and has received psychiatric inpatient treatment.
Germany has been the main destination of Syrian asylum seekers entering the EU, most of them arriving irregularly in Greece via Turkey.
Only 23 Syrians had their applications for asylum rejected by the country last year, out of a total of 105,620 decisions on Syrians' applications. A common reason for rejecting an application is when the asylum seeker submits false or incomplete information.
Just under half of asylum seekers rejected by Germany in the past two years were allowed to stay on in the country, according to a recent report in German daily Die Welt (in German).
The Ansbach bomber, who was among those rejected for asylum in 2015, appears to have been placed in a former hotel in the town, designated by the municipal authorities for asylum seekers since 2014.
Source of statistics: German Federal Office for Migration and Refugees report (in German)