Skip to content

Commit a068642

Browse files
Add a timeout parameter (#14)
* Add a timeout parameter * run black formatting Co-authored-by: Kshitij Nagvekar <kshitij.nagvekar@workindia.in>
1 parent 8181ba5 commit a068642

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

flagsmith/flagsmith.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,18 +11,20 @@
1111

1212

1313
class Flagsmith:
14-
def __init__(self, environment_id, api=SERVER_URL):
14+
def __init__(self, environment_id, api=SERVER_URL, request_timeout=None):
1515
"""
1616
Initialise Flagsmith environment.
1717
1818
:param environment_id: environment key obtained from the Flagsmith UI
1919
:param api: (optional) api url to override when using self hosted version
20+
:param request_timeout: (optional) request timeout in seconds
2021
"""
2122
self.environment_id = environment_id
2223
self.api = api
2324
self.flags_endpoint = api + FLAGS_ENDPOINT
2425
self.identities_endpoint = api + IDENTITY_ENDPOINT
2526
self.traits_endpoint = api + TRAIT_ENDPOINT
27+
self.request_timeout = request_timeout
2628

2729
def get_flags(self, identity=None):
2830
"""
@@ -152,7 +154,10 @@ def set_trait(self, trait_key, trait_value, identity):
152154
}
153155

154156
requests.post(
155-
self.traits_endpoint, json=payload, headers=self._generate_header_content()
157+
self.traits_endpoint,
158+
json=payload,
159+
headers=self._generate_header_content(),
160+
timeout=self.request_timeout,
156161
)
157162

158163
def _get_flags_response(self, feature_name=None, identity=None):
@@ -172,12 +177,14 @@ def _get_flags_response(self, feature_name=None, identity=None):
172177
self.identities_endpoint,
173178
params=params,
174179
headers=self._generate_header_content(),
180+
timeout=self.request_timeout,
175181
)
176182
else:
177183
response = requests.get(
178184
self.flags_endpoint,
179185
params=params,
180186
headers=self._generate_header_content(),
187+
timeout=self.request_timeout,
181188
)
182189

183190
if response.status_code == 200:

0 commit comments

Comments
 (0)