reddit.inbox¶
-
class
praw.models.Inbox(reddit: Reddit, _data: Optional[Dict[str, Any]])¶ Inbox is a Listing class that represents the Inbox.
-
__init__(reddit: Reddit, _data: Optional[Dict[str, Any]])¶ Initialize a PRAWModel instance.
Parameters: reddit – An instance of Reddit.
-
all(**generator_kwargs) → Generator[[Union[Message, Comment], None], None]¶ Return a
ListingGeneratorfor all inbox comments and messages.Additional keyword arguments are passed in the initialization of
ListingGenerator.To output the type and ID of all items available via this listing do:
for item in reddit.inbox.all(limit=None): print(repr(item))
-
collapse(items: List[Message])¶ Mark an inbox message as collapsed.
Parameters: items – A list containing instances of Message.Requests are batched at 25 items (reddit limit).
For example, to collapse all unread Messages, try:
from praw.models import Message unread_messages = [] for item in reddit.inbox.unread(limit=None): if isinstance(item, Message): unread_messages.append(item) reddit.inbox.collapse(unread_messages)
See also
-
comment_replies(**generator_kwargs) → Generator[[Comment, None], None]¶ Return a
ListingGeneratorfor comment replies.Additional keyword arguments are passed in the initialization of
ListingGenerator.To output the author of one request worth of comment replies try:
for reply in reddit.inbox.comment_replies(): print(reply.author)
-
mark_read(items: List[Union[Comment, Message]])¶ Mark Comments or Messages as read.
Parameters: items – A list containing instances of Commentand/orMessageto be be marked as read relative to the authorized user’s inbox.Requests are batched at 25 items (reddit limit).
For example, to mark all unread Messages as read, try:
from praw.models import Message unread_messages = [] for item in reddit.inbox.unread(limit=None): if isinstance(item, Message): unread_messages.append(item) reddit.inbox.mark_read(unread_messages)
See also
-
mark_unread(items: List[Union[Comment, Message]])¶ Unmark Comments or Messages as read.
Parameters: items – A list containing instances of Commentand/orMessageto be be marked as unread relative to the authorized user’s inbox.Requests are batched at 25 items (reddit limit).
For example, to mark the first 10 items as unread try:
to_unread = list(reddit.inbox.all(limit=10)) reddit.inbox.mark_unread(to_unread)
See also
-
mentions(**generator_kwargs) → Generator[[Comment, None], None]¶ Return a
ListingGeneratorfor mentions.A mention is
Commentin which the authorized redditor is named in its body like/u/redditor_name.Additional keyword arguments are passed in the initialization of
ListingGenerator.For example, to output the author and body of the first 25 mentions try:
for mention in reddit.inbox.mentions(limit=25): print('{}\n{}\n'.format(mention.author, mention.body))
-
message(message_id: str) → Message¶ Return a Message corresponding to
message_id.Parameters: message_id – The base36 id of a message. For example:
message = reddit.inbox.message('7bnlgu')
-
messages(**generator_kwargs) → Generator[[Message, None], None]¶ Return a
ListingGeneratorfor inbox messages.Additional keyword arguments are passed in the initialization of
ListingGenerator.For example, to output the subject of the most recent 5 messages try:
for message in reddit.inbox.messages(limit=5): print(message.subject)
-
classmethod
parse(data: Dict[str, Any], reddit: Reddit) → Any¶ Return an instance of
clsfromdata.Parameters: - data – The structured data.
- reddit – An instance of
Reddit.
-
sent(**generator_kwargs) → Generator[[Message, None], None]¶ Return a
ListingGeneratorfor sent messages.Additional keyword arguments are passed in the initialization of
ListingGenerator.For example, to output the recipient of the most recent 15 messages try:
for message in reddit.inbox.sent(limit=15): print(message.dest)
-
stream(**stream_options) → Generator[[Union[Message, Comment], None], None]¶ Yield new inbox items as they become available.
Items are yielded oldest first. Up to 100 historical items will initially be returned.
Keyword arguments are passed to
stream_generator().For example, to retrieve all new inbox items, try:
for item in reddit.inbox.stream(): print(item)
-
submission_replies(**generator_kwargs) → Generator[[Comment, None], None]¶ Return a
ListingGeneratorfor submission replies.Additional keyword arguments are passed in the initialization of
ListingGenerator.To output the author of one request worth of submission replies try:
for reply in reddit.inbox.submission_replies(): print(reply.author)
-
uncollapse(items: List[Message])¶ Mark an inbox message as uncollapsed.
Parameters: items – A list containing instances of Message.Requests are batched at 25 items (reddit limit).
For example, to uncollapse all unread Messages, try:
from praw.models import Message unread_messages = [] for item in reddit.inbox.unread(limit=None): if isinstance(item, Message): unread_messages.append(item) reddit.inbox.uncollapse(unread_messages)
See also
-
unread(mark_read: bool = False, **generator_kwargs) → Generator[[Union[Message, Comment], None], None]¶ Return a
ListingGeneratorfor unread comments and messages.Parameters: mark_read – Marks the inbox as read (default: False). Note
This only marks the inbox as read not the messages. Use
Inbox.mark_read()to mark the messages.Additional keyword arguments are passed in the initialization of
ListingGenerator.For example, to output the author of unread comments try:
from praw.models import Comment for item in reddit.inbox.unread(limit=None): if isinstance(item, Comment): print(item.author)
-