BaseModNotes#
- class praw.models.mod_notes.BaseModNotes(reddit: praw.Reddit)#
Provides base methods to interact with moderator notes.
- __init__(reddit: praw.Reddit)#
Initialize a
BaseModNotesinstance.- Parameters:
reddit – An instance of
Reddit.
- create(*, label: Optional[str] = None, note: str, redditor: Optional[Union[Redditor, str]] = None, subreddit: Optional[Union[praw.models.Subreddit, str]] = None, thing: Optional[Union[Comment, Submission, str]] = None, **other_settings: Any) praw.models.ModNote#
Create a
ModNotefor a redditor in the specified subreddit.- Parameters:
label – The label for the note. As of this writing, this can be one of the following:
"ABUSE_WARNING","BAN","BOT_BAN","HELPFUL_USER","PERMA_BAN","SOLID_CONTRIBUTOR","SPAM_WARNING","SPAM_WATCH", orNone(default:None).note – The content of the note. As of this writing, this is limited to 250 characters.
redditor –
The redditor to create the note for (default:
None).Note
This parameter is required if
thingis not provided or this is not called from aRedditorinstance (e.g.,reddit.redditor.notes).subreddit –
The subreddit associated with the note (default:
None).Note
This parameter is required if
thingis not provided or this is not called from aSubredditinstance (e.g.,reddit.subreddit.mod).thing – Either the fullname of a comment/submission, a
Comment, or aSubmissionto associate with the note.other_settings – Additional keyword arguments can be provided to handle new parameters as Reddit introduces them.
- Returns:
The new
ModNoteobject.
For example, to create a note for u/spez in r/test:
reddit.subreddit("test").mod.notes.create( label="HELPFUL_USER", note="Test note", redditor="spez" ) # or reddit.redditor("spez").mod.notes.create( label="HELPFUL_USER", note="Test note", subreddit="test" ) # or reddit.notes.create( label="HELPFUL_USER", note="Test note", redditor="spez", subreddit="test" )
- delete(*, delete_all: bool = False, note_id: Optional[str] = None, redditor: Optional[Union[Redditor, str]] = None, subreddit: Optional[Union[praw.models.Subreddit, str]] = None)#
Delete note(s) for a redditor.
- Parameters:
delete_all –
When
True, delete all notes for the specified redditor in the specified subreddit (default:False).Note
This will make a request for each note.
note_id – The ID of the note to delete. This parameter is ignored if
delete_allisTrue.redditor –
The redditor to delete the note(s) for (default:
None). Can be aRedditorinstance or a redditor name.Note
This parameter is required if this method is not called from a
Redditorinstance (e.g.,redditor.notes).subreddit –
The subreddit to delete the note(s) from (default:
None). Can be aSubredditinstance or a subreddit name.Note
This parameter is required if this method is not called from a
Subredditinstance (e.g.,reddit.subreddit.mod).
For example, to delete a note with the ID
"ModNote_d324b280-5ecc-435d-8159-3e259e84e339", try:reddit.subreddit("test").mod.notes.delete( note_id="ModNote_d324b280-5ecc-435d-8159-3e259e84e339", redditor="spez" ) # or reddit.redditor("spez").notes.delete( note_id="ModNote_d324b280-5ecc-435d-8159-3e259e84e339", subreddit="test" ) # or reddit.notes.delete( note_id="ModNote_d324b280-5ecc-435d-8159-3e259e84e339", subreddit="test", redditor="spez", )
To delete all notes for u/spez, try:
reddit.subreddit("test").mod.notes.delete(delete_all=True, redditor="spez") # or reddit.redditor("spez").notes.delete(delete_all=True, subreddit="test") # or reddit.notes.delete(delete_all=True, subreddit="test", redditor="spez")