@@ -946,6 +946,56 @@ async def post_comments(
946
946
return await self .requester .get ("/reddit/post/comments" , params = params , timeout = timeout )
947
947
948
948
949
+ class TwitterEndpoints :
950
+ def __init__ (self , requester : AsyncRequester ):
951
+ self .requester = requester
952
+
953
+ async def user_info (
954
+ self ,
955
+ * ,
956
+ name : str ,
957
+ extra_params : Mapping [str , Any ] | None = None ,
958
+ timeout : float | None = None ,
959
+ ) -> EDResponse :
960
+ params : dict [str , Any ] = {
961
+ "name" : name ,
962
+ }
963
+ if extra_params is not None :
964
+ params = {** extra_params , ** params }
965
+ params = {k : v for k , v in params .items () if not (v is None or v is USE_DEFAULT )}
966
+ return await self .requester .get ("/twitter/user/info" , params = params , timeout = timeout )
967
+
968
+ async def user_tweets (
969
+ self ,
970
+ * ,
971
+ id : int ,
972
+ extra_params : Mapping [str , Any ] | None = None ,
973
+ timeout : float | None = None ,
974
+ ) -> EDResponse :
975
+ params : dict [str , Any ] = {
976
+ "id" : id ,
977
+ }
978
+ if extra_params is not None :
979
+ params = {** extra_params , ** params }
980
+ params = {k : v for k , v in params .items () if not (v is None or v is USE_DEFAULT )}
981
+ return await self .requester .get ("/twitter/user/tweets" , params = params , timeout = timeout )
982
+
983
+ async def post_info (
984
+ self ,
985
+ * ,
986
+ id : int ,
987
+ extra_params : Mapping [str , Any ] | None = None ,
988
+ timeout : float | None = None ,
989
+ ) -> EDResponse :
990
+ params : dict [str , Any ] = {
991
+ "id" : id ,
992
+ }
993
+ if extra_params is not None :
994
+ params = {** extra_params , ** params }
995
+ params = {k : v for k , v in params .items () if not (v is None or v is USE_DEFAULT )}
996
+ return await self .requester .get ("/twitter/post/info" , params = params , timeout = timeout )
997
+
998
+
949
999
class ThreadsEndpoints :
950
1000
def __init__ (self , requester : AsyncRequester ):
951
1001
self .requester = requester
@@ -1014,6 +1064,41 @@ async def user_posts(
1014
1064
params = {k : v for k , v in params .items () if not (v is None or v is USE_DEFAULT )}
1015
1065
return await self .requester .get ("/threads/user/posts" , params = params , timeout = timeout )
1016
1066
1067
+ async def post_replies (
1068
+ self ,
1069
+ * ,
1070
+ id : int ,
1071
+ extra_params : Mapping [str , Any ] | None = None ,
1072
+ timeout : float | None = None ,
1073
+ ) -> EDResponse :
1074
+ params : dict [str , Any ] = {
1075
+ "id" : id ,
1076
+ }
1077
+ if extra_params is not None :
1078
+ params = {** extra_params , ** params }
1079
+ params = {k : v for k , v in params .items () if not (v is None or v is USE_DEFAULT )}
1080
+ return await self .requester .get ("/threads/post/replies" , params = params , timeout = timeout )
1081
+
1082
+
1083
+ class SnapchatEndpoints :
1084
+ def __init__ (self , requester : AsyncRequester ):
1085
+ self .requester = requester
1086
+
1087
+ async def user_info (
1088
+ self ,
1089
+ * ,
1090
+ name : str ,
1091
+ extra_params : Mapping [str , Any ] | None = None ,
1092
+ timeout : float | None = None ,
1093
+ ) -> EDResponse :
1094
+ params : dict [str , Any ] = {
1095
+ "name" : name ,
1096
+ }
1097
+ if extra_params is not None :
1098
+ params = {** extra_params , ** params }
1099
+ params = {k : v for k , v in params .items () if not (v is None or v is USE_DEFAULT )}
1100
+ return await self .requester .get ("/snapchat/user/info" , params = params , timeout = timeout )
1101
+
1017
1102
1018
1103
class EDAsyncClient :
1019
1104
def __init__ (self , token : str , * , timeout : float = 600 , max_network_retries : int = 3 ):
@@ -1026,7 +1111,9 @@ def __init__(self, token: str, *, timeout: float = 600, max_network_retries: int
1026
1111
self .instagram = InstagramEndpoints (self .requester )
1027
1112
self .twitch = TwitchEndpoints (self .requester )
1028
1113
self .reddit = RedditEndpoints (self .requester )
1114
+ self .twitter = TwitterEndpoints (self .requester )
1029
1115
self .threads = ThreadsEndpoints (self .requester )
1116
+ self .snapchat = SnapchatEndpoints (self .requester )
1030
1117
1031
1118
async def request (self , uri : str , params : Mapping [str , Any ] | None = None ) -> EDResponse :
1032
1119
return await self .requester .get (uri , params = params or {})
0 commit comments