Repository: praw-dev/praw

Issue:
Add ability to enable/disable inbox replies
There is [an API endpoint](https://www.reddit.com/dev/api/#POST_api_sendreplies) that makes it possible to enable or disable inbox replies on an existing comment or submission. It has not yet been added to PRAW (as of 4.5.1).


Discussion:

Resolving patch:
diff --git a/praw/const.py b/praw/const.py
--- a/praw/const.py
+++ b/praw/const.py
@@ -119,6 +119,7 @@
     'save':                   'api/save/',
     'search':                 'r/{subreddit}/search/',
     'select_flair':           'r/{subreddit}/api/selectflair/',
+    'sendreplies':            'api/sendreplies',
     'sent':                   'message/sent/',
     'setpermissions':         'r/{subreddit}/api/setpermissions/',
     'spoiler':                'api/spoiler/',
diff --git a/praw/models/reddit/mixins/__init__.py b/praw/models/reddit/mixins/__init__.py
--- a/praw/models/reddit/mixins/__init__.py
+++ b/praw/models/reddit/mixins/__init__.py
@@ -3,6 +3,7 @@
 from .editable import EditableMixin  # NOQA
 from .gildable import GildableMixin  # NOQA
 from .inboxable import InboxableMixin  # NOQA
+from .inboxtoggleable import InboxToggleableMixin  # NOQA
 from .messageable import MessageableMixin  # NOQA
 from .replyable import ReplyableMixin  # NOQA
 from .reportable import ReportableMixin  # NOQA
@@ -77,6 +78,7 @@ def unignore_reports(self):
                                 data={'id': self.thing.fullname})
 
 
-class UserContentMixin(EditableMixin, GildableMixin, ReplyableMixin,
-                       ReportableMixin, SavableMixin, VotableMixin):
+class UserContentMixin(EditableMixin, GildableMixin, InboxToggleableMixin,
+                       ReplyableMixin, ReportableMixin, SavableMixin,
+                       VotableMixin):
     """A convenience mixin that applies to both Comments and Submissions."""
diff --git a/praw/models/reddit/mixins/inboxtoggleable.py b/praw/models/reddit/mixins/inboxtoggleable.py
new file mode 100644
--- /dev/null
+++ b/praw/models/reddit/mixins/inboxtoggleable.py
@@ -0,0 +1,16 @@
+"""Provide the InboxToggleableMixin class."""
+from ....const import API_PATH
+
+
+class InboxToggleableMixin(object):
+    """Interface for classes that can optionally receive inbox replies."""
+
+    def disable_inbox_replies(self):
+        """Disable inbox replies for the item."""
+        self._reddit.post(API_PATH['sendreplies'], data={'id': self.fullname,
+                                                         'state': False})
+
+    def enable_inbox_replies(self):
+        """Enable inbox replies for the item."""
+        self._reddit.post(API_PATH['sendreplies'], data={'id': self.fullname,
+                                                         'state': True})


