have somebody/something to thank (for something)
US /hæv ˈsʌmˌbɑːdi/ˈsʌmˌθɪŋ tə θæŋk (fɔːr ˈsʌmˌθɪŋ)/
UK /hæv ˈsʌmˌbɑːdi/ˈsʌmˌθɪŋ tə θæŋk (fɔːr ˈsʌmˌθɪŋ)/

1.
tener que agradecer a alguien/algo
to be grateful to someone or something for a particular outcome, often a negative one, implying that they are responsible for it
:
•
You have yourself to thank for this mess.
Solo tienes que agradecértelo a ti mismo por este desastre.
•
If we miss the flight, we'll have him to thank for it.
Si perdemos el vuelo, tendremos que agradecérselo a él.