簡體   English   中英

如何通過 slack API 刪除/禁用用戶?

[英]How to delete/disable user through slack API?

我已經嘗試了多種方法來解決這個問題。 首先嘗試在沒有任何用戶 ID 的情況下獲取用戶 - 這僅返回我的用戶,然后嘗試獲取具有其他 ID 的用戶,並且它還正確檢索數據。 但是,我似乎無法將用戶屬性設置為“已刪除”。 我正在使用這種 python 方法。

slack_client.api_call('users.profile.set', deleted=True, user='U36D86MNK')

但是我收到以下錯誤消息:

{u'error': u'invalid_user', u'ok': False}

也許有人已經這樣做了? 它在文檔中說,這是一項付費服務​​,在用戶屬性下提及此消息:

此參數只能由付費團隊的團隊管理員指定。

但在這種情況下,它不應該給我一個“付費服務”的回應嗎?

users.profile.set顯然不適用於設置用戶的每個屬性。

要設置deleted屬性,還有另一個名為users.admin.setInactive API 方法。 它是一種未記錄的方法,僅適用於付費團隊。

在python中,您可以執行以下操作:

import requests

def del_slack_user(user_id): # the user_id can be found under get_slack_users()
    key = 'TOKEN KEY' #replace token key with your actual token key
    payload = {'token': key, 'user': user_id}
    response = requests.delete('https://slack.com/api/users.admin.setInactive', params=payload)
    print(response.content)

def get_slack_users():
    url = 'https://slack.com/api/users.list?token=ACCESSTOKEN&pretty=1'
    response = requests.get(url=url)
    response_data = response.json() # turns the query into a json object to search through`

您可以使用 Slack 的SCIM API來啟用和禁用用戶。 請注意,與其他答案中提到的未記錄的 API 端點一樣,這需要 Plus/Enterprise 帳戶。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM