Skip to content

Commit 75bd81b

Browse files
laxmenaclaude
andcommitted
add invitee_email filter param to list_events and get_all_scheduled_events
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent baab7c8 commit 75bd81b

1 file changed

Lines changed: 7 additions & 3 deletions

File tree

calendly/calendly.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ def get_event_type(self, uuid: str) -> MutableMapping:
174174
response = self.request.get(f'{EVENT_TYPE}/' + uuid, data)
175175
return response.json()
176176

177-
def list_events(self, count: int=20, organization: str=None, sort: str=None, user_uri: str=None, status: str=None, min_start_time: str=None, max_start_time: str=None) -> MutableMapping:
177+
def list_events(self, count: int=20, organization: str=None, sort: str=None, user_uri: str=None, status: str=None, min_start_time: str=None, max_start_time: str=None, invitee_email: str=None) -> MutableMapping:
178178
"""
179179
Returns a List of Events
180180
@@ -186,6 +186,7 @@ def list_events(self, count: int=20, organization: str=None, sort: str=None, use
186186
status (str, optional): 'active' or 'canceled'. Defaults to None.
187187
min_start_time (str, optional): Include events with start times after this UTC time (e.g. "2020-01-02T03:04:05.678Z"). Defaults to None.
188188
max_start_time (str, optional): Include events with start times prior to this UTC time (e.g. "2020-01-02T03:04:05.678Z"). Defaults to None.
189+
invitee_email (str, optional): Filter events by invitee email address. Defaults to None.
189190
190191
Returns:
191192
dict: json decoded response of list of events.
@@ -203,6 +204,8 @@ def list_events(self, count: int=20, organization: str=None, sort: str=None, use
203204
data['min_start_time'] = min_start_time
204205
if max_start_time:
205206
data['max_start_time'] = max_start_time
207+
if invitee_email:
208+
data['invitee_email'] = invitee_email
206209
response = self.request.get(EVENTS, data)
207210
return response.json()
208211

@@ -271,19 +274,20 @@ def get_all_event_types(self, user_uri: str) -> List[MutableMapping]:
271274

272275
return data
273276

274-
def get_all_scheduled_events(self, user_uri: str, min_start_time: str=None, max_start_time: str=None) -> List[MutableMapping]:
277+
def get_all_scheduled_events(self, user_uri: str, min_start_time: str=None, max_start_time: str=None, invitee_email: str=None) -> List[MutableMapping]:
275278
"""
276279
Get all scheduled events by recursively crawling on all result pages.
277280
278281
Args:
279282
user_uri (str, optional): User URI.
280283
min_start_time (str, optional): Include events with start times after this UTC time (e.g. "2020-01-02T03:04:05.678Z"). Defaults to None.
281284
max_start_time (str, optional): Include events with start times prior to this UTC time (e.g. "2020-01-02T03:04:05.678Z"). Defaults to None.
285+
invitee_email (str, optional): Filter events by invitee email address. Defaults to None.
282286
283287
Returns:
284288
list: json scheduled event objects
285289
"""
286-
first = self.list_events(user_uri=user_uri, count=100, min_start_time=min_start_time, max_start_time=max_start_time)
290+
first = self.list_events(user_uri=user_uri, count=100, min_start_time=min_start_time, max_start_time=max_start_time, invitee_email=invitee_email)
287291
next_page = first['pagination']['next_page']
288292

289293
data = first['collection']

0 commit comments

Comments
 (0)