Skip to content
Back to top
View this page

# LiveContributorRelationship

class praw.models.reddit.live.LiveContributorRelationship(thread: praw.models.LiveThread)

  Provide methods to interact with live threads’ contributors.

  __call__() → List[praw.models.Redditor]

    Return a `RedditorList` for live threads’ contributors.

    Usage:

        thread = reddit.live("ukaeu1ik4sw5")
        for contributor in thread.contributor():
            print(contributor)

  __init__(thread: praw.models.LiveThread)

    Initialize a `LiveContributorRelationship` instance.

    Parameters:

      thread – An instance of `LiveThread`.

    Note

    This class should not be initialized directly. Instead, obtain an instance via: `LiveThread.contributor()`.

  accept_invite()

    Accept an invite to contribute the live thread.

    Usage:

        thread = reddit.live("ydwwxneu7vsa")
        thread.contributor.accept_invite()

  invite(redditor: str | praw.models.Redditor, *, permissions: List[str] | None = None)

    Invite a redditor to be a contributor of the live thread.

    Parameters:

      - redditor – A redditor name or `Redditor` instance.

      - permissions – When provided (not `None`), permissions should be a list of strings specifying which subset of permissions to grant. An empty list `[]` indicates no permissions, and when not provided (`None`), indicates full permissions.

    Raises:

      `RedditAPIException` if the invitation already exists.

    Usage:

        thread = reddit.live("ukaeu1ik4sw5")
        redditor = reddit.redditor("spez")

        # "manage" and "settings" permissions
        thread.contributor.invite(redditor, permissions=["manage", "settings"])

    See also

    `LiveContributorRelationship.remove_invite()` to remove the invite for redditor.

  leave()

    Abdicate the live thread contributor position (use with care).

    Usage:

        thread = reddit.live("ydwwxneu7vsa")
        thread.contributor.leave()

  remove(redditor: str | praw.models.Redditor)

    Remove the redditor from the live thread contributors.

    Parameters:

      redditor – A redditor fullname (e.g., `"t2_1w72"`) or `Redditor` instance.

    Usage:

        thread = reddit.live("ukaeu1ik4sw5")
        redditor = reddit.redditor("spez")
        thread.contributor.remove(redditor)
        thread.contributor.remove("t2_1w72")  # with fullname

  remove_invite(redditor: str | praw.models.Redditor)

    Remove the invite for redditor.

    Parameters:

      redditor – A redditor fullname (e.g., `"t2_1w72"`) or `Redditor` instance.

    Usage:

        thread = reddit.live("ukaeu1ik4sw5")
        redditor = reddit.redditor("spez")
        thread.contributor.remove_invite(redditor)
        thread.contributor.remove_invite("t2_1w72")  # with fullname

    See also

    `LiveContributorRelationship.invite()` to invite a redditor to be a contributor of the live thread.

  update(redditor: str | praw.models.Redditor, *, permissions: List[str] | None = None)

    Update the contributor permissions for `redditor`.

    Parameters:

      - redditor – A redditor name or `Redditor` instance.

      - permissions – When provided (not `None`), permissions should be a list of strings specifying which subset of permissions to grant (other permissions are removed). An empty list `[]` indicates no permissions, and when not provided (`None`), indicates full permissions.

    For example, to grant all permissions to the contributor, try:

        thread = reddit.live("ukaeu1ik4sw5")
        thread.contributor.update("spez")

    To grant `"access"` and `"edit"` permissions (and to remove other permissions), try:

        thread.contributor.update("spez", permissions=["access", "edit"])

    To remove all permissions from the contributor, try:

        subreddit.moderator.update("spez", permissions=[])

  update_invite(redditor: str | praw.models.Redditor, *, permissions: List[str] | None = None)

    Update the contributor invite permissions for `redditor`.

    Parameters:

      - redditor – A redditor name or `Redditor` instance.

      - permissions – When provided (not `None`), permissions should be a list of strings specifying which subset of permissions to grant (other permissions are removed). An empty list `[]` indicates no permissions, and when not provided (`None`), indicates full permissions.

    For example, to set all permissions to the invitation, try:

        thread = reddit.live("ukaeu1ik4sw5")
        thread.contributor.update_invite("spez")

    To set `"access"` and `"edit"` permissions (and to remove other permissions) to the invitation, try:

        thread.contributor.update_invite("spez", permissions=["access", "edit"])

    To remove all permissions from the invitation, try:

        thread.contributor.update_invite("spez", permissions=[])