INNER CODE UNIT · Python
upstream_deadline
CassiopeiaCode/q2api · account-feeder/app.py:141
upstream_deadline = now + max(1, int(expires_in))
cap_deadline = now + max_timeout_sec if max_timeout_sec > 0 else upstream_deadline
deadline = min(upstream_deadline, cap_deadline)
poll_interval = max(1, int(interval or 1))
while time.time() < deadline:
r = await post_json(TOKEN_URL, payload)
if r.status_code == 200:
return r.json()
if r.status_code == 400:
try:
err = r.json()
except Exception:
err = {"error": r.text}
if str(err.get("error")) == "authorization_pending":
await asyncio.sleep(poll_interval)
continue
r.raise_for_status()