繁体   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