def get_subscribers(channel_id, limit=25, offset=0, direction=Direction.ASC): q = Qry('channels/{channel_id}/subscriptions') q.add_urlkw(keys.CHANNEL_ID, channel_id) q.add_param(keys.LIMIT, limit, 25) q.add_param(keys.OFFSET, offset, 0) q.add_param(keys.DIRECTION, direction, Direction.DESC) return q
def set_community(channel_id, community_id): log.deprecated_query('channels.set_community', 'channels.set_communities') q = Qry('channels/{channel_id}/community/{community_id}', method=methods.PUT) q.add_urlkw(keys.CHANNEL_ID, channel_id) q.add_urlkw(keys.COMMUNITY_ID, community_id) return q
def get_collections(channel_id, limit=10, cursor='MA==', containing_item=None): q = Qry('channels/{channel_id}/collections', use_token=False) q.add_urlkw(keys.CHANNEL_ID, channel_id) q.add_param(keys.LIMIT, limit, 10) q.add_param(keys.CURSOR, Cursor.validate(cursor), 'MA==') q.add_param(keys.CONTAINING_ITEM, containing_item, None) # 'video:<video_id>' return q
def add_timeout(community_id, user_id, duration=1, reason=None): q = Qry('communities/{community_id}/timeouts/{user_id}', method=methods.PUT) q.add_urlkw(keys.COMMUNITY_ID, community_id) q.add_urlkw(keys.USER_ID, user_id) q.add_data(keys.DURATION, duration) q.add_data(keys.REASON, reason) return q
def follow_channel(user_id, channel_id, notifications=Boolean.FALSE): q = Qry('users/{user_id}/follows/channels/{channel_id}', method=methods.PUT) q.add_urlkw(keys.USER_ID, user_id) q.add_urlkw(keys.CHANNEL_ID, channel_id) q.add_data(keys.NOTIFICATIONS, Boolean.validate(notifications), Boolean.FALSE) return q
def update(video_id, title=None, description=None, game=None, language=None, tag_list=None): q = Qry('videos/{video_id}', method=methods.PUT) q.add_urlkw(keys.VIDEO_ID, video_id) q.add_param(keys.TITLE, title) q.add_param(keys.DESCRIPTION, description) q.add_param(keys.GAME, game) if language is not None: q.add_param(keys.LANGUAGE, Language.validate(language)) q.add_param(keys.TAG_LIST, tag_list) return q
def get_followers(channel_id, limit=25, offset=0, cursor='MA==', direction=Direction.DESC): q = Qry('channels/{channel_id}/follows') q.add_urlkw(keys.CHANNEL_ID, channel_id) q.add_param(keys.LIMIT, limit, 25) q.add_param(keys.OFFSET, offset, 0) q.add_param(keys.CURSOR, Cursor.validate(cursor), 'MA==') q.add_param(keys.DIRECTION, direction, Direction.DESC) return q
def get_follows(user_id, limit=25, offset=0, direction=Direction.DESC, sort_by=SortBy.CREATED_AT): q = Qry('users/{user_id}/follows/channels') q.add_urlkw(keys.USER_ID, user_id) q.add_param(keys.LIMIT, limit, 25) q.add_param(keys.OFFSET, offset, 0) q.add_param(keys.DIRECTION, direction, Direction.DESC) q.add_param(keys.SORT_BY, sort_by, SortBy.CREATED_AT) return q
def update(community_id, summary=None, description=None, rules=None, email=None): q = Qry('communities/{community_id}', method=methods.PUT) q.add_urlkw(keys.COMMUNITY_ID, community_id) q.add_data(keys.SUMMARY, summary) q.add_data(keys.DESCRIPTION, description) q.add_data(keys.RULES, rules) q.add_data(keys.EMAIL, email) return q
def get_videos(channel_id, limit=10, offset=0, broadcast_type=BroadcastType.HIGHLIGHT, hls=Boolean.FALSE, sort_by=VideoSort.TIME, language=Language.ALL): q = Qry('channels/{id}/videos') q.add_urlkw(keys.ID, channel_id) q.add_param(keys.LIMIT, limit, 10) q.add_param(keys.OFFSET, offset, 0) q.add_param(keys.BROADCAST_TYPE, BroadcastType.validate(broadcast_type)) q.add_param(keys.SORT, VideoSort.validate(sort_by), VideoSort.TIME) q.add_param(keys.LANGUAGE, Language.validate(language), Language.ALL) q.add_param(keys.HLS, Boolean.validate(hls), Boolean.FALSE) return q
def update(channel_id, status=None, game=None, delay=None, channel_feed_enabled=None): q = Qry('channels/{channel_id}', method=methods.PUT) q.add_urlkw(keys.CHANNEL_ID, channel_id) channel = {} if status is not None: channel[keys.STATUS] = status if game is not None: channel[keys.GAME] = game if delay is not None: channel[keys.DELAY] = delay if channel_feed_enabled is not None: channel[keys.CHANNEL_FEED_ENABLED] = Boolean.validate( channel_feed_enabled) q.add_data(keys.CHANNEL, channel) return q
def delete_comment_reaction(channel_id, post_id, comment_id, emote_id): q = Qry('feed/{channel_id}/posts/{post_id}/comments/{comment_id}/reactions', method=methods.DELETE) q.add_urlkw(keys.CHANNEL_ID, channel_id) q.add_urlkw(keys.POST_ID, post_id) q.add_urlkw(keys.COMMENT_ID, comment_id) q.add_param(keys.EMOTE_ID, emote_id) return q
def delete(video_id): q = Qry('videos/{video_id}', method=methods.DELETE) q.add_urlkw(keys.VIDEO_ID, video_id) return q
def check_subscription(user_id, channel_id): q = Qry('users/{user_id}/subscriptions/{channel_id}') q.add_urlkw(keys.USER_ID, user_id) q.add_urlkw(keys.CHANNEL_ID, channel_id) return q
def get_emotes(user_id): q = Qry('users/{user_id}/emotes') q.add_urlkw(keys.USER_ID, user_id) return q
def by_id(user_id): q = Qry('users/{user_id}') q.add_urlkw(keys.USER_ID, user_id) return q
def unblock_user(user_id, target_id): q = Qry('users/{user_id}/blocks/{target_id}', method=methods.DELETE) q.add_urlkw(keys.USER_ID, user_id) q.add_urlkw(keys.TARGET_ID, target_id) return q
def by_name(name): q = Qry('teams/{team}', use_token=False) q.add_urlkw(keys.TEAM, name) return q
def get_community(channel_id): q = Qry('channels/{channel_id}/community') q.add_urlkw(keys.CHANNEL_ID, channel_id) return q
def by_slug(slug): q = Qry('clips/{slug}') q.add_urlkw(keys.SLUG, slug) return q
def get_editors(channel_id): q = Qry('channels/{channel_id}/editors') q.add_urlkw(keys.CHANNEL_ID, channel_id) return q
def start_commercial(channel_id, duration=30): q = Qry('channels/{channel_id}/commercial', method=methods.POST) q.add_urlkw(keys.CHANNEL_ID, channel_id) q.add_data(keys.DURATION, Duration.validate(duration)) return q
def unfollow_channel(user_id, channel_id): q = Qry('users/{user_id}/follows/channels/{channel_id}', method=methods.DELETE) q.add_urlkw(keys.USER_ID, user_id) q.add_urlkw(keys.CHANNEL_ID, channel_id) return q
def set_community(channel_id, community_id): q = Qry('channels/{channel_id}/community/{community_id}', method=methods.PUT) q.add_urlkw(keys.CHANNEL_ID, channel_id) q.add_urlkw(keys.COMMUNITY_ID, community_id) return q
def check_follows(user_id, channel_id): q = Qry('users/{user_id}/follows/channels/{channel_id}') q.add_urlkw(keys.USER_ID, user_id) q.add_urlkw(keys.CHANNEL_ID, channel_id) return q
def get_teams(channel_id): q = Qry('channels/{channel_id}/teams') q.add_urlkw(keys.CHANNEL_ID, channel_id) return q
def delete_from_community(channel_id): q = Qry('channels/{channel_id}/community', method=methods.DELETE) q.add_urlkw(keys.CHANNEL_ID, channel_id) return q
def reset_stream_key(channel_id): q = Qry('channels/{channel_id}/stream_key', method=methods.DELETE) q.add_urlkw(keys.CHANNEL_ID, channel_id) return q
def get_blocks(user_id, limit=25, offset=0): q = Qry('users/{user_id}/blocks') q.add_urlkw(keys.USER_ID, user_id) q.add_param(keys.LIMIT, limit, 25) q.add_param(keys.OFFSET, offset, 0) return q
def by_id(channel_id): q = Qry('channels/{channel_id}') q.add_urlkw(keys.CHANNEL_ID, channel_id) return q