Test patch:
diff --git a/tests/integration/cassettes/TestComment.test_disable_inbox_replies.json b/tests/integration/cassettes/TestComment.test_disable_inbox_replies.json
new file mode 100644
--- /dev/null
+++ b/tests/integration/cassettes/TestComment.test_disable_inbox_replies.json
@@ -0,0 +1,113 @@
+{
+  "http_interactions": [
+    {
+      "recorded_at": "2017-05-22T01:46:36",
+      "request": {
+        "body": {
+          "encoding": "utf-8",
+          "string": "grant_type=password&password=<PASSWORD>&username=<USERNAME>"
+        },
+        "headers": {
+          "Accept": "*/*",
+          "Accept-Encoding": "identity",
+          "Authorization": "Basic <BASIC_AUTH>",
+          "Connection": "keep-alive",
+          "Content-Length": "57",
+          "Content-Type": "application/x-www-form-urlencoded",
+          "User-Agent": "<USER_AGENT> PRAW/5.0.0.dev0 prawcore/0.10.1"
+        },
+        "method": "POST",
+        "uri": "https://www.reddit.com/api/v1/access_token"
+      },
+      "response": {
+        "body": {
+          "encoding": "UTF-8",
+          "string": "{\"access_token\": \"<ACCESS_TOKEN>\", \"token_type\": \"bearer\", \"expires_in\": 3600, \"scope\": \"*\"}"
+        },
+        "headers": {
+          "Accept-Ranges": "bytes",
+          "Connection": "keep-alive",
+          "Content-Length": "105",
+          "Content-Type": "application/json; charset=UTF-8",
+          "Date": "Mon, 22 May 2017 01:46:37 GMT",
+          "Server": "snooserv",
+          "Strict-Transport-Security": "max-age=15552000; includeSubDomains; preload",
+          "Via": "1.1 varnish",
+          "X-Cache": "MISS",
+          "X-Cache-Hits": "0",
+          "X-Moose": "majestic",
+          "X-Served-By": "cache-ord1739-ORD",
+          "X-Timer": "S1495417597.104181,VS0,VE323",
+          "cache-control": "max-age=0, must-revalidate",
+          "set-cookie": "session_tracker=z47M97qHK4VLeX8O29.0.1495417597118.Z0FBQUFBQlpJa0w5Y3d0YlFKT3NKeXY2T0xiYTJfdG9XMHRsS1hzU1czY2NiamJzRUZLNWZmVFM5Rjl3UExYWktadkRWaFlZMVgtYXpBbFFxdUdYN0dpOG1hQi1SNjJFMUdmOWNfUzVlNVZSZnFIN2tWT0l3MHFuTHFiNHk1eWoxVm5BdUlzT0FzOUY; Domain=reddit.com; Max-Age=7199; Path=/; expires=Mon, 22-May-2017 03:46:37 GMT; secure",
+          "x-content-type-options": "nosniff",
+          "x-frame-options": "SAMEORIGIN",
+          "x-xss-protection": "1; mode=block"
+        },
+        "status": {
+          "code": 200,
+          "message": "OK"
+        },
+        "url": "https://www.reddit.com/api/v1/access_token"
+      }
+    },
+    {
+      "recorded_at": "2017-05-22T01:46:37",
+      "request": {
+        "body": {
+          "encoding": "utf-8",
+          "string": "api_type=json&id=t1_dcc9snh&state=False"
+        },
+        "headers": {
+          "Accept": "*/*",
+          "Accept-Encoding": "identity",
+          "Authorization": "bearer <ACCESS_TOKEN>",
+          "Connection": "keep-alive",
+          "Content-Length": "39",
+          "Content-Type": "application/x-www-form-urlencoded",
+          "Cookie": "edgebucket=7h28y6vWLAiFrL1ASY; session_tracker=z47M97qHK4VLeX8O29.0.1495417597118.Z0FBQUFBQlpJa0w5Y3d0YlFKT3NKeXY2T0xiYTJfdG9XMHRsS1hzU1czY2NiamJzRUZLNWZmVFM5Rjl3UExYWktadkRWaFlZMVgtYXpBbFFxdUdYN0dpOG1hQi1SNjJFMUdmOWNfUzVlNVZSZnFIN2tWT0l3MHFuTHFiNHk1eWoxVm5BdUlzT0FzOUY",
+          "User-Agent": "<USER_AGENT> PRAW/5.0.0.dev0 prawcore/0.10.1"
+        },
+        "method": "POST",
+        "uri": "https://oauth.reddit.com/api/sendreplies?raw_json=1"
+      },
+      "response": {
+        "body": {
+          "encoding": "UTF-8",
+          "string": "{}"
+        },
+        "headers": {
+          "Accept-Ranges": "bytes",
+          "Connection": "keep-alive",
+          "Content-Length": "2",
+          "Content-Type": "application/json; charset=UTF-8",
+          "Date": "Mon, 22 May 2017 01:46:37 GMT",
+          "Server": "snooserv",
+          "Strict-Transport-Security": "max-age=15552000; includeSubDomains; preload",
+          "Via": "1.1 varnish",
+          "X-Cache": "MISS",
+          "X-Cache-Hits": "0",
+          "X-Moose": "majestic",
+          "X-Served-By": "cache-ord1721-ORD",
+          "X-Timer": "S1495417598.632004,VS0,VE48",
+          "cache-control": "private, s-maxage=0, max-age=0, must-revalidate, max-age=0, must-revalidate",
+          "expires": "-1",
+          "set-cookie": "loid=0000000000000xw27h.2.1463097178233.Z0FBQUFBQlpJa0w5NEtZWE5mMG1EMUtNUFM3Qzh6TzRITmJfUG1sSXBEY1RNelQ4aHpqdmtSTWo0SnF1bnhuRkdRMnN4N19DVEFZanluSGVMTHM3MXVhOGxSWWMyaF83Y3hmTUlQOHR0cjJvb0c4WElFcXY1SGNORE1OQk53b3NXbmVfdWJqb3ptWXc; Domain=reddit.com; Max-Age=63071999; Path=/; expires=Wed, 22-May-2019 01:46:37 GMT; secure",
+          "x-content-type-options": "nosniff",
+          "x-frame-options": "SAMEORIGIN",
+          "x-ratelimit-remaining": "599.0",
+          "x-ratelimit-reset": "203",
+          "x-ratelimit-used": "1",
+          "x-ua-compatible": "IE=edge",
+          "x-xss-protection": "1; mode=block"
+        },
+        "status": {
+          "code": 200,
+          "message": "OK"
+        },
+        "url": "https://oauth.reddit.com/api/sendreplies?raw_json=1"
+      }
+    }
+  ],
+  "recorded_with": "betamax/0.8.0"
+}
\ No newline at end of file
diff --git a/tests/integration/cassettes/TestComment.test_enable_inbox_replies.json b/tests/integration/cassettes/TestComment.test_enable_inbox_replies.json
new file mode 100644
--- /dev/null
+++ b/tests/integration/cassettes/TestComment.test_enable_inbox_replies.json
@@ -0,0 +1,113 @@
+{
+  "http_interactions": [
+    {
+      "recorded_at": "2017-05-22T01:47:12",
+      "request": {
+        "body": {
+          "encoding": "utf-8",
+          "string": "grant_type=password&password=<PASSWORD>&username=<USERNAME>"
+        },
+        "headers": {
+          "Accept": "*/*",
+          "Accept-Encoding": "identity",
+          "Authorization": "Basic <BASIC_AUTH>",
+          "Connection": "keep-alive",
+          "Content-Length": "57",
+          "Content-Type": "application/x-www-form-urlencoded",
+          "User-Agent": "<USER_AGENT> PRAW/5.0.0.dev0 prawcore/0.10.1"
+        },
+        "method": "POST",
+        "uri": "https://www.reddit.com/api/v1/access_token"
+      },
+      "response": {
+        "body": {
+          "encoding": "UTF-8",
+          "string": "{\"access_token\": \"<ACCESS_TOKEN>\", \"token_type\": \"bearer\", \"expires_in\": 3600, \"scope\": \"*\"}"
+        },
+        "headers": {
+          "Accept-Ranges": "bytes",
+          "Connection": "keep-alive",
+          "Content-Length": "105",
+          "Content-Type": "application/json; charset=UTF-8",
+          "Date": "Mon, 22 May 2017 01:47:12 GMT",
+          "Server": "snooserv",
+          "Strict-Transport-Security": "max-age=15552000; includeSubDomains; preload",
+          "Via": "1.1 varnish",
+          "X-Cache": "MISS",
+          "X-Cache-Hits": "0",
+          "X-Moose": "majestic",
+          "X-Served-By": "cache-ord1745-ORD",
+          "X-Timer": "S1495417632.457281,VS0,VE319",
+          "cache-control": "max-age=0, must-revalidate",
+          "set-cookie": "session_tracker=AZkLHL1DjHk9BkAONp.0.1495417632472.Z0FBQUFBQlpJa01nLXd1LTdiLWdFWXNRbG9HZU81ZHA2RUxLNW9yYjFVWkZtc0owRFl2Um1BYWdrY2lIUjN6MUtSamNvYmFvSEFXLTF3UU5Bbnh1LXdyanduZi1Wcl83REFXSVFPR3QtOW1nRldKM0x3TW1CYVhjTzE5ZU1oTDBOZXFFMDVtUjVCRDI; Domain=reddit.com; Max-Age=7199; Path=/; expires=Mon, 22-May-2017 03:47:12 GMT; secure",
+          "x-content-type-options": "nosniff",
+          "x-frame-options": "SAMEORIGIN",
+          "x-xss-protection": "1; mode=block"
+        },
+        "status": {
+          "code": 200,
+          "message": "OK"
+        },
+        "url": "https://www.reddit.com/api/v1/access_token"
+      }
+    },
+    {
+      "recorded_at": "2017-05-22T01:47:12",
+      "request": {
+        "body": {
+          "encoding": "utf-8",
+          "string": "api_type=json&id=t1_dcc9snh&state=True"
+        },
+        "headers": {
+          "Accept": "*/*",
+          "Accept-Encoding": "identity",
+          "Authorization": "bearer <ACCESS_TOKEN>",
+          "Connection": "keep-alive",
+          "Content-Length": "38",
+          "Content-Type": "application/x-www-form-urlencoded",
+          "Cookie": "edgebucket=Y5tUiyHrdXSpT5fUya; session_tracker=AZkLHL1DjHk9BkAONp.0.1495417632472.Z0FBQUFBQlpJa01nLXd1LTdiLWdFWXNRbG9HZU81ZHA2RUxLNW9yYjFVWkZtc0owRFl2Um1BYWdrY2lIUjN6MUtSamNvYmFvSEFXLTF3UU5Bbnh1LXdyanduZi1Wcl83REFXSVFPR3QtOW1nRldKM0x3TW1CYVhjTzE5ZU1oTDBOZXFFMDVtUjVCRDI",
+          "User-Agent": "<USER_AGENT> PRAW/5.0.0.dev0 prawcore/0.10.1"
+        },
+        "method": "POST",
+        "uri": "https://oauth.reddit.com/api/sendreplies?raw_json=1"
+      },
+      "response": {
+        "body": {
+          "encoding": "UTF-8",
+          "string": "{}"
+        },
+        "headers": {
+          "Accept-Ranges": "bytes",
+          "Connection": "keep-alive",
+          "Content-Length": "2",
+          "Content-Type": "application/json; charset=UTF-8",
+          "Date": "Mon, 22 May 2017 01:47:13 GMT",
+          "Server": "snooserv",
+          "Strict-Transport-Security": "max-age=15552000; includeSubDomains; preload",
+          "Via": "1.1 varnish",
+          "X-Cache": "MISS",
+          "X-Cache-Hits": "0",
+          "X-Moose": "majestic",
+          "X-Served-By": "cache-ord1721-ORD",
+          "X-Timer": "S1495417633.973145,VS0,VE42",
+          "cache-control": "private, s-maxage=0, max-age=0, must-revalidate, max-age=0, must-revalidate",
+          "expires": "-1",
+          "set-cookie": "loid=0000000000000xw27h.2.1463097178233.Z0FBQUFBQlpJa01oZHVJZ05mM2VSWkZNRWYxUUNGOUZESGlDdDB6dkFuQzQ4UF9zdFNQOE9tQ1pSY3FVdFBENzVGTDRaclRTUmNhOGV3Z2x1WWhlamVQdU5ZVV8wdVZjb1ZNclJZb3lHaUgySE1QcTBaellqaktQWHRwTF9KZURnM1BwZW55VmxKWDg; Domain=reddit.com; Max-Age=63071999; Path=/; expires=Wed, 22-May-2019 01:47:13 GMT; secure",
+          "x-content-type-options": "nosniff",
+          "x-frame-options": "SAMEORIGIN",
+          "x-ratelimit-remaining": "598.0",
+          "x-ratelimit-reset": "168",
+          "x-ratelimit-used": "2",
+          "x-ua-compatible": "IE=edge",
+          "x-xss-protection": "1; mode=block"
+        },
+        "status": {
+          "code": 200,
+          "message": "OK"
+        },
+        "url": "https://oauth.reddit.com/api/sendreplies?raw_json=1"
+      }
+    }
+  ],
+  "recorded_with": "betamax/0.8.0"
+}
\ No newline at end of file
diff --git a/tests/integration/cassettes/TestSubmission.test_disable_inbox_replies.json b/tests/integration/cassettes/TestSubmission.test_disable_inbox_replies.json
new file mode 100644
--- /dev/null
+++ b/tests/integration/cassettes/TestSubmission.test_disable_inbox_replies.json
@@ -0,0 +1,113 @@
+{
+  "http_interactions": [
+    {
+      "recorded_at": "2017-05-22T01:49:18",
+      "request": {
+        "body": {
+          "encoding": "utf-8",
+          "string": "grant_type=password&password=<PASSWORD>&username=<USERNAME>"
+        },
+        "headers": {
+          "Accept": "*/*",
+          "Accept-Encoding": "identity",
+          "Authorization": "Basic <BASIC_AUTH>",
+          "Connection": "keep-alive",
+          "Content-Length": "57",
+          "Content-Type": "application/x-www-form-urlencoded",
+          "User-Agent": "<USER_AGENT> PRAW/5.0.0.dev0 prawcore/0.10.1"
+        },
+        "method": "POST",
+        "uri": "https://www.reddit.com/api/v1/access_token"
+      },
+      "response": {
+        "body": {
+          "encoding": "UTF-8",
+          "string": "{\"access_token\": \"<ACCESS_TOKEN>\", \"token_type\": \"bearer\", \"expires_in\": 3600, \"scope\": \"*\"}"
+        },
+        "headers": {
+          "Accept-Ranges": "bytes",
+          "Connection": "keep-alive",
+          "Content-Length": "105",
+          "Content-Type": "application/json; charset=UTF-8",
+          "Date": "Mon, 22 May 2017 01:49:19 GMT",
+          "Server": "snooserv",
+          "Strict-Transport-Security": "max-age=15552000; includeSubDomains; preload",
+          "Via": "1.1 varnish",
+          "X-Cache": "MISS",
+          "X-Cache-Hits": "0",
+          "X-Moose": "majestic",
+          "X-Served-By": "cache-ord1733-ORD",
+          "X-Timer": "S1495417759.745946,VS0,VE319",
+          "cache-control": "max-age=0, must-revalidate",
+          "set-cookie": "session_tracker=jmgNY4HV9tivavD8JA.0.1495417758759.Z0FBQUFBQlpJa09mU1FmREJzN252ZW1kdUx4NnVncXVwWUhJb2Jkbjd3WmFBbzIxLVhwdzllMVpuRVNrSUxyOF9sbGs1NkozSk1tNkFGS2ZHaExJRWMzdjRac0E2YVduYVdvY0RyRC1VVVZycVhPdF9VMm9BTjBIbVI3MmpITld5TldsNXFEUG5MOGk; Domain=reddit.com; Max-Age=7199; Path=/; expires=Mon, 22-May-2017 03:49:19 GMT; secure",
+          "x-content-type-options": "nosniff",
+          "x-frame-options": "SAMEORIGIN",
+          "x-xss-protection": "1; mode=block"
+        },
+        "status": {
+          "code": 200,
+          "message": "OK"
+        },
+        "url": "https://www.reddit.com/api/v1/access_token"
+      }
+    },
+    {
+      "recorded_at": "2017-05-22T01:49:18",
+      "request": {
+        "body": {
+          "encoding": "utf-8",
+          "string": "api_type=json&id=t3_6ckfdz&state=False"
+        },
+        "headers": {
+          "Accept": "*/*",
+          "Accept-Encoding": "identity",
+          "Authorization": "bearer <ACCESS_TOKEN>",
+          "Connection": "keep-alive",
+          "Content-Length": "38",
+          "Content-Type": "application/x-www-form-urlencoded",
+          "Cookie": "edgebucket=PXRhlGMftKRsu35wRf; session_tracker=jmgNY4HV9tivavD8JA.0.1495417758759.Z0FBQUFBQlpJa09mU1FmREJzN252ZW1kdUx4NnVncXVwWUhJb2Jkbjd3WmFBbzIxLVhwdzllMVpuRVNrSUxyOF9sbGs1NkozSk1tNkFGS2ZHaExJRWMzdjRac0E2YVduYVdvY0RyRC1VVVZycVhPdF9VMm9BTjBIbVI3MmpITld5TldsNXFEUG5MOGk",
+          "User-Agent": "<USER_AGENT> PRAW/5.0.0.dev0 prawcore/0.10.1"
+        },
+        "method": "POST",
+        "uri": "https://oauth.reddit.com/api/sendreplies?raw_json=1"
+      },
+      "response": {
+        "body": {
+          "encoding": "UTF-8",
+          "string": "{}"
+        },
+        "headers": {
+          "Accept-Ranges": "bytes",
+          "Connection": "keep-alive",
+          "Content-Length": "2",
+          "Content-Type": "application/json; charset=UTF-8",
+          "Date": "Mon, 22 May 2017 01:49:19 GMT",
+          "Server": "snooserv",
+          "Strict-Transport-Security": "max-age=15552000; includeSubDomains; preload",
+          "Via": "1.1 varnish",
+          "X-Cache": "MISS",
+          "X-Cache-Hits": "0",
+          "X-Moose": "majestic",
+          "X-Served-By": "cache-ord1736-ORD",
+          "X-Timer": "S1495417759.250184,VS0,VE161",
+          "cache-control": "private, s-maxage=0, max-age=0, must-revalidate, max-age=0, must-revalidate",
+          "expires": "-1",
+          "set-cookie": "loid=0000000000000xw27h.2.1463097178233.Z0FBQUFBQlpJa09mZWtiNWJ5cnpMSkdjRjNPN1BZdUtnUS10S1hwX0NTdGxJTkJYUlIwdWk5UHI2VXA2SWNkZmluTTFhVGVTSF9zREJzOWRVa2dmZmk5ckdreEFLS0U3NWh0Tk1tWFVuYWhkUnp0alQ3SVd1ckVoajRJdTEwV3pUSFhFTkVjUTFvaGE; Domain=reddit.com; Max-Age=63071999; Path=/; expires=Wed, 22-May-2019 01:49:19 GMT; secure",
+          "x-content-type-options": "nosniff",
+          "x-frame-options": "SAMEORIGIN",
+          "x-ratelimit-remaining": "597.0",
+          "x-ratelimit-reset": "41",
+          "x-ratelimit-used": "3",
+          "x-ua-compatible": "IE=edge",
+          "x-xss-protection": "1; mode=block"
+        },
+        "status": {
+          "code": 200,
+          "message": "OK"
+        },
+        "url": "https://oauth.reddit.com/api/sendreplies?raw_json=1"
+      }
+    }
+  ],
+  "recorded_with": "betamax/0.8.0"
+}
\ No newline at end of file
diff --git a/tests/integration/cassettes/TestSubmission.test_enable_inbox_replies.json b/tests/integration/cassettes/TestSubmission.test_enable_inbox_replies.json
new file mode 100644
--- /dev/null
+++ b/tests/integration/cassettes/TestSubmission.test_enable_inbox_replies.json
@@ -0,0 +1,113 @@
+{
+  "http_interactions": [
+    {
+      "recorded_at": "2017-05-22T01:50:11",
+      "request": {
+        "body": {
+          "encoding": "utf-8",
+          "string": "grant_type=password&password=<PASSWORD>&username=<USERNAME>"
+        },
+        "headers": {
+          "Accept": "*/*",
+          "Accept-Encoding": "identity",
+          "Authorization": "Basic <BASIC_AUTH>",
+          "Connection": "keep-alive",
+          "Content-Length": "57",
+          "Content-Type": "application/x-www-form-urlencoded",
+          "User-Agent": "<USER_AGENT> PRAW/5.0.0.dev0 prawcore/0.10.1"
+        },
+        "method": "POST",
+        "uri": "https://www.reddit.com/api/v1/access_token"
+      },
+      "response": {
+        "body": {
+          "encoding": "UTF-8",
+          "string": "{\"access_token\": \"<ACCESS_TOKEN>\", \"token_type\": \"bearer\", \"expires_in\": 3600, \"scope\": \"*\"}"
+        },
+        "headers": {
+          "Accept-Ranges": "bytes",
+          "Connection": "keep-alive",
+          "Content-Length": "105",
+          "Content-Type": "application/json; charset=UTF-8",
+          "Date": "Mon, 22 May 2017 01:50:11 GMT",
+          "Server": "snooserv",
+          "Strict-Transport-Security": "max-age=15552000; includeSubDomains; preload",
+          "Via": "1.1 varnish",
+          "X-Cache": "MISS",
+          "X-Cache-Hits": "0",
+          "X-Moose": "majestic",
+          "X-Served-By": "cache-ord1723-ORD",
+          "X-Timer": "S1495417811.432868,VS0,VE481",
+          "cache-control": "max-age=0, must-revalidate",
+          "set-cookie": "session_tracker=eYVotYsrrf2DjkfbzW.0.1495417811451.Z0FBQUFBQlpJa1BUUVJybHBXdmxXeWxGX3NlMFJUdmY1LWNyeFJ5alF4dThqN0hYSnd4S29EWnJaN2JZcjJsQ2h1dFN1MGc0ZmNteXNpNmJJRlJHeTlaNm9TdGhmazM5Ym9KaXpsRnBuY1drMG1xejMwYTdaeXpzbVZVZkpwVkdGdVdvelQ0VHNxUm0; Domain=reddit.com; Max-Age=7199; Path=/; expires=Mon, 22-May-2017 03:50:11 GMT; secure",
+          "x-content-type-options": "nosniff",
+          "x-frame-options": "SAMEORIGIN",
+          "x-xss-protection": "1; mode=block"
+        },
+        "status": {
+          "code": 200,
+          "message": "OK"
+        },
+        "url": "https://www.reddit.com/api/v1/access_token"
+      }
+    },
+    {
+      "recorded_at": "2017-05-22T01:50:11",
+      "request": {
+        "body": {
+          "encoding": "utf-8",
+          "string": "api_type=json&id=t3_6ckfdz&state=True"
+        },
+        "headers": {
+          "Accept": "*/*",
+          "Accept-Encoding": "identity",
+          "Authorization": "bearer <ACCESS_TOKEN>",
+          "Connection": "keep-alive",
+          "Content-Length": "37",
+          "Content-Type": "application/x-www-form-urlencoded",
+          "Cookie": "edgebucket=rtg5zHuquwWGZQIdDH; session_tracker=eYVotYsrrf2DjkfbzW.0.1495417811451.Z0FBQUFBQlpJa1BUUVJybHBXdmxXeWxGX3NlMFJUdmY1LWNyeFJ5alF4dThqN0hYSnd4S29EWnJaN2JZcjJsQ2h1dFN1MGc0ZmNteXNpNmJJRlJHeTlaNm9TdGhmazM5Ym9KaXpsRnBuY1drMG1xejMwYTdaeXpzbVZVZkpwVkdGdVdvelQ0VHNxUm0",
+          "User-Agent": "<USER_AGENT> PRAW/5.0.0.dev0 prawcore/0.10.1"
+        },
+        "method": "POST",
+        "uri": "https://oauth.reddit.com/api/sendreplies?raw_json=1"
+      },
+      "response": {
+        "body": {
+          "encoding": "UTF-8",
+          "string": "{}"
+        },
+        "headers": {
+          "Accept-Ranges": "bytes",
+          "Connection": "keep-alive",
+          "Content-Length": "2",
+          "Content-Type": "application/json; charset=UTF-8",
+          "Date": "Mon, 22 May 2017 01:50:12 GMT",
+          "Server": "snooserv",
+          "Strict-Transport-Security": "max-age=15552000; includeSubDomains; preload",
+          "Via": "1.1 varnish",
+          "X-Cache": "MISS",
+          "X-Cache-Hits": "0",
+          "X-Moose": "majestic",
+          "X-Served-By": "cache-ord1720-ORD",
+          "X-Timer": "S1495417812.110291,VS0,VE40",
+          "cache-control": "private, s-maxage=0, max-age=0, must-revalidate, max-age=0, must-revalidate",
+          "expires": "-1",
+          "set-cookie": "loid=0000000000000xw27h.2.1463097178233.Z0FBQUFBQlpJa1BVMURsTmNMTzVwb0pVN08zMDBTQ01kc2hlSkNBUllkdGNYaTUxb3hvdDlXTjNsNzEydk40WTBydzQ1NTlxWFdEbWVfeTllTE1abHJwZFFsQk5PTnF4N2ZDSmlYQm52NGFyOFJwYzJrbkYxVzEtbzRpUFA3ZWI1U181Ti1qLTN6VWo; Domain=reddit.com; Max-Age=63071999; Path=/; expires=Wed, 22-May-2019 01:50:12 GMT; secure",
+          "x-content-type-options": "nosniff",
+          "x-frame-options": "SAMEORIGIN",
+          "x-ratelimit-remaining": "599.0",
+          "x-ratelimit-reset": "588",
+          "x-ratelimit-used": "1",
+          "x-ua-compatible": "IE=edge",
+          "x-xss-protection": "1; mode=block"
+        },
+        "status": {
+          "code": 200,
+          "message": "OK"
+        },
+        "url": "https://oauth.reddit.com/api/sendreplies?raw_json=1"
+      }
+    }
+  ],
+  "recorded_with": "betamax/0.8.0"
+}
\ No newline at end of file
diff --git a/tests/integration/models/reddit/test_comment.py b/tests/integration/models/reddit/test_comment.py
--- a/tests/integration/models/reddit/test_comment.py
+++ b/tests/integration/models/reddit/test_comment.py
@@ -44,6 +44,13 @@ def test_delete(self, _):
             assert comment.author is None
             assert comment.body == '[deleted]'
 
+    def test_disable_inbox_replies(self):
+        self.reddit.read_only = False
+        comment = Comment(self.reddit, 'dcc9snh')
+        with self.recorder.use_cassette(
+                'TestComment.test_disable_inbox_replies'):
+            comment.disable_inbox_replies()
+
     def test_downvote(self):
         self.reddit.read_only = False
         with self.recorder.use_cassette('TestComment.test_downvote'):
@@ -58,6 +65,13 @@ def test_edit(self, _):
             comment.edit('New text')
             assert comment.body == 'New text'
 
+    def test_enable_inbox_replies(self):
+        self.reddit.read_only = False
+        comment = Comment(self.reddit, 'dcc9snh')
+        with self.recorder.use_cassette(
+                'TestComment.test_enable_inbox_replies'):
+            comment.enable_inbox_replies()
+
     def test_gild__no_creddits(self):
         self.reddit.read_only = False
         with self.recorder.use_cassette('TestComment.test_gild__no_creddits'):
diff --git a/tests/integration/models/reddit/test_submission.py b/tests/integration/models/reddit/test_submission.py
--- a/tests/integration/models/reddit/test_submission.py
+++ b/tests/integration/models/reddit/test_submission.py
@@ -31,6 +31,13 @@ def test_delete(self, _):
             assert submission.author is None
             assert submission.selftext == '[deleted]'
 
+    def test_disable_inbox_replies(self):
+        self.reddit.read_only = False
+        submission = Submission(self.reddit, '6ckfdz')
+        with self.recorder.use_cassette(
+                'TestSubmission.test_disable_inbox_replies'):
+            submission.disable_inbox_replies()
+
     def test_downvote(self):
         self.reddit.read_only = False
         with self.recorder.use_cassette(
@@ -52,6 +59,13 @@ def test_edit(self, _):
             submission.edit('New text')
             assert submission.selftext == 'New text'
 
+    def test_enable_inbox_replies(self):
+        self.reddit.read_only = False
+        submission = Submission(self.reddit, '6ckfdz')
+        with self.recorder.use_cassette(
+                'TestSubmission.test_enable_inbox_replies'):
+            submission.enable_inbox_replies()
+
     def test_gild__no_creddits(self):
         self.reddit.read_only = False
         with self.recorder.use_cassette(