Надеюсь, я вас правильно понял:
import requests
from time import sleep
your_snapshot_url = ""
snap_status = "IN_PROGRESS"
counter = 0
while snap_status == "IN_PROGRESS" or (snap_status == "STARTED" and counter < 150):
sleep(60)
req = requests.get(your_snapshot_url).content
snap_status = req['snapshots']['state'] # Replace with whatever you need to parse the state
counter += 1
print(counter)
if snap_status == "SUCCESS":
print("YAY!")
else:
print("BOO...")
Это сделает запрос на your_snapshot_url каждые 60 секунд при увеличении счетчика каждый цикл.
Цикл while завершится, когда snap_status , если что-либо иное, чем IN_PROGRESS, или STARTED, но счетчик меньше 150
При выходе вы получаете печать «YAY», если статус привязки - SUCCESS или «BOO», в противном случае