22# https://dev.twitch.tv/docs/v5/reference/channels/
33
44from twitch import keys , methods
5+ from twitch .api .parameters import Boolean , BroadcastType , Cursor , Direction , Duration , Language , VideoSort
56from twitch .queries import V5Query as Qry
67from twitch .queries import query
7- from twitch .api .parameters import Boolean , BroadcastType , Cursor , Direction , Duration , Language , VideoSort
88
99
10+ # required scope: channel_read
1011@query
1112def get_channel ():
1213 q = Qry ('channels' )
1314 return q
1415
1516
17+ # required scope: none
1618@query
1719def get_channel_by_id (channel_id ):
1820 q = Qry ('channels/{channel_id}' )
1921 q .add_urlkw (keys .CHANNEL_ID , channel_id )
2022 return q
2123
2224
25+ # required scope: channel_editor
2326@query
2427def update_channel (channel_id , status = None , game = None , delay = None , channel_feed_enabled = None ):
2528 q = Qry ('channels/{channel_id}' , method = methods .PUT )
@@ -37,13 +40,15 @@ def update_channel(channel_id, status=None, game=None, delay=None, channel_feed_
3740 return q
3841
3942
43+ # required scope: channel_read
4044@query
4145def get_channel_editors (channel_id ):
4246 q = Qry ('channels/{channel_id}/editors' )
4347 q .add_urlkw (keys .CHANNEL_ID , channel_id )
4448 return q
4549
4650
51+ # required scope: none
4752@query
4853def get_channel_followers (channel_id , limit = 25 , offset = 0 , cursor = 'MA==' , direction = Direction .DESC ):
4954 q = Qry ('channels/{channel_id}/follows' )
@@ -55,14 +60,15 @@ def get_channel_followers(channel_id, limit=25, offset=0, cursor='MA==', directi
5560 return q
5661
5762
63+ # required scope: none
5864@query
5965def get_channel_teams (channel_id ):
6066 q = Qry ('channels/{channel_id}/teams' )
6167 q .add_urlkw (keys .CHANNEL_ID , channel_id )
6268 return q
6369
6470
65- # Needs Authentication
71+ # required scope: channel_subscriptions
6672@query
6773def get_channel_subscribers (channel_id , limit = 25 , offset = 0 , direction = Direction .ASC ):
6874 q = Qry ('channels/{channel_id}/subscriptions' )
@@ -73,15 +79,16 @@ def get_channel_subscribers(channel_id, limit=25, offset=0, direction=Direction.
7379 return q
7480
7581
76- # Needs Authentication
82+ # required scope: channel_check_subscription
7783@query
78- def check_channel_subscription (channel_id , user_id ):
84+ def check_subscription (channel_id , user_id ):
7985 q = Qry ('channels/{channel_id}/subscriptions/{user_id}' )
8086 q .add_urlkw (keys .CHANNEL_ID , channel_id )
8187 q .add_urlkw (keys .USER_ID , user_id )
8288 return q
8389
8490
91+ # required scope: none
8592@query
8693def get_channel_videos (channel_id , limit = 10 , offset = 0 ,
8794 broadcast_type = BroadcastType .HIGHLIGHT ,
@@ -98,6 +105,7 @@ def get_channel_videos(channel_id, limit=10, offset=0,
98105 return q
99106
100107
108+ # required scope: channel_commercial
101109@query
102110def start_commercial (channel_id , duration = 30 ):
103111 q = Qry ('channels/{channel_id}/commercial' , method = methods .POST )
@@ -106,20 +114,23 @@ def start_commercial(channel_id, duration=30):
106114 return q
107115
108116
117+ # required scope: channel_stream
109118@query
110119def reset_stream_key (channel_id ):
111120 q = Qry ('channels/{channel_id}/stream_key' , method = methods .DELETE )
112121 q .add_urlkw (keys .CHANNEL_ID , channel_id )
113122 return q
114123
115124
125+ # required scope: channel_editor
116126@query
117127def get_channel_community (channel_id ):
118128 q = Qry ('channels/{channel_id}/community' )
119129 q .add_urlkw (keys .CHANNEL_ID , channel_id )
120130 return q
121131
122132
133+ # required scope: channel_editor
123134@query
124135def set_channel_community (channel_id , community_id ):
125136 q = Qry ('channels/{channel_id}/community/{community_id}' , method = methods .PUT )
@@ -128,6 +139,7 @@ def set_channel_community(channel_id, community_id):
128139 return q
129140
130141
142+ # required scope: channel_editor
131143@query
132144def delete_channel_from_community (channel_id ):
133145 q = Qry ('channels/{channel_id}/community' , method = methods .DELETE )
0 commit comments