77from typing import Optional
88
99import requests
10- from aiohttp import ClientError , ClientResponse , ClientSession , FormData
10+ from aiohttp import ClientError , ClientResponse , ClientSession , ClientTimeout , FormData
1111from aiohttp .payload import BytesIOPayload
1212
1313from codeboxapi .config import settings
@@ -106,6 +106,7 @@ def base_request(
106106 endpoint : str ,
107107 body : Optional [dict ] = None ,
108108 files : Optional [dict ] = None ,
109+ timeout : int = 420 ,
109110 retries : int = 3 ,
110111 backoff_factor : float = 0.3 ,
111112) -> dict :
@@ -126,7 +127,7 @@ def base_request(
126127 request_data = build_request_data (method , endpoint , body , files )
127128 for attempt in range (retries ):
128129 try :
129- response = requests .request (** request_data , timeout = 540 )
130+ response = requests .request (** request_data , timeout = timeout )
130131 return handle_response (response )
131132 except requests .RequestException as e :
132133 if attempt < retries - 1 :
@@ -143,6 +144,7 @@ async def abase_request(
143144 endpoint : str ,
144145 body : Optional [dict ] = None ,
145146 files : Optional [dict ] = None ,
147+ timeout : int = 420 ,
146148 retries : int = 3 ,
147149 backoff_factor : float = 0.3 ,
148150) -> dict :
@@ -180,7 +182,9 @@ async def abase_request(
180182
181183 for attempt in range (retries ):
182184 try :
183- response = await session .request (** request_data )
185+ response = await session .request (
186+ ** request_data , timeout = ClientTimeout (total = timeout )
187+ )
184188 return await handle_response_async (response )
185189 except ClientError as e :
186190 if attempt < retries - 1 :
0 commit comments