@@ -645,6 +645,7 @@ def create_channel_type(
645645 typing_events : Optional [bool ] = None ,
646646 uploads : Optional [bool ] = None ,
647647 url_enrichment : Optional [bool ] = None ,
648+ user_message_reminders : Optional [bool ] = None ,
648649 blocklists : Optional [List [BlockListOptions ]] = None ,
649650 commands : Optional [List [str ]] = None ,
650651 permissions : Optional [List [PolicyRequest ]] = None ,
@@ -674,6 +675,7 @@ def create_channel_type(
674675 typing_events = typing_events ,
675676 uploads = uploads ,
676677 url_enrichment = url_enrichment ,
678+ user_message_reminders = user_message_reminders ,
677679 blocklists = blocklists ,
678680 commands = commands ,
679681 permissions = permissions ,
@@ -730,6 +732,7 @@ def update_channel_type(
730732 typing_events : Optional [bool ] = None ,
731733 uploads : Optional [bool ] = None ,
732734 url_enrichment : Optional [bool ] = None ,
735+ user_message_reminders : Optional [bool ] = None ,
733736 allowed_flag_reasons : Optional [List [str ]] = None ,
734737 blocklists : Optional [List [BlockListOptions ]] = None ,
735738 commands : Optional [List [str ]] = None ,
@@ -764,6 +767,7 @@ def update_channel_type(
764767 typing_events = typing_events ,
765768 uploads = uploads ,
766769 url_enrichment = url_enrichment ,
770+ user_message_reminders = user_message_reminders ,
767771 allowed_flag_reasons = allowed_flag_reasons ,
768772 blocklists = blocklists ,
769773 commands = commands ,
@@ -1171,6 +1175,59 @@ def remove_poll_vote(
11711175 path_params = path_params ,
11721176 )
11731177
1178+ def delete_reminder (
1179+ self , message_id : str , user_id : Optional [str ] = None
1180+ ) -> StreamResponse [DeleteReminderResponse ]:
1181+ query_params = build_query_param (user_id = user_id )
1182+ path_params = {
1183+ "message_id" : message_id ,
1184+ }
1185+
1186+ return self .delete (
1187+ "/api/v2/chat/messages/{message_id}/reminders" ,
1188+ DeleteReminderResponse ,
1189+ query_params = query_params ,
1190+ path_params = path_params ,
1191+ )
1192+
1193+ def update_reminder (
1194+ self ,
1195+ message_id : str ,
1196+ remind_at : Optional [datetime ] = None ,
1197+ user_id : Optional [str ] = None ,
1198+ user : Optional [UserRequest ] = None ,
1199+ ) -> StreamResponse [UpdateReminderResponse ]:
1200+ path_params = {
1201+ "message_id" : message_id ,
1202+ }
1203+ json = build_body_dict (remind_at = remind_at , user_id = user_id , user = user )
1204+
1205+ return self .patch (
1206+ "/api/v2/chat/messages/{message_id}/reminders" ,
1207+ UpdateReminderResponse ,
1208+ path_params = path_params ,
1209+ json = json ,
1210+ )
1211+
1212+ def create_reminder (
1213+ self ,
1214+ message_id : str ,
1215+ remind_at : Optional [datetime ] = None ,
1216+ user_id : Optional [str ] = None ,
1217+ user : Optional [UserRequest ] = None ,
1218+ ) -> StreamResponse [ReminderResponseData ]:
1219+ path_params = {
1220+ "message_id" : message_id ,
1221+ }
1222+ json = build_body_dict (remind_at = remind_at , user_id = user_id , user = user )
1223+
1224+ return self .post (
1225+ "/api/v2/chat/messages/{message_id}/reminders" ,
1226+ ReminderResponseData ,
1227+ path_params = path_params ,
1228+ json = json ,
1229+ )
1230+
11741231 def get_replies (
11751232 self ,
11761233 parent_id : str ,
@@ -1551,6 +1608,30 @@ def query_banned_users(
15511608 query_params = query_params ,
15521609 )
15531610
1611+ def query_reminders (
1612+ self ,
1613+ limit : Optional [int ] = None ,
1614+ next : Optional [str ] = None ,
1615+ prev : Optional [str ] = None ,
1616+ user_id : Optional [str ] = None ,
1617+ sort : Optional [List [SortParamRequest ]] = None ,
1618+ filter : Optional [Dict [str , object ]] = None ,
1619+ user : Optional [UserRequest ] = None ,
1620+ ) -> StreamResponse [QueryRemindersResponse ]:
1621+ json = build_body_dict (
1622+ limit = limit ,
1623+ next = next ,
1624+ prev = prev ,
1625+ user_id = user_id ,
1626+ sort = sort ,
1627+ filter = filter ,
1628+ user = user ,
1629+ )
1630+
1631+ return self .post (
1632+ "/api/v2/chat/reminders/query" , QueryRemindersResponse , json = json
1633+ )
1634+
15541635 def search (
15551636 self , payload : Optional [SearchPayload ] = None
15561637 ) -> StreamResponse [SearchResponse ]:
0 commit comments