Skip to content

Commit 1fe5158

Browse files
committed
zulip: Add remove_storage helper to Client.
Mirrors update_storage and get_storage, sending DELETE to /bot_storage. With no argument, removes all data stored for the bot; passing {"keys": [...]} removes only the specified entries. The corresponding endpoint is bot-only as of Zulip 12.0 (API feature level 494), so this helper only succeeds for bot users. Fixes #637.
1 parent d5a1997 commit 1fe5158

1 file changed

Lines changed: 17 additions & 0 deletions

File tree

zulip/zulip/__init__.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1665,6 +1665,23 @@ def get_storage(self, request: Optional[Dict[str, Any]] = None) -> Dict[str, Any
16651665
request=request,
16661666
)
16671667

1668+
# See https://zulip.com/api/remove-bot-storage
1669+
def remove_storage(self, request: Optional[Dict[str, Any]] = None) -> Dict[str, Any]:
1670+
"""
1671+
Example usage:
1672+
1673+
>>> client.update_storage({'storage': {"entry 1": "value 1", "entry 2": "value 2"}})
1674+
>>> client.remove_storage({'keys': ["entry 1"]})
1675+
{'result': 'success', 'msg': ''}
1676+
>>> client.remove_storage()
1677+
{'result': 'success', 'msg': ''}
1678+
"""
1679+
return self.call_endpoint(
1680+
url="bot_storage",
1681+
method="DELETE",
1682+
request=request,
1683+
)
1684+
16681685
def set_typing_status(self, request: Dict[str, Any]) -> Dict[str, Any]:
16691686
"""
16701687
Example usage:

0 commit comments

Comments
 (0)