module Mattermost
class Team < Client
# Returns **all** teams for an admin
def all
session_get('/api/v3/teams/all').values
end
# Creates a team on the linked Mattermost instance, the team admin will be the
# `current_user` passed to the Mattermost::Client instance
def create(name:, display_name:, type:)
session_post('/api/v3/teams/create', body: {
name: name,
display_name: display_name,
type: type
}.to_json)
end
# The deletion is done async, so the response is fast.
# On the mattermost side, this triggers an soft deletion first, after which
# the actuall data is removed
def destroy(team_id:)
session_delete("/api/v4/teams/#{team_id}?permanent=true")
end
end
end