Data Models

Enums

Enums used in different API endpoints

class matterapi.enums.PluginStatusState(value)

Bases: str, enum.Enum

State of the plugin

FAILEDTOSTART = 'FailedToStart'
FAILEDTOSTAYRUNNING = 'FailedToStayRunning'
NOTRUNNING = 'NotRunning'
RUNNING = 'Running'
STARTING = 'Starting'
STOPPING = 'Stopping'
class matterapi.enums.PostMetadataEmbedsItemType(value)

Bases: str, enum.Enum

The type of content that is embedded in this point.

IMAGE = 'image'
MESSAGE_ATTACHMENT = 'message_attachment'
OPENGRAPH = 'opengraph'
class matterapi.enums.SidebarCategoryType(value)

Bases: str, enum.Enum

None

CHANNELS = 'channels'
CUSTOM = 'custom'
DIRECT_MESSAGES = 'direct_messages'
FAVORITES = 'favorites'
class matterapi.enums.SidebarCategoryWithChannelsType(value)

Bases: str, enum.Enum

None

CHANNELS = 'channels'
CUSTOM = 'custom'
DIRECT_MESSAGES = 'direct_messages'
FAVORITES = 'favorites'
class matterapi.enums.UploadSessionType(value)

Bases: str, enum.Enum

The type of the upload.

ATTACHMENT = 'attachment'
IMPORT_ = 'import'

Models

class matterapi.models.AddChannelMemberJsonBody(*, user_id: str, post_root_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

user_id

The ID of user to add into the channel

Type

str

post_root_id

The ID of root post where link to add channel member originates

Type

Optional[str]

post_root_id: Optional[str]
user_id: str
class matterapi.models.AddGroupMembersJsonBody(*, user_ids: List[str] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

An object containing the user ids of the members to add.

user_ids
Type

Optional[List[str]]

user_ids: Optional[List[str]]
class matterapi.models.AddOn(*, id: str = None, name: str = None, display_name: str = None, price_per_seat: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

name
Type

Optional[str]

display_name
Type

Optional[str]

price_per_seat
Type

Optional[str]

display_name: Optional[str]
id: Optional[str]
name: Optional[str]
price_per_seat: Optional[str]
class matterapi.models.AddTeamMemberJsonBody(*, team_id: str = None, user_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

team_id
Type

Optional[str]

user_id
Type

Optional[str]

team_id: Optional[str]
user_id: Optional[str]
class matterapi.models.Address(*, city: str = None, country: str = None, line1: str = None, line2: str = None, postal_code: str = None, state: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

city
Type

Optional[str]

country
Type

Optional[str]

line1
Type

Optional[str]

line2
Type

Optional[str]

postal_code
Type

Optional[str]

state
Type

Optional[str]

city: Optional[str]
country: Optional[str]
line1: Optional[str]
line2: Optional[str]
postal_code: Optional[str]
state: Optional[str]
class matterapi.models.AppError(*, status_code: int = None, id: str = None, message: str = None, request_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

status_code
Type

Optional[int]

id
Type

Optional[str]

message
Type

Optional[str]

request_id
Type

Optional[str]

id: Optional[str]
message: Optional[str]
request_id: Optional[str]
status_code: Optional[int]
class matterapi.models.ArticleAuthorsItem(*, first_name: str = None, last_name: str = None, username: str = None, gender: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

first_name
Type

Optional[str]

last_name
Type

Optional[str]

username
Type

Optional[str]

gender
Type

Optional[str]

first_name: Optional[str]
gender: Optional[str]
last_name: Optional[str]
username: Optional[str]
class matterapi.models.AttachDeviceIdJsonBody(*, device_id: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

device_id

Mobile device id. For Android prefix the id with android: and Apple with apple:

Type

str

device_id: str
class matterapi.models.Audit(*, id: str = None, create_at: int = None, user_id: str = None, action: str = None, extra_info: str = None, ip_address: str = None, session_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

create_at

The time in milliseconds a audit was created

Type

Optional[int]

user_id
Type

Optional[str]

action
Type

Optional[str]

extra_info
Type

Optional[str]

ip_address
Type

Optional[str]

session_id
Type

Optional[str]

action: Optional[str]
create_at: Optional[int]
extra_info: Optional[str]
id: Optional[str]
ip_address: Optional[str]
session_id: Optional[str]
user_id: Optional[str]
class matterapi.models.AutocompleteSuggestion(*, Complete: str = None, Suggestion: str = None, Hint: str = None, Description: str = None, IconData: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

complete

Completed suggestion

Type

Optional[str]

suggestion

Predicted text user might want to input

Type

Optional[str]

hint

Hint about suggested input

Type

Optional[str]

description

Description of the suggested command

Type

Optional[str]

icon_data

Base64 encoded svg image

Type

Optional[str]

complete: Optional[str]
description: Optional[str]
hint: Optional[str]
icon_data: Optional[str]
suggestion: Optional[str]
class matterapi.models.BookAuthorsItem(*, first_name: str = None, last_name: str = None, username: str = None, gender: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

first_name
Type

Optional[str]

last_name
Type

Optional[str]

username
Type

Optional[str]

gender
Type

Optional[str]

first_name: Optional[str]
gender: Optional[str]
last_name: Optional[str]
username: Optional[str]
class matterapi.models.Bot(*, user_id: str = None, create_at: int = None, update_at: int = None, delete_at: int = None, username: str = None, display_name: str = None, description: str = None, owner_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

A bot account

user_id

The user id of the associated user entry.

Type

Optional[str]

create_at

The time in milliseconds a bot was created

Type

Optional[int]

update_at

The time in milliseconds a bot was last updated

Type

Optional[int]

delete_at

The time in milliseconds a bot was deleted

Type

Optional[int]

username
Type

Optional[str]

display_name
Type

Optional[str]

description
Type

Optional[str]

owner_id

The user id of the user that currently owns this bot.

Type

Optional[str]

create_at: Optional[int]
delete_at: Optional[int]
description: Optional[str]
display_name: Optional[str]
owner_id: Optional[str]
update_at: Optional[int]
user_id: Optional[str]
username: Optional[str]
class matterapi.models.Channel(*, id: str = None, create_at: int = None, update_at: int = None, delete_at: int = None, team_id: str = None, type: str = None, display_name: str = None, name: str = None, header: str = None, purpose: str = None, last_post_at: int = None, total_msg_count: int = None, extra_update_at: int = None, creator_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

create_at

The time in milliseconds a channel was created

Type

Optional[int]

update_at

The time in milliseconds a channel was last updated

Type

Optional[int]

delete_at

The time in milliseconds a channel was deleted

Type

Optional[int]

team_id
Type

Optional[str]

type
Type

Optional[str]

display_name
Type

Optional[str]

name
Type

Optional[str]

header
Type

Optional[str]

purpose
Type

Optional[str]

last_post_at

The time in milliseconds of the last post of a channel

Type

Optional[int]

total_msg_count
Type

Optional[int]

extra_update_at

Deprecated in Mattermost 5.0 release

Type

Optional[int]

creator_id
Type

Optional[str]

create_at: Optional[int]
creator_id: Optional[str]
delete_at: Optional[int]
display_name: Optional[str]
extra_update_at: Optional[int]
header: Optional[str]
id: Optional[str]
last_post_at: Optional[int]
name: Optional[str]
purpose: Optional[str]
team_id: Optional[str]
total_msg_count: Optional[int]
type: Optional[str]
update_at: Optional[int]
class matterapi.models.ChannelData(*, channel: matterapi.models.Channel = None, member: matterapi.models.ChannelMember = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

channel
Type

Optional[Channel]

member
Type

Optional[ChannelMember]

channel: Optional[matterapi.models.Channel]
member: Optional[matterapi.models.ChannelMember]
class matterapi.models.ChannelListWithTeamData(*, __root__: List[matterapi.models.ChannelWithTeamData], **extra_data: Any)

Bases: matterapi.types.BaseArray

class matterapi.models.ChannelMember(*, channel_id: str = None, user_id: str = None, roles: str = None, last_viewed_at: int = None, msg_count: int = None, mention_count: int = None, notify_props: matterapi.models.ChannelNotifyProps = None, last_update_at: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

channel_id
Type

Optional[str]

user_id
Type

Optional[str]

roles
Type

Optional[str]

last_viewed_at

The time in milliseconds the channel was last viewed by the user

Type

Optional[int]

msg_count
Type

Optional[int]

mention_count
Type

Optional[int]

notify_props
Type

Optional[ChannelNotifyProps]

last_update_at

The time in milliseconds the channel member was last updated

Type

Optional[int]

channel_id: Optional[str]
last_update_at: Optional[int]
last_viewed_at: Optional[int]
mention_count: Optional[int]
msg_count: Optional[int]
notify_props: Optional[matterapi.models.ChannelNotifyProps]
roles: Optional[str]
user_id: Optional[str]
class matterapi.models.ChannelMemberCountByGroup(*, group_id: str = None, channel_member_count: float = None, channel_member_timezones_count: float = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

An object describing group member information in a channel

group_id

ID of the group

Type

Optional[str]

channel_member_count

Total number of group members in the channel

Type

Optional[float]

channel_member_timezones_count

Total number of unique timezones for the group members in the channel

Type

Optional[float]

channel_member_count: Optional[float]
channel_member_timezones_count: Optional[float]
group_id: Optional[str]
class matterapi.models.ChannelMemberWithTeamData(*, channel_id: str = None, user_id: str = None, roles: str = None, last_viewed_at: int = None, msg_count: int = None, mention_count: int = None, notify_props: matterapi.models.ChannelNotifyProps = None, last_update_at: int = None, team_display_name: str = None, team_name: str = None, team_update_at: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

channel_id
Type

Optional[str]

user_id
Type

Optional[str]

roles
Type

Optional[str]

last_viewed_at

The time in milliseconds the channel was last viewed by the user

Type

Optional[int]

msg_count
Type

Optional[int]

mention_count
Type

Optional[int]

notify_props
Type

Optional[ChannelNotifyProps]

last_update_at

The time in milliseconds the channel member was last updated

Type

Optional[int]

team_display_name

The display name of the team to which this channel belongs.

Type

Optional[str]

team_name

The name of the team to which this channel belongs.

Type

Optional[str]

team_update_at

The time at which the team to which this channel belongs was last updated.

Type

Optional[int]

channel_id: Optional[str]
last_update_at: Optional[int]
last_viewed_at: Optional[int]
mention_count: Optional[int]
msg_count: Optional[int]
notify_props: Optional[matterapi.models.ChannelNotifyProps]
roles: Optional[str]
team_display_name: Optional[str]
team_name: Optional[str]
team_update_at: Optional[int]
user_id: Optional[str]
class matterapi.models.ChannelModeratedRole(*, value: bool = None, enabled: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

value
Type

Optional[bool]

enabled
Type

Optional[bool]

enabled: Optional[bool]
value: Optional[bool]
class matterapi.models.ChannelModeratedRoles(*, guests: matterapi.models.ChannelModeratedRole = None, members: matterapi.models.ChannelModeratedRole = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

guests
Type

Optional[ChannelModeratedRole]

members
Type

Optional[ChannelModeratedRole]

guests: Optional[matterapi.models.ChannelModeratedRole]
members: Optional[matterapi.models.ChannelModeratedRole]
class matterapi.models.ChannelModeratedRolesPatch(*, guests: bool = None, members: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

guests
Type

Optional[bool]

members
Type

Optional[bool]

guests: Optional[bool]
members: Optional[bool]
class matterapi.models.ChannelModeration(*, name: str = None, roles: matterapi.models.ChannelModeratedRoles = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

name
Type

Optional[str]

roles
Type

Optional[ChannelModeratedRoles]

name: Optional[str]
roles: Optional[matterapi.models.ChannelModeratedRoles]
class matterapi.models.ChannelModerationPatch(*, name: str = None, roles: matterapi.models.ChannelModeratedRolesPatch = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

name
Type

Optional[str]

roles
Type

Optional[ChannelModeratedRolesPatch]

name: Optional[str]
roles: Optional[matterapi.models.ChannelModeratedRolesPatch]
class matterapi.models.ChannelNotifyProps(*, email: str = None, push: str = None, desktop: str = None, mark_unread: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

email

Set to “true” to enable email notifications, “false” to disable, or “default” to use the global user notification setting.

Type

Optional[str]

push

Set to “all” to receive push notifications for all activity, “mention” for mentions and direct messages only, “none” to disable, or “default” to use the global user notification setting.

Type

Optional[str]

desktop

Set to “all” to receive desktop notifications for all activity, “mention” for mentions and direct messages only, “none” to disable, or “default” to use the global user notification setting.

Type

Optional[str]

mark_unread

Set to “all” to mark the channel unread for any new message, “mention” to mark unread for new mentions only. Defaults to “all”.

Type

Optional[str]

desktop: Optional[str]
email: Optional[str]
mark_unread: Optional[str]
push: Optional[str]
class matterapi.models.ChannelStats(*, channel_id: str = None, member_count: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

channel_id
Type

Optional[str]

member_count
Type

Optional[int]

channel_id: Optional[str]
member_count: Optional[int]
class matterapi.models.ChannelUnread(*, team_id: str = None, channel_id: str = None, msg_count: int = None, mention_count: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

team_id
Type

Optional[str]

channel_id
Type

Optional[str]

msg_count
Type

Optional[int]

mention_count
Type

Optional[int]

channel_id: Optional[str]
mention_count: Optional[int]
msg_count: Optional[int]
team_id: Optional[str]
class matterapi.models.ChannelUnreadAt(*, team_id: str = None, channel_id: str = None, msg_count: int = None, mention_count: int = None, last_viewed_at: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

team_id

The ID of the team the channel belongs to.

Type

Optional[str]

channel_id

The ID of the channel the user has access to..

Type

Optional[str]

msg_count

No. of messages the user has already read.

Type

Optional[int]

mention_count

No. of mentions the user has within the unread posts of the channel.

Type

Optional[int]

last_viewed_at

time in milliseconds when the user last viewed the channel.

Type

Optional[int]

channel_id: Optional[str]
last_viewed_at: Optional[int]
mention_count: Optional[int]
msg_count: Optional[int]
team_id: Optional[str]
class matterapi.models.ChannelWithTeamData(*, id: str = None, create_at: int = None, update_at: int = None, delete_at: int = None, team_id: str = None, type: str = None, display_name: str = None, name: str = None, header: str = None, purpose: str = None, last_post_at: int = None, total_msg_count: int = None, extra_update_at: int = None, creator_id: str = None, team_display_name: str = None, team_name: str = None, team_update_at: int = None, policy_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

create_at

The time in milliseconds a channel was created

Type

Optional[int]

update_at

The time in milliseconds a channel was last updated

Type

Optional[int]

delete_at

The time in milliseconds a channel was deleted

Type

Optional[int]

team_id
Type

Optional[str]

type
Type

Optional[str]

display_name
Type

Optional[str]

name
Type

Optional[str]

header
Type

Optional[str]

purpose
Type

Optional[str]

last_post_at

The time in milliseconds of the last post of a channel

Type

Optional[int]

total_msg_count
Type

Optional[int]

extra_update_at

Deprecated in Mattermost 5.0 release

Type

Optional[int]

creator_id
Type

Optional[str]

team_display_name

The display name of the team to which this channel belongs.

Type

Optional[str]

team_name

The name of the team to which this channel belongs.

Type

Optional[str]

team_update_at

The time at which the team to which this channel belongs was last updated.

Type

Optional[int]

policy_id

The data retention policy to which this team has been assigned. If no such policy exists, or the caller does not have the sysconsole_read_compliance_data_retention permission, this field will be null.

Type

Optional[str]

create_at: Optional[int]
creator_id: Optional[str]
delete_at: Optional[int]
display_name: Optional[str]
extra_update_at: Optional[int]
header: Optional[str]
id: Optional[str]
last_post_at: Optional[int]
name: Optional[str]
policy_id: Optional[str]
purpose: Optional[str]
team_display_name: Optional[str]
team_id: Optional[str]
team_name: Optional[str]
team_update_at: Optional[int]
total_msg_count: Optional[int]
type: Optional[str]
update_at: Optional[int]
class matterapi.models.CheckUserMfaJsonBody(*, login_id: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

login_id

The email or username used to login

Type

str

login_id: str
class matterapi.models.CheckUserMfaResponse200(*, mfa_required: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

mfa_required

Value will true if MFA is active, false otherwise

Type

Optional[bool]

mfa_required: Optional[bool]
class matterapi.models.CloudCustomer(*, id: str = None, creator_id: str = None, create_at: int = None, email: str = None, name: str = None, num_employees: str = None, contact_first_name: str = None, contact_last_name: str = None, billing_address: matterapi.models.Address = None, company_address: matterapi.models.Address = None, payment_method: matterapi.models.PaymentMethod = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

creator_id
Type

Optional[str]

create_at
Type

Optional[int]

email
Type

Optional[str]

name
Type

Optional[str]

num_employees
Type

Optional[str]

contact_first_name
Type

Optional[str]

contact_last_name
Type

Optional[str]

billing_address
Type

Optional[Address]

company_address
Type

Optional[Address]

payment_method
Type

Optional[PaymentMethod]

billing_address: Optional[matterapi.models.Address]
company_address: Optional[matterapi.models.Address]
contact_first_name: Optional[str]
contact_last_name: Optional[str]
create_at: Optional[int]
creator_id: Optional[str]
email: Optional[str]
id: Optional[str]
name: Optional[str]
num_employees: Optional[str]
payment_method: Optional[matterapi.models.PaymentMethod]
class matterapi.models.ClusterInfo(*, id: str = None, version: str = None, config_hash: str = None, internode_url: str = None, hostname: str = None, last_ping: int = None, is_alive: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

The unique ID for the node

Type

Optional[str]

version

The server version the node is on

Type

Optional[str]

config_hash

The hash of the configuartion file the node is using

Type

Optional[str]

internode_url

The URL used to communicate with those node from other nodes

Type

Optional[str]

hostname

The hostname for this node

Type

Optional[str]

last_ping

The time of the last ping to this node

Type

Optional[int]

is_alive

Whether or not the node is alive and well

Type

Optional[bool]

config_hash: Optional[str]
hostname: Optional[str]
id: Optional[str]
internode_url: Optional[str]
is_alive: Optional[bool]
last_ping: Optional[int]
version: Optional[str]
class matterapi.models.Command(*, id: str = None, token: str = None, create_at: int = None, update_at: int = None, delete_at: int = None, creator_id: str = None, team_id: str = None, trigger: str = None, method: str = None, username: str = None, icon_url: str = None, auto_complete: bool = None, auto_complete_desc: str = None, auto_complete_hint: str = None, display_name: str = None, description: str = None, url: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

The ID of the slash command

Type

Optional[str]

token

The token which is used to verify the source of the payload

Type

Optional[str]

create_at

The time in milliseconds the command was created

Type

Optional[int]

update_at

The time in milliseconds the command was last updated

Type

Optional[int]

delete_at

The time in milliseconds the command was deleted, 0 if never deleted

Type

Optional[int]

creator_id

The user id for the commands creator

Type

Optional[str]

team_id

The team id for which this command is configured

Type

Optional[str]

trigger

The string that triggers this command

Type

Optional[str]

method

Is the trigger done with HTTP Get (‘G’) or HTTP Post (‘P’)

Type

Optional[str]

username

What is the username for the response post

Type

Optional[str]

icon_url

The url to find the icon for this users avatar

Type

Optional[str]

auto_complete

Use auto complete for this command

Type

Optional[bool]

auto_complete_desc

The description for this command shown when selecting the command

Type

Optional[str]

auto_complete_hint

The hint for this command

Type

Optional[str]

display_name

Display name for the command

Type

Optional[str]

description

Description for this command

Type

Optional[str]

url

The URL that is triggered

Type

Optional[str]

auto_complete: Optional[bool]
auto_complete_desc: Optional[str]
auto_complete_hint: Optional[str]
create_at: Optional[int]
creator_id: Optional[str]
delete_at: Optional[int]
description: Optional[str]
display_name: Optional[str]
icon_url: Optional[str]
id: Optional[str]
method: Optional[str]
team_id: Optional[str]
token: Optional[str]
trigger: Optional[str]
update_at: Optional[int]
url: Optional[str]
username: Optional[str]
class matterapi.models.CommandResponse(*, ResponseType: str = None, Text: str = None, Username: str = None, IconURL: str = None, GotoLocation: str = None, Attachments: List[matterapi.models.SlackAttachment] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

response_type

The response type either in_channel or ephemeral

Type

Optional[str]

text
Type

Optional[str]

username
Type

Optional[str]

icon_url
Type

Optional[str]

goto_location
Type

Optional[str]

attachments
Type

Optional[List[SlackAttachment]]

attachments: Optional[List[matterapi.models.SlackAttachment]]
goto_location: Optional[str]
icon_url: Optional[str]
response_type: Optional[str]
text: Optional[str]
username: Optional[str]
class matterapi.models.Compliance(*, id: str = None, create_at: int = None, user_id: str = None, status: str = None, count: int = None, desc: str = None, type: str = None, start_at: int = None, end_at: int = None, keywords: str = None, emails: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

create_at
Type

Optional[int]

user_id
Type

Optional[str]

status
Type

Optional[str]

count
Type

Optional[int]

desc
Type

Optional[str]

type
Type

Optional[str]

start_at
Type

Optional[int]

end_at
Type

Optional[int]

keywords
Type

Optional[str]

emails
Type

Optional[str]

count: Optional[int]
create_at: Optional[int]
desc: Optional[str]
emails: Optional[str]
end_at: Optional[int]
id: Optional[str]
keywords: Optional[str]
start_at: Optional[int]
status: Optional[str]
type: Optional[str]
user_id: Optional[str]
class matterapi.models.Config(*, ServiceSettings: matterapi.models.Config.ServiceSettings = None, TeamSettings: matterapi.models.Config.TeamSettings = None, SqlSettings: matterapi.models.Config.SqlSettings = None, LogSettings: matterapi.models.Config.LogSettings = None, PasswordSettings: matterapi.models.Config.PasswordSettings = None, FileSettings: matterapi.models.Config.FileSettings = None, EmailSettings: matterapi.models.Config.EmailSettings = None, RateLimitSettings: matterapi.models.Config.RateLimitSettings = None, PrivacySettings: matterapi.models.Config.PrivacySettings = None, SupportSettings: matterapi.models.Config.SupportSettings = None, GitLabSettings: matterapi.models.Config.GitLabSettings = None, GoogleSettings: matterapi.models.Config.GoogleSettings = None, Office365Settings: matterapi.models.Config.Office365Settings = None, LdapSettings: matterapi.models.Config.LdapSettings = None, ComplianceSettings: matterapi.models.Config.ComplianceSettings = None, LocalizationSettings: matterapi.models.Config.LocalizationSettings = None, SamlSettings: matterapi.models.Config.SamlSettings = None, NativeAppSettings: matterapi.models.Config.NativeAppSettings = None, ClusterSettings: matterapi.models.Config.ClusterSettings = None, MetricsSettings: matterapi.models.Config.MetricsSettings = None, AnalyticsSettings: matterapi.models.Config.AnalyticsSettings = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

service_settings
Type

Optional[ServiceSettings]

team_settings
Type

Optional[TeamSettings]

sql_settings
Type

Optional[SqlSettings]

log_settings
Type

Optional[LogSettings]

password_settings
Type

Optional[PasswordSettings]

file_settings
Type

Optional[FileSettings]

email_settings
Type

Optional[EmailSettings]

rate_limit_settings
Type

Optional[RateLimitSettings]

privacy_settings
Type

Optional[PrivacySettings]

support_settings
Type

Optional[SupportSettings]

git_lab_settings
Type

Optional[GitLabSettings]

google_settings
Type

Optional[GoogleSettings]

office365_settings
Type

Optional[Office365Settings]

ldap_settings
Type

Optional[LdapSettings]

compliance_settings
Type

Optional[ComplianceSettings]

localization_settings
Type

Optional[LocalizationSettings]

saml_settings
Type

Optional[SamlSettings]

native_app_settings
Type

Optional[NativeAppSettings]

cluster_settings
Type

Optional[ClusterSettings]

metrics_settings
Type

Optional[MetricsSettings]

analytics_settings
Type

Optional[AnalyticsSettings]

class AnalyticsSettings(*, MaxUsersForStatistics: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

max_users_for_statistics
Type

Optional[int]

max_users_for_statistics: Optional[int]
class ClusterSettings(*, Enable: bool = None, InterNodeListenAddress: str = None, InterNodeUrls: List[str] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

inter_node_listen_address
Type

Optional[str]

inter_node_urls
Type

Optional[List[str]]

enable: Optional[bool]
inter_node_listen_address: Optional[str]
inter_node_urls: Optional[List[str]]
class ComplianceSettings(*, Enable: bool = None, Directory: str = None, EnableDaily: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

directory
Type

Optional[str]

enable_daily
Type

Optional[bool]

directory: Optional[str]
enable: Optional[bool]
enable_daily: Optional[bool]
class EmailSettings(*, EnableSignUpWithEmail: bool = None, EnableSignInWithEmail: bool = None, EnableSignInWithUsername: bool = None, SendEmailNotifications: bool = None, RequireEmailVerification: bool = None, FeedbackName: str = None, FeedbackEmail: str = None, FeedbackOrganization: str = None, SMTPUsername: str = None, SMTPPassword: str = None, SMTPServer: str = None, SMTPPort: str = None, ConnectionSecurity: str = None, InviteSalt: str = None, PasswordResetSalt: str = None, SendPushNotifications: bool = None, PushNotificationServer: str = None, PushNotificationContents: str = None, EnableEmailBatching: bool = None, EmailBatchingBufferSize: int = None, EmailBatchingInterval: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable_sign_up_with_email
Type

Optional[bool]

enable_sign_in_with_email
Type

Optional[bool]

enable_sign_in_with_username
Type

Optional[bool]

send_email_notifications
Type

Optional[bool]

require_email_verification
Type

Optional[bool]

feedback_name
Type

Optional[str]

feedback_email
Type

Optional[str]

feedback_organization
Type

Optional[str]

smtp_username
Type

Optional[str]

smtp_password
Type

Optional[str]

smtp_server
Type

Optional[str]

smtp_port
Type

Optional[str]

connection_security
Type

Optional[str]

invite_salt
Type

Optional[str]

password_reset_salt
Type

Optional[str]

send_push_notifications
Type

Optional[bool]

push_notification_server
Type

Optional[str]

push_notification_contents
Type

Optional[str]

enable_email_batching
Type

Optional[bool]

email_batching_buffer_size
Type

Optional[int]

email_batching_interval
Type

Optional[int]

connection_security: Optional[str]
email_batching_buffer_size: Optional[int]
email_batching_interval: Optional[int]
enable_email_batching: Optional[bool]
enable_sign_in_with_email: Optional[bool]
enable_sign_in_with_username: Optional[bool]
enable_sign_up_with_email: Optional[bool]
feedback_email: Optional[str]
feedback_name: Optional[str]
feedback_organization: Optional[str]
invite_salt: Optional[str]
password_reset_salt: Optional[str]
push_notification_contents: Optional[str]
push_notification_server: Optional[str]
require_email_verification: Optional[bool]
send_email_notifications: Optional[bool]
send_push_notifications: Optional[bool]
smtp_password: Optional[str]
smtp_port: Optional[str]
smtp_server: Optional[str]
smtp_username: Optional[str]
class FileSettings(*, MaxFileSize: int = None, DriverName: str = None, Directory: str = None, EnablePublicLink: bool = None, PublicLinkSalt: str = None, ThumbnailWidth: int = None, ThumbnailHeight: int = None, PreviewWidth: int = None, PreviewHeight: int = None, ProfileWidth: int = None, ProfileHeight: int = None, InitialFont: str = None, AmazonS3AccessKeyId: str = None, AmazonS3SecretAccessKey: str = None, AmazonS3Bucket: str = None, AmazonS3Region: str = None, AmazonS3Endpoint: str = None, AmazonS3SSL: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

max_file_size
Type

Optional[int]

driver_name
Type

Optional[str]

directory
Type

Optional[str]

Type

Optional[bool]

Type

Optional[str]

thumbnail_width
Type

Optional[int]

thumbnail_height
Type

Optional[int]

preview_width
Type

Optional[int]

preview_height
Type

Optional[int]

profile_width
Type

Optional[int]

profile_height
Type

Optional[int]

initial_font
Type

Optional[str]

amazon_s3_access_key_id
Type

Optional[str]

amazon_s3_secret_access_key
Type

Optional[str]

amazon_s3_bucket
Type

Optional[str]

amazon_s3_region
Type

Optional[str]

amazon_s3_endpoint
Type

Optional[str]

amazon_s3_ssl
Type

Optional[bool]

amazon_s3_access_key_id: Optional[str]
amazon_s3_bucket: Optional[str]
amazon_s3_endpoint: Optional[str]
amazon_s3_region: Optional[str]
amazon_s3_secret_access_key: Optional[str]
amazon_s3_ssl: Optional[bool]
directory: Optional[str]
driver_name: Optional[str]
enable_public_link: Optional[bool]
initial_font: Optional[str]
max_file_size: Optional[int]
preview_height: Optional[int]
preview_width: Optional[int]
profile_height: Optional[int]
profile_width: Optional[int]
public_link_salt: Optional[str]
thumbnail_height: Optional[int]
thumbnail_width: Optional[int]
class GitLabSettings(*, Enable: bool = None, Secret: str = None, Id: str = None, Scope: str = None, AuthEndpoint: str = None, TokenEndpoint: str = None, UserApiEndpoint: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

secret
Type

Optional[str]

id
Type

Optional[str]

scope
Type

Optional[str]

auth_endpoint
Type

Optional[str]

token_endpoint
Type

Optional[str]

user_api_endpoint
Type

Optional[str]

auth_endpoint: Optional[str]
enable: Optional[bool]
id: Optional[str]
scope: Optional[str]
secret: Optional[str]
token_endpoint: Optional[str]
user_api_endpoint: Optional[str]
class GoogleSettings(*, Enable: bool = None, Secret: str = None, Id: str = None, Scope: str = None, AuthEndpoint: str = None, TokenEndpoint: str = None, UserApiEndpoint: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

secret
Type

Optional[str]

id
Type

Optional[str]

scope
Type

Optional[str]

auth_endpoint
Type

Optional[str]

token_endpoint
Type

Optional[str]

user_api_endpoint
Type

Optional[str]

auth_endpoint: Optional[str]
enable: Optional[bool]
id: Optional[str]
scope: Optional[str]
secret: Optional[str]
token_endpoint: Optional[str]
user_api_endpoint: Optional[str]
class LdapSettings(*, Enable: bool = None, LdapServer: str = None, LdapPort: int = None, ConnectionSecurity: str = None, BaseDN: str = None, BindUsername: str = None, BindPassword: str = None, UserFilter: str = None, FirstNameAttribute: str = None, LastNameAttribute: str = None, EmailAttribute: str = None, UsernameAttribute: str = None, NicknameAttribute: str = None, IdAttribute: str = None, PositionAttribute: str = None, SyncIntervalMinutes: int = None, SkipCertificateVerification: bool = None, QueryTimeout: int = None, MaxPageSize: int = None, LoginFieldName: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

ldap_server
Type

Optional[str]

ldap_port
Type

Optional[int]

connection_security
Type

Optional[str]

base_dn
Type

Optional[str]

bind_username
Type

Optional[str]

bind_password
Type

Optional[str]

user_filter
Type

Optional[str]

first_name_attribute
Type

Optional[str]

last_name_attribute
Type

Optional[str]

email_attribute
Type

Optional[str]

username_attribute
Type

Optional[str]

nickname_attribute
Type

Optional[str]

id_attribute
Type

Optional[str]

position_attribute
Type

Optional[str]

sync_interval_minutes
Type

Optional[int]

skip_certificate_verification
Type

Optional[bool]

query_timeout
Type

Optional[int]

max_page_size
Type

Optional[int]

login_field_name
Type

Optional[str]

base_dn: Optional[str]
bind_password: Optional[str]
bind_username: Optional[str]
connection_security: Optional[str]
email_attribute: Optional[str]
enable: Optional[bool]
first_name_attribute: Optional[str]
id_attribute: Optional[str]
last_name_attribute: Optional[str]
ldap_port: Optional[int]
ldap_server: Optional[str]
login_field_name: Optional[str]
max_page_size: Optional[int]
nickname_attribute: Optional[str]
position_attribute: Optional[str]
query_timeout: Optional[int]
skip_certificate_verification: Optional[bool]
sync_interval_minutes: Optional[int]
user_filter: Optional[str]
username_attribute: Optional[str]
class LocalizationSettings(*, DefaultServerLocale: str = None, DefaultClientLocale: str = None, AvailableLocales: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

default_server_locale
Type

Optional[str]

default_client_locale
Type

Optional[str]

available_locales
Type

Optional[str]

available_locales: Optional[str]
default_client_locale: Optional[str]
default_server_locale: Optional[str]
class LogSettings(*, EnableConsole: bool = None, ConsoleLevel: str = None, EnableFile: bool = None, FileLevel: str = None, FileLocation: str = None, EnableWebhookDebugging: bool = None, EnableDiagnostics: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable_console
Type

Optional[bool]

console_level
Type

Optional[str]

enable_file
Type

Optional[bool]

file_level
Type

Optional[str]

file_location
Type

Optional[str]

enable_webhook_debugging
Type

Optional[bool]

enable_diagnostics
Type

Optional[bool]

console_level: Optional[str]
enable_console: Optional[bool]
enable_diagnostics: Optional[bool]
enable_file: Optional[bool]
enable_webhook_debugging: Optional[bool]
file_level: Optional[str]
file_location: Optional[str]
class MetricsSettings(*, Enable: bool = None, BlockProfileRate: int = None, ListenAddress: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

block_profile_rate
Type

Optional[int]

listen_address
Type

Optional[str]

block_profile_rate: Optional[int]
enable: Optional[bool]
listen_address: Optional[str]
class NativeAppSettings(*, AppDownloadLink: str = None, AndroidAppDownloadLink: str = None, IosAppDownloadLink: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

Type

Optional[str]

Type

Optional[str]

Type

Optional[str]

android_app_download_link: Optional[str]
app_download_link: Optional[str]
ios_app_download_link: Optional[str]
class Office365Settings(*, Enable: bool = None, Secret: str = None, Id: str = None, Scope: str = None, AuthEndpoint: str = None, TokenEndpoint: str = None, UserApiEndpoint: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

secret
Type

Optional[str]

id
Type

Optional[str]

scope
Type

Optional[str]

auth_endpoint
Type

Optional[str]

token_endpoint
Type

Optional[str]

user_api_endpoint
Type

Optional[str]

auth_endpoint: Optional[str]
enable: Optional[bool]
id: Optional[str]
scope: Optional[str]
secret: Optional[str]
token_endpoint: Optional[str]
user_api_endpoint: Optional[str]
class PasswordSettings(*, MinimumLength: int = None, Lowercase: bool = None, Number: bool = None, Uppercase: bool = None, Symbol: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

minimum_length
Type

Optional[int]

lowercase
Type

Optional[bool]

number
Type

Optional[bool]

uppercase
Type

Optional[bool]

symbol
Type

Optional[bool]

lowercase: Optional[bool]
minimum_length: Optional[int]
number: Optional[bool]
symbol: Optional[bool]
uppercase: Optional[bool]
class PrivacySettings(*, ShowEmailAddress: bool = None, ShowFullName: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

show_email_address
Type

Optional[bool]

show_full_name
Type

Optional[bool]

show_email_address: Optional[bool]
show_full_name: Optional[bool]
class RateLimitSettings(*, Enable: bool = None, PerSec: int = None, MaxBurst: int = None, MemoryStoreSize: int = None, VaryByRemoteAddr: bool = None, VaryByHeader: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

per_sec
Type

Optional[int]

max_burst
Type

Optional[int]

memory_store_size
Type

Optional[int]

vary_by_remote_addr
Type

Optional[bool]

vary_by_header
Type

Optional[str]

enable: Optional[bool]
max_burst: Optional[int]
memory_store_size: Optional[int]
per_sec: Optional[int]
vary_by_header: Optional[str]
vary_by_remote_addr: Optional[bool]
class SamlSettings(*, Enable: bool = None, Verify: bool = None, Encrypt: bool = None, IdpUrl: str = None, IdpDescriptorUrl: str = None, AssertionConsumerServiceURL: str = None, IdpCertificateFile: str = None, PublicCertificateFile: str = None, PrivateKeyFile: str = None, FirstNameAttribute: str = None, LastNameAttribute: str = None, EmailAttribute: str = None, UsernameAttribute: str = None, NicknameAttribute: str = None, LocaleAttribute: str = None, PositionAttribute: str = None, LoginButtonText: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

verify
Type

Optional[bool]

encrypt
Type

Optional[bool]

idp_url
Type

Optional[str]

idp_descriptor_url
Type

Optional[str]

assertion_consumer_service_url
Type

Optional[str]

idp_certificate_file
Type

Optional[str]

public_certificate_file
Type

Optional[str]

private_key_file
Type

Optional[str]

first_name_attribute
Type

Optional[str]

last_name_attribute
Type

Optional[str]

email_attribute
Type

Optional[str]

username_attribute
Type

Optional[str]

nickname_attribute
Type

Optional[str]

locale_attribute
Type

Optional[str]

position_attribute
Type

Optional[str]

login_button_text
Type

Optional[str]

assertion_consumer_service_url: Optional[str]
email_attribute: Optional[str]
enable: Optional[bool]
encrypt: Optional[bool]
first_name_attribute: Optional[str]
idp_certificate_file: Optional[str]
idp_descriptor_url: Optional[str]
idp_url: Optional[str]
last_name_attribute: Optional[str]
locale_attribute: Optional[str]
login_button_text: Optional[str]
nickname_attribute: Optional[str]
position_attribute: Optional[str]
private_key_file: Optional[str]
public_certificate_file: Optional[str]
username_attribute: Optional[str]
verify: Optional[bool]
class ServiceSettings(*, SiteURL: str = None, ListenAddress: str = None, ConnectionSecurity: str = None, TLSCertFile: str = None, TLSKeyFile: str = None, UseLetsEncrypt: bool = None, LetsEncryptCertificateCacheFile: str = None, Forward80To443: bool = None, ReadTimeout: int = None, WriteTimeout: int = None, MaximumLoginAttempts: int = None, SegmentDeveloperKey: str = None, GoogleDeveloperKey: str = None, EnableOAuthServiceProvider: bool = None, EnableIncomingWebhooks: bool = None, EnableOutgoingWebhooks: bool = None, EnableCommands: bool = None, EnableOnlyAdminIntegrations: bool = None, EnablePostUsernameOverride: bool = None, EnablePostIconOverride: bool = None, EnableTesting: bool = None, EnableDeveloper: bool = None, EnableSecurityFixAlert: bool = None, EnableInsecureOutgoingConnections: bool = None, EnableMultifactorAuthentication: bool = None, EnforceMultifactorAuthentication: bool = None, AllowCorsFrom: str = None, SessionLengthWebInDays: int = None, SessionLengthMobileInDays: int = None, SessionLengthSSOInDays: int = None, SessionCacheInMinutes: int = None, WebsocketSecurePort: int = None, WebsocketPort: int = None, WebserverMode: str = None, EnableCustomEmoji: bool = None, RestrictCustomEmojiCreation: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

site_url
Type

Optional[str]

listen_address
Type

Optional[str]

connection_security
Type

Optional[str]

tls_cert_file
Type

Optional[str]

tls_key_file
Type

Optional[str]

use_lets_encrypt
Type

Optional[bool]

lets_encrypt_certificate_cache_file
Type

Optional[str]

forward80_to443
Type

Optional[bool]

read_timeout
Type

Optional[int]

write_timeout
Type

Optional[int]

maximum_login_attempts
Type

Optional[int]

segment_developer_key
Type

Optional[str]

google_developer_key
Type

Optional[str]

enable_oauth_service_provider
Type

Optional[bool]

enable_incoming_webhooks
Type

Optional[bool]

enable_outgoing_webhooks
Type

Optional[bool]

enable_commands
Type

Optional[bool]

enable_only_admin_integrations
Type

Optional[bool]

enable_post_username_override
Type

Optional[bool]

enable_post_icon_override
Type

Optional[bool]

enable_testing
Type

Optional[bool]

enable_developer
Type

Optional[bool]

enable_security_fix_alert
Type

Optional[bool]

enable_insecure_outgoing_connections
Type

Optional[bool]

enable_multifactor_authentication
Type

Optional[bool]

enforce_multifactor_authentication
Type

Optional[bool]

allow_cors_from
Type

Optional[str]

session_length_web_in_days
Type

Optional[int]

session_length_mobile_in_days
Type

Optional[int]

session_length_sso_in_days
Type

Optional[int]

session_cache_in_minutes
Type

Optional[int]

websocket_secure_port
Type

Optional[int]

websocket_port
Type

Optional[int]

webserver_mode
Type

Optional[str]

enable_custom_emoji
Type

Optional[bool]

restrict_custom_emoji_creation
Type

Optional[str]

allow_cors_from: Optional[str]
connection_security: Optional[str]
enable_commands: Optional[bool]
enable_custom_emoji: Optional[bool]
enable_developer: Optional[bool]
enable_incoming_webhooks: Optional[bool]
enable_insecure_outgoing_connections: Optional[bool]
enable_multifactor_authentication: Optional[bool]
enable_oauth_service_provider: Optional[bool]
enable_only_admin_integrations: Optional[bool]
enable_outgoing_webhooks: Optional[bool]
enable_post_icon_override: Optional[bool]
enable_post_username_override: Optional[bool]
enable_security_fix_alert: Optional[bool]
enable_testing: Optional[bool]
enforce_multifactor_authentication: Optional[bool]
forward80_to443: Optional[bool]
google_developer_key: Optional[str]
lets_encrypt_certificate_cache_file: Optional[str]
listen_address: Optional[str]
maximum_login_attempts: Optional[int]
read_timeout: Optional[int]
restrict_custom_emoji_creation: Optional[str]
segment_developer_key: Optional[str]
session_cache_in_minutes: Optional[int]
session_length_mobile_in_days: Optional[int]
session_length_sso_in_days: Optional[int]
session_length_web_in_days: Optional[int]
site_url: Optional[str]
tls_cert_file: Optional[str]
tls_key_file: Optional[str]
use_lets_encrypt: Optional[bool]
webserver_mode: Optional[str]
websocket_port: Optional[int]
websocket_secure_port: Optional[int]
write_timeout: Optional[int]
class SqlSettings(*, DriverName: str = None, DataSource: str = None, DataSourceReplicas: List[str] = None, MaxIdleConns: int = None, MaxOpenConns: int = None, Trace: bool = None, AtRestEncryptKey: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

driver_name
Type

Optional[str]

data_source
Type

Optional[str]

data_source_replicas
Type

Optional[List[str]]

max_idle_conns
Type

Optional[int]

max_open_conns
Type

Optional[int]

trace
Type

Optional[bool]

at_rest_encrypt_key
Type

Optional[str]

at_rest_encrypt_key: Optional[str]
data_source: Optional[str]
data_source_replicas: Optional[List[str]]
driver_name: Optional[str]
max_idle_conns: Optional[int]
max_open_conns: Optional[int]
trace: Optional[bool]
class SupportSettings(*, TermsOfServiceLink: str = None, PrivacyPolicyLink: str = None, AboutLink: str = None, HelpLink: str = None, ReportAProblemLink: str = None, SupportEmail: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

Type

Optional[str]

Type

Optional[str]

Type

Optional[str]

Type

Optional[str]

Type

Optional[str]

support_email
Type

Optional[str]

about_link: Optional[str]
help_link: Optional[str]
privacy_policy_link: Optional[str]
report_aproblem_link: Optional[str]
support_email: Optional[str]
terms_of_service_link: Optional[str]
class TeamSettings(*, SiteName: str = None, MaxUsersPerTeam: int = None, EnableTeamCreation: bool = None, EnableUserCreation: bool = None, EnableOpenServer: bool = None, RestrictCreationToDomains: str = None, EnableCustomBrand: bool = None, CustomBrandText: str = None, CustomDescriptionText: str = None, RestrictDirectMessage: str = None, RestrictTeamInvite: str = None, RestrictPublicChannelManagement: str = None, RestrictPrivateChannelManagement: str = None, RestrictPublicChannelCreation: str = None, RestrictPrivateChannelCreation: str = None, RestrictPublicChannelDeletion: str = None, RestrictPrivateChannelDeletion: str = None, UserStatusAwayTimeout: int = None, MaxChannelsPerTeam: int = None, MaxNotificationsPerChannel: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

site_name
Type

Optional[str]

max_users_per_team
Type

Optional[int]

enable_team_creation
Type

Optional[bool]

enable_user_creation
Type

Optional[bool]

enable_open_server
Type

Optional[bool]

restrict_creation_to_domains
Type

Optional[str]

enable_custom_brand
Type

Optional[bool]

custom_brand_text
Type

Optional[str]

custom_description_text
Type

Optional[str]

restrict_direct_message
Type

Optional[str]

restrict_team_invite
Type

Optional[str]

restrict_public_channel_management
Type

Optional[str]

restrict_private_channel_management
Type

Optional[str]

restrict_public_channel_creation
Type

Optional[str]

restrict_private_channel_creation
Type

Optional[str]

restrict_public_channel_deletion
Type

Optional[str]

restrict_private_channel_deletion
Type

Optional[str]

user_status_away_timeout
Type

Optional[int]

max_channels_per_team
Type

Optional[int]

max_notifications_per_channel
Type

Optional[int]

custom_brand_text: Optional[str]
custom_description_text: Optional[str]
enable_custom_brand: Optional[bool]
enable_open_server: Optional[bool]
enable_team_creation: Optional[bool]
enable_user_creation: Optional[bool]
max_channels_per_team: Optional[int]
max_notifications_per_channel: Optional[int]
max_users_per_team: Optional[int]
restrict_creation_to_domains: Optional[str]
restrict_direct_message: Optional[str]
restrict_private_channel_creation: Optional[str]
restrict_private_channel_deletion: Optional[str]
restrict_private_channel_management: Optional[str]
restrict_public_channel_creation: Optional[str]
restrict_public_channel_deletion: Optional[str]
restrict_public_channel_management: Optional[str]
restrict_team_invite: Optional[str]
site_name: Optional[str]
user_status_away_timeout: Optional[int]
analytics_settings: Optional[matterapi.models.Config.AnalyticsSettings]
cluster_settings: Optional[matterapi.models.Config.ClusterSettings]
compliance_settings: Optional[matterapi.models.Config.ComplianceSettings]
email_settings: Optional[matterapi.models.Config.EmailSettings]
file_settings: Optional[matterapi.models.Config.FileSettings]
git_lab_settings: Optional[matterapi.models.Config.GitLabSettings]
google_settings: Optional[matterapi.models.Config.GoogleSettings]
ldap_settings: Optional[matterapi.models.Config.LdapSettings]
localization_settings: Optional[matterapi.models.Config.LocalizationSettings]
log_settings: Optional[matterapi.models.Config.LogSettings]
metrics_settings: Optional[matterapi.models.Config.MetricsSettings]
native_app_settings: Optional[matterapi.models.Config.NativeAppSettings]
office365_settings: Optional[matterapi.models.Config.Office365Settings]
password_settings: Optional[matterapi.models.Config.PasswordSettings]
privacy_settings: Optional[matterapi.models.Config.PrivacySettings]
rate_limit_settings: Optional[matterapi.models.Config.RateLimitSettings]
saml_settings: Optional[matterapi.models.Config.SamlSettings]
service_settings: Optional[matterapi.models.Config.ServiceSettings]
sql_settings: Optional[matterapi.models.Config.SqlSettings]
support_settings: Optional[matterapi.models.Config.SupportSettings]
team_settings: Optional[matterapi.models.Config.TeamSettings]
class matterapi.models.ConfirmCustomerPaymentMultipartData(*, stripe_setup_intent_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

stripe_setup_intent_id
Type

Optional[str]

stripe_setup_intent_id: Optional[str]
class matterapi.models.ConvertBotToUserJsonBody(*, email: str = None, username: str = None, password: str = None, first_name: str = None, last_name: str = None, nickname: str = None, locale: str = None, position: str = None, props: matterapi.models.ConvertBotToUserJsonBody.Props = None, notify_props: matterapi.models.UserNotifyProps = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

email
Type

Optional[str]

username
Type

Optional[str]

password
Type

Optional[str]

first_name
Type

Optional[str]

last_name
Type

Optional[str]

nickname
Type

Optional[str]

locale
Type

Optional[str]

position
Type

Optional[str]

props
Type

Optional[Props]

notify_props
Type

Optional[UserNotifyProps]

class Props(**extra_data: Any)

Bases: matterapi.types.BaseConfig

email: Optional[str]
first_name: Optional[str]
last_name: Optional[str]
locale: Optional[str]
nickname: Optional[str]
notify_props: Optional[matterapi.models.UserNotifyProps]
password: Optional[str]
position: Optional[str]
props: Optional[matterapi.models.ConvertBotToUserJsonBody.Props]
username: Optional[str]
class matterapi.models.CreateBotJsonBody(*, username: str, display_name: str = None, description: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

username
Type

str

display_name
Type

Optional[str]

description
Type

Optional[str]

description: Optional[str]
display_name: Optional[str]
username: str
class matterapi.models.CreateChannelJsonBody(*, team_id: str, name: str, display_name: str, type: str, purpose: str = None, header: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

team_id

The team ID of the team to create the channel on

Type

str

name

The unique handle for the channel, will be present in the channel URL

Type

str

display_name

The non-unique UI name for the channel

Type

str

type

‘O’ for a public channel, ‘P’ for a private channel

Type

str

purpose

A short description of the purpose of the channel

Type

Optional[str]

header

Markdown-formatted text to display in the header of the channel

Type

Optional[str]

display_name: str
header: Optional[str]
name: str
purpose: Optional[str]
team_id: str
type: str
class matterapi.models.CreateCommandJsonBody(*, team_id: str, method: str, trigger: str, url: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

team_id

Team ID to where the command should be created

Type

str

method

‘P’ for post request, ‘G’ for get request

Type

str

trigger

Activation word to trigger the command

Type

str

url

The URL that the command will make the request

Type

str

method: str
team_id: str
trigger: str
url: str
class matterapi.models.CreateEmojiMultipartData(*, image: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any] = None, emoji: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

image

A file to be uploaded

Type

File

emoji

A JSON object containing a name field with the name of the emoji and a creator_id field with the id of the authenticated user.

Type

str

emoji: str
image: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any]
class matterapi.models.CreateGroupJsonBody(*, group: matterapi.models.CreateGroupJsonBody.Group, user_ids: List[str], **extra_data: Any)

Bases: matterapi.types.BaseConfig

group

Group object to create.

Type

Group

user_ids

The user ids of the group members to add.

Type

List[str]

class Group(*, name: str, display_name: str, source: str, allow_reference: bool, **extra_data: Any)

Bases: matterapi.types.BaseConfig

Group object to create.

name

The unique group name used for at-mentioning.

Type

str

display_name

The display name of the group which can include spaces.

Type

str

source

Must be custom

Type

str

allow_reference

Must be true

Type

bool

allow_reference: bool
display_name: str
name: str
source: str
group: matterapi.models.CreateGroupJsonBody.Group
user_ids: List[str]
class matterapi.models.CreateIncomingWebhookJsonBody(*, channel_id: str, user_id: str = None, display_name: str = None, description: str = None, username: str = None, icon_url: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

channel_id

The ID of a public channel or private group that receives the webhook payloads.

Type

str

user_id

The ID of the owner of the webhook if different than the requester. Required for [local mode](https://docs.mattermost.com/administration/mmctl-cli- tool.html#local-mode).

Type

Optional[str]

display_name

The display name for this incoming webhook

Type

Optional[str]

description

The description for this incoming webhook

Type

Optional[str]

username

The username this incoming webhook will post as.

Type

Optional[str]

icon_url

The profile picture this incoming webhook will use when posting.

Type

Optional[str]

channel_id: str
description: Optional[str]
display_name: Optional[str]
icon_url: Optional[str]
user_id: Optional[str]
username: Optional[str]
class matterapi.models.CreateJobJsonBody(*, type: str, data: matterapi.models.CreateJobJsonBody.Data = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

type

The type of job to create

Type

str

data

An object containing any additional data required for this job type

Type

Optional[Data]

class Data(**extra_data: Any)

Bases: matterapi.types.BaseConfig

An object containing any additional data required for this job type

data: Optional[matterapi.models.CreateJobJsonBody.Data]
type: str
class matterapi.models.CreateOAuthAppJsonBody(*, name: str, description: str, callback_urls: List[str], homepage: str, icon_url: str = None, is_trusted: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

name

The name of the client application

Type

str

description

A short description of the application

Type

str

callback_urls

A list of callback URLs for the appliation

Type

List[str]

homepage

A link to the website of the application

Type

str

icon_url

A URL to an icon to display with the application

Type

Optional[str]

is_trusted

Set this to true to skip asking users for permission

Type

Optional[bool]

callback_urls: List[str]
description: str
homepage: str
icon_url: Optional[str]
is_trusted: Optional[bool]
name: str
class matterapi.models.CreateOutgoingWebhookJsonBody(*, team_id: str, display_name: str, trigger_words: List[str], callback_urls: List[str], channel_id: str = None, creator_id: str = None, description: str = None, trigger_when: int = None, content_type: str = 'application/x-www-form-urlencoded', **extra_data: Any)

Bases: matterapi.types.BaseConfig

team_id

The ID of the team that the webhook watchs

Type

str

display_name

The display name for this outgoing webhook

Type

str

trigger_words

List of words for the webhook to trigger on

Type

List[str]

callback_urls

The URLs to POST the payloads to when the webhook is triggered

Type

List[str]

channel_id

The ID of a public channel that the webhook watchs

Type

Optional[str]

creator_id

The ID of the owner of the webhook if different than the requester. Required in [local mode](https://docs.mattermost.com/administration/mmctl-cli- tool.html#local-mode).

Type

Optional[str]

description

The description for this outgoing webhook

Type

Optional[str]

trigger_when

When to trigger the webhook, 0 when a trigger word is present at all and 1 if the message starts with a trigger word

Type

Optional[int]

content_type

The format to POST the data in, either application/json or application/x-www-form-urlencoded

Default: ‘application/x-www-form-urlencoded’.

Type

Optional[str]

callback_urls: List[str]
channel_id: Optional[str]
content_type: Optional[str]
creator_id: Optional[str]
description: Optional[str]
display_name: str
team_id: str
trigger_when: Optional[int]
trigger_words: List[str]
class matterapi.models.CreatePostEphemeralJsonBody(*, user_id: str, post: matterapi.models.CreatePostEphemeralJsonBody.Post, **extra_data: Any)

Bases: matterapi.types.BaseConfig

user_id

The target user id for the ephemeral post

Type

str

post

Post object to create

Type

Post

class Post(*, channel_id: str, message: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

Post object to create

channel_id

The channel ID to post in

Type

str

message

The message contents, can be formatted with Markdown

Type

str

channel_id: str
message: str
post: matterapi.models.CreatePostEphemeralJsonBody.Post
user_id: str
class matterapi.models.CreatePostJsonBody(*, channel_id: str, message: str, root_id: str = None, file_ids: List[str] = None, props: matterapi.models.CreatePostJsonBody.Props = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

channel_id

The channel ID to post in

Type

str

message

The message contents, can be formatted with Markdown

Type

str

root_id

The post ID to comment on

Type

Optional[str]

file_ids

A list of file IDs to associate with the post. Note that posts are limited to 5 files maximum. Please use additional posts for more files.

Type

Optional[List[str]]

props

A general JSON property bag to attach to the post

Type

Optional[Props]

class Props(**extra_data: Any)

Bases: matterapi.types.BaseConfig

A general JSON property bag to attach to the post

channel_id: str
file_ids: Optional[List[str]]
message: str
props: Optional[matterapi.models.CreatePostJsonBody.Props]
root_id: Optional[str]
class matterapi.models.CreateSchemeJsonBody(*, name: str, scope: str, description: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

name

The name of the scheme

Type

str

scope

The scope of the scheme (“team” or “channel”)

Type

str

description

The description of the scheme

Type

Optional[str]

description: Optional[str]
name: str
scope: str
class matterapi.models.CreateTeamJsonBody(*, name: str, display_name: str, type: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

name

Unique handler for a team, will be present in the team URL

Type

str

display_name

Non-unique UI name for the team

Type

str

type

‘O’ for open, ‘I’ for invite only

Type

str

display_name: str
name: str
type: str
class matterapi.models.CreateUploadJsonBody(*, channel_id: str, filename: str, file_size: int, **extra_data: Any)

Bases: matterapi.types.BaseConfig

channel_id

The ID of the channel to upload to.

Type

str

filename

The name of the file to upload.

Type

str

file_size

The size of the file to upload in bytes.

Type

int

channel_id: str
file_size: int
filename: str
class matterapi.models.CreateUserAccessTokenJsonBody(*, description: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

description

A description of the token usage

Type

str

description: str
class matterapi.models.CreateUserJsonBody(*, email: str, username: str, first_name: str = None, last_name: str = None, nickname: str = None, auth_data: str = None, auth_service: str = None, password: str = None, locale: str = None, props: matterapi.models.CreateUserJsonBody.Props = None, notify_props: matterapi.models.UserNotifyProps = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

email
Type

str

username
Type

str

first_name
Type

Optional[str]

last_name
Type

Optional[str]

nickname
Type

Optional[str]

auth_data

Service-specific authentication data, such as email address.

Type

Optional[str]

auth_service

The authentication service, one of “email”, “gitlab”, “ldap”, “saml”, “office365”, “google”, and “”.

Type

Optional[str]

password

The password used for email authentication.

Type

Optional[str]

locale
Type

Optional[str]

props
Type

Optional[Props]

notify_props
Type

Optional[UserNotifyProps]

class Props(**extra_data: Any)

Bases: matterapi.types.BaseConfig

auth_data: Optional[str]
auth_service: Optional[str]
email: str
first_name: Optional[str]
last_name: Optional[str]
locale: Optional[str]
nickname: Optional[str]
notify_props: Optional[matterapi.models.UserNotifyProps]
password: Optional[str]
props: Optional[matterapi.models.CreateUserJsonBody.Props]
username: str
class matterapi.models.DataRetentionPolicy(*, display_name: str = None, post_duration: int = None, id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

display_name

The display name for this retention policy.

Type

Optional[str]

post_duration

The number of days a message will be retained before being deleted by this policy. If this value is less than 0, the policy has infinite retention (i.e. messages are never deleted).

Type

Optional[int]

id

The ID of this retention policy.

Type

Optional[str]

display_name: Optional[str]
id: Optional[str]
post_duration: Optional[int]
class matterapi.models.DataRetentionPolicyCreate(*, display_name: str = None, post_duration: int = None, team_ids: List[str] = None, channel_ids: List[str] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

display_name

The display name for this retention policy.

Type

Optional[str]

post_duration

The number of days a message will be retained before being deleted by this policy. If this value is less than 0, the policy has infinite retention (i.e. messages are never deleted).

Type

Optional[int]

team_ids

The IDs of the teams to which this policy should be applied.

Type

Optional[List[str]]

channel_ids

The IDs of the channels to which this policy should be applied.

Type

Optional[List[str]]

channel_ids: Optional[List[str]]
display_name: Optional[str]
post_duration: Optional[int]
team_ids: Optional[List[str]]
class matterapi.models.DataRetentionPolicyForChannel(*, channel_id: str = None, post_duration: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

channel_id

The channel ID.

Type

Optional[str]

post_duration

The number of days a message will be retained before being deleted by this policy.

Type

Optional[int]

channel_id: Optional[str]
post_duration: Optional[int]
class matterapi.models.DataRetentionPolicyForTeam(*, team_id: str = None, post_duration: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

team_id

The team ID.

Type

Optional[str]

post_duration

The number of days a message will be retained before being deleted by this policy.

Type

Optional[int]

post_duration: Optional[int]
team_id: Optional[str]
class matterapi.models.DataRetentionPolicyWithTeamAndChannelCounts(*, display_name: str = None, post_duration: int = None, id: str = None, team_count: int = None, channel_count: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

display_name

The display name for this retention policy.

Type

Optional[str]

post_duration

The number of days a message will be retained before being deleted by this policy. If this value is less than 0, the policy has infinite retention (i.e. messages are never deleted).

Type

Optional[int]

id

The ID of this retention policy.

Type

Optional[str]

team_count

The number of teams to which this policy is applied.

Type

Optional[int]

channel_count

The number of channels to which this policy is applied.

Type

Optional[int]

channel_count: Optional[int]
display_name: Optional[str]
id: Optional[str]
post_duration: Optional[int]
team_count: Optional[int]
class matterapi.models.DataRetentionPolicyWithTeamAndChannelIds(*, display_name: str = None, post_duration: int = None, team_ids: List[str] = None, channel_ids: List[str] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

display_name

The display name for this retention policy.

Type

Optional[str]

post_duration

The number of days a message will be retained before being deleted by this policy. If this value is less than 0, the policy has infinite retention (i.e. messages are never deleted).

Type

Optional[int]

team_ids

The IDs of the teams to which this policy should be applied.

Type

Optional[List[str]]

channel_ids

The IDs of the channels to which this policy should be applied.

Type

Optional[List[str]]

channel_ids: Optional[List[str]]
display_name: Optional[str]
post_duration: Optional[int]
team_ids: Optional[List[str]]
class matterapi.models.DataRetentionPolicyWithoutId(*, display_name: str = None, post_duration: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

display_name

The display name for this retention policy.

Type

Optional[str]

post_duration

The number of days a message will be retained before being deleted by this policy. If this value is less than 0, the policy has infinite retention (i.e. messages are never deleted).

Type

Optional[int]

display_name: Optional[str]
post_duration: Optional[int]
class matterapi.models.DeleteGroupMembersJsonBody(*, user_ids: List[str] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

An object containing the user ids of the members to remove.

user_ids
Type

Optional[List[str]]

user_ids: Optional[List[str]]
class matterapi.models.DialogElementsItem(**extra_data: Any)

Bases: matterapi.types.BaseConfig

class matterapi.models.DisableUserAccessTokenJsonBody(*, token_id: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

token_id

The personal access token GUID to disable

Type

str

token_id: str
class matterapi.models.Emoji(*, id: str = None, creator_id: str = None, name: str = None, create_at: int = None, update_at: int = None, delete_at: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

The ID of the emoji

Type

Optional[str]

creator_id

The ID of the user that made the emoji

Type

Optional[str]

name

The name of the emoji

Type

Optional[str]

create_at

The time in milliseconds the emoji was made

Type

Optional[int]

update_at

The time in milliseconds the emoji was last updated

Type

Optional[int]

delete_at

The time in milliseconds the emoji was deleted

Type

Optional[int]

create_at: Optional[int]
creator_id: Optional[str]
delete_at: Optional[int]
id: Optional[str]
name: Optional[str]
update_at: Optional[int]
class matterapi.models.EnableUserAccessTokenJsonBody(*, token_id: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

token_id

The personal access token GUID to enable

Type

str

token_id: str
class matterapi.models.EnvironmentConfig(*, ServiceSettings: matterapi.models.EnvironmentConfig.ServiceSettings = None, TeamSettings: matterapi.models.EnvironmentConfig.TeamSettings = None, SqlSettings: matterapi.models.EnvironmentConfig.SqlSettings = None, LogSettings: matterapi.models.EnvironmentConfig.LogSettings = None, PasswordSettings: matterapi.models.EnvironmentConfig.PasswordSettings = None, FileSettings: matterapi.models.EnvironmentConfig.FileSettings = None, EmailSettings: matterapi.models.EnvironmentConfig.EmailSettings = None, RateLimitSettings: matterapi.models.EnvironmentConfig.RateLimitSettings = None, PrivacySettings: matterapi.models.EnvironmentConfig.PrivacySettings = None, SupportSettings: matterapi.models.EnvironmentConfig.SupportSettings = None, GitLabSettings: matterapi.models.EnvironmentConfig.GitLabSettings = None, GoogleSettings: matterapi.models.EnvironmentConfig.GoogleSettings = None, Office365Settings: matterapi.models.EnvironmentConfig.Office365Settings = None, LdapSettings: matterapi.models.EnvironmentConfig.LdapSettings = None, ComplianceSettings: matterapi.models.EnvironmentConfig.ComplianceSettings = None, LocalizationSettings: matterapi.models.EnvironmentConfig.LocalizationSettings = None, SamlSettings: matterapi.models.EnvironmentConfig.SamlSettings = None, NativeAppSettings: matterapi.models.EnvironmentConfig.NativeAppSettings = None, ClusterSettings: matterapi.models.EnvironmentConfig.ClusterSettings = None, MetricsSettings: matterapi.models.EnvironmentConfig.MetricsSettings = None, AnalyticsSettings: matterapi.models.EnvironmentConfig.AnalyticsSettings = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

service_settings
Type

Optional[ServiceSettings]

team_settings
Type

Optional[TeamSettings]

sql_settings
Type

Optional[SqlSettings]

log_settings
Type

Optional[LogSettings]

password_settings
Type

Optional[PasswordSettings]

file_settings
Type

Optional[FileSettings]

email_settings
Type

Optional[EmailSettings]

rate_limit_settings
Type

Optional[RateLimitSettings]

privacy_settings
Type

Optional[PrivacySettings]

support_settings
Type

Optional[SupportSettings]

git_lab_settings
Type

Optional[GitLabSettings]

google_settings
Type

Optional[GoogleSettings]

office365_settings
Type

Optional[Office365Settings]

ldap_settings
Type

Optional[LdapSettings]

compliance_settings
Type

Optional[ComplianceSettings]

localization_settings
Type

Optional[LocalizationSettings]

saml_settings
Type

Optional[SamlSettings]

native_app_settings
Type

Optional[NativeAppSettings]

cluster_settings
Type

Optional[ClusterSettings]

metrics_settings
Type

Optional[MetricsSettings]

analytics_settings
Type

Optional[AnalyticsSettings]

class AnalyticsSettings(*, MaxUsersForStatistics: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

max_users_for_statistics
Type

Optional[bool]

max_users_for_statistics: Optional[bool]
class ClusterSettings(*, Enable: bool = None, InterNodeListenAddress: bool = None, InterNodeUrls: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

inter_node_listen_address
Type

Optional[bool]

inter_node_urls
Type

Optional[bool]

enable: Optional[bool]
inter_node_listen_address: Optional[bool]
inter_node_urls: Optional[bool]
class ComplianceSettings(*, Enable: bool = None, Directory: bool = None, EnableDaily: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

directory
Type

Optional[bool]

enable_daily
Type

Optional[bool]

directory: Optional[bool]
enable: Optional[bool]
enable_daily: Optional[bool]
class EmailSettings(*, EnableSignUpWithEmail: bool = None, EnableSignInWithEmail: bool = None, EnableSignInWithUsername: bool = None, SendEmailNotifications: bool = None, RequireEmailVerification: bool = None, FeedbackName: bool = None, FeedbackEmail: bool = None, FeedbackOrganization: bool = None, SMTPUsername: bool = None, SMTPPassword: bool = None, SMTPServer: bool = None, SMTPPort: bool = None, ConnectionSecurity: bool = None, InviteSalt: bool = None, PasswordResetSalt: bool = None, SendPushNotifications: bool = None, PushNotificationServer: bool = None, PushNotificationContents: bool = None, EnableEmailBatching: bool = None, EmailBatchingBufferSize: bool = None, EmailBatchingInterval: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable_sign_up_with_email
Type

Optional[bool]

enable_sign_in_with_email
Type

Optional[bool]

enable_sign_in_with_username
Type

Optional[bool]

send_email_notifications
Type

Optional[bool]

require_email_verification
Type

Optional[bool]

feedback_name
Type

Optional[bool]

feedback_email
Type

Optional[bool]

feedback_organization
Type

Optional[bool]

smtp_username
Type

Optional[bool]

smtp_password
Type

Optional[bool]

smtp_server
Type

Optional[bool]

smtp_port
Type

Optional[bool]

connection_security
Type

Optional[bool]

invite_salt
Type

Optional[bool]

password_reset_salt
Type

Optional[bool]

send_push_notifications
Type

Optional[bool]

push_notification_server
Type

Optional[bool]

push_notification_contents
Type

Optional[bool]

enable_email_batching
Type

Optional[bool]

email_batching_buffer_size
Type

Optional[bool]

email_batching_interval
Type

Optional[bool]

connection_security: Optional[bool]
email_batching_buffer_size: Optional[bool]
email_batching_interval: Optional[bool]
enable_email_batching: Optional[bool]
enable_sign_in_with_email: Optional[bool]
enable_sign_in_with_username: Optional[bool]
enable_sign_up_with_email: Optional[bool]
feedback_email: Optional[bool]
feedback_name: Optional[bool]
feedback_organization: Optional[bool]
invite_salt: Optional[bool]
password_reset_salt: Optional[bool]
push_notification_contents: Optional[bool]
push_notification_server: Optional[bool]
require_email_verification: Optional[bool]
send_email_notifications: Optional[bool]
send_push_notifications: Optional[bool]
smtp_password: Optional[bool]
smtp_port: Optional[bool]
smtp_server: Optional[bool]
smtp_username: Optional[bool]
class FileSettings(*, MaxFileSize: bool = None, DriverName: bool = None, Directory: bool = None, EnablePublicLink: bool = None, PublicLinkSalt: bool = None, ThumbnailWidth: bool = None, ThumbnailHeight: bool = None, PreviewWidth: bool = None, PreviewHeight: bool = None, ProfileWidth: bool = None, ProfileHeight: bool = None, InitialFont: bool = None, AmazonS3AccessKeyId: bool = None, AmazonS3SecretAccessKey: bool = None, AmazonS3Bucket: bool = None, AmazonS3Region: bool = None, AmazonS3Endpoint: bool = None, AmazonS3SSL: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

max_file_size
Type

Optional[bool]

driver_name
Type

Optional[bool]

directory
Type

Optional[bool]

Type

Optional[bool]

Type

Optional[bool]

thumbnail_width
Type

Optional[bool]

thumbnail_height
Type

Optional[bool]

preview_width
Type

Optional[bool]

preview_height
Type

Optional[bool]

profile_width
Type

Optional[bool]

profile_height
Type

Optional[bool]

initial_font
Type

Optional[bool]

amazon_s3_access_key_id
Type

Optional[bool]

amazon_s3_secret_access_key
Type

Optional[bool]

amazon_s3_bucket
Type

Optional[bool]

amazon_s3_region
Type

Optional[bool]

amazon_s3_endpoint
Type

Optional[bool]

amazon_s3_ssl
Type

Optional[bool]

amazon_s3_access_key_id: Optional[bool]
amazon_s3_bucket: Optional[bool]
amazon_s3_endpoint: Optional[bool]
amazon_s3_region: Optional[bool]
amazon_s3_secret_access_key: Optional[bool]
amazon_s3_ssl: Optional[bool]
directory: Optional[bool]
driver_name: Optional[bool]
enable_public_link: Optional[bool]
initial_font: Optional[bool]
max_file_size: Optional[bool]
preview_height: Optional[bool]
preview_width: Optional[bool]
profile_height: Optional[bool]
profile_width: Optional[bool]
public_link_salt: Optional[bool]
thumbnail_height: Optional[bool]
thumbnail_width: Optional[bool]
class GitLabSettings(*, Enable: bool = None, Secret: bool = None, Id: bool = None, Scope: bool = None, AuthEndpoint: bool = None, TokenEndpoint: bool = None, UserApiEndpoint: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

secret
Type

Optional[bool]

id
Type

Optional[bool]

scope
Type

Optional[bool]

auth_endpoint
Type

Optional[bool]

token_endpoint
Type

Optional[bool]

user_api_endpoint
Type

Optional[bool]

auth_endpoint: Optional[bool]
enable: Optional[bool]
id: Optional[bool]
scope: Optional[bool]
secret: Optional[bool]
token_endpoint: Optional[bool]
user_api_endpoint: Optional[bool]
class GoogleSettings(*, Enable: bool = None, Secret: bool = None, Id: bool = None, Scope: bool = None, AuthEndpoint: bool = None, TokenEndpoint: bool = None, UserApiEndpoint: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

secret
Type

Optional[bool]

id
Type

Optional[bool]

scope
Type

Optional[bool]

auth_endpoint
Type

Optional[bool]

token_endpoint
Type

Optional[bool]

user_api_endpoint
Type

Optional[bool]

auth_endpoint: Optional[bool]
enable: Optional[bool]
id: Optional[bool]
scope: Optional[bool]
secret: Optional[bool]
token_endpoint: Optional[bool]
user_api_endpoint: Optional[bool]
class LdapSettings(*, Enable: bool = None, LdapServer: bool = None, LdapPort: bool = None, ConnectionSecurity: bool = None, BaseDN: bool = None, BindUsername: bool = None, BindPassword: bool = None, UserFilter: bool = None, FirstNameAttribute: bool = None, LastNameAttribute: bool = None, EmailAttribute: bool = None, UsernameAttribute: bool = None, NicknameAttribute: bool = None, IdAttribute: bool = None, PositionAttribute: bool = None, SyncIntervalMinutes: bool = None, SkipCertificateVerification: bool = None, QueryTimeout: bool = None, MaxPageSize: bool = None, LoginFieldName: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

ldap_server
Type

Optional[bool]

ldap_port
Type

Optional[bool]

connection_security
Type

Optional[bool]

base_dn
Type

Optional[bool]

bind_username
Type

Optional[bool]

bind_password
Type

Optional[bool]

user_filter
Type

Optional[bool]

first_name_attribute
Type

Optional[bool]

last_name_attribute
Type

Optional[bool]

email_attribute
Type

Optional[bool]

username_attribute
Type

Optional[bool]

nickname_attribute
Type

Optional[bool]

id_attribute
Type

Optional[bool]

position_attribute
Type

Optional[bool]

sync_interval_minutes
Type

Optional[bool]

skip_certificate_verification
Type

Optional[bool]

query_timeout
Type

Optional[bool]

max_page_size
Type

Optional[bool]

login_field_name
Type

Optional[bool]

base_dn: Optional[bool]
bind_password: Optional[bool]
bind_username: Optional[bool]
connection_security: Optional[bool]
email_attribute: Optional[bool]
enable: Optional[bool]
first_name_attribute: Optional[bool]
id_attribute: Optional[bool]
last_name_attribute: Optional[bool]
ldap_port: Optional[bool]
ldap_server: Optional[bool]
login_field_name: Optional[bool]
max_page_size: Optional[bool]
nickname_attribute: Optional[bool]
position_attribute: Optional[bool]
query_timeout: Optional[bool]
skip_certificate_verification: Optional[bool]
sync_interval_minutes: Optional[bool]
user_filter: Optional[bool]
username_attribute: Optional[bool]
class LocalizationSettings(*, DefaultServerLocale: bool = None, DefaultClientLocale: bool = None, AvailableLocales: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

default_server_locale
Type

Optional[bool]

default_client_locale
Type

Optional[bool]

available_locales
Type

Optional[bool]

available_locales: Optional[bool]
default_client_locale: Optional[bool]
default_server_locale: Optional[bool]
class LogSettings(*, EnableConsole: bool = None, ConsoleLevel: bool = None, EnableFile: bool = None, FileLevel: bool = None, FileLocation: bool = None, EnableWebhookDebugging: bool = None, EnableDiagnostics: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable_console
Type

Optional[bool]

console_level
Type

Optional[bool]

enable_file
Type

Optional[bool]

file_level
Type

Optional[bool]

file_location
Type

Optional[bool]

enable_webhook_debugging
Type

Optional[bool]

enable_diagnostics
Type

Optional[bool]

console_level: Optional[bool]
enable_console: Optional[bool]
enable_diagnostics: Optional[bool]
enable_file: Optional[bool]
enable_webhook_debugging: Optional[bool]
file_level: Optional[bool]
file_location: Optional[bool]
class MetricsSettings(*, Enable: bool = None, BlockProfileRate: bool = None, ListenAddress: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

block_profile_rate
Type

Optional[bool]

listen_address
Type

Optional[bool]

block_profile_rate: Optional[bool]
enable: Optional[bool]
listen_address: Optional[bool]
class NativeAppSettings(*, AppDownloadLink: bool = None, AndroidAppDownloadLink: bool = None, IosAppDownloadLink: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

Type

Optional[bool]

Type

Optional[bool]

Type

Optional[bool]

android_app_download_link: Optional[bool]
app_download_link: Optional[bool]
ios_app_download_link: Optional[bool]
class Office365Settings(*, Enable: bool = None, Secret: bool = None, Id: bool = None, Scope: bool = None, AuthEndpoint: bool = None, TokenEndpoint: bool = None, UserApiEndpoint: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

secret
Type

Optional[bool]

id
Type

Optional[bool]

scope
Type

Optional[bool]

auth_endpoint
Type

Optional[bool]

token_endpoint
Type

Optional[bool]

user_api_endpoint
Type

Optional[bool]

auth_endpoint: Optional[bool]
enable: Optional[bool]
id: Optional[bool]
scope: Optional[bool]
secret: Optional[bool]
token_endpoint: Optional[bool]
user_api_endpoint: Optional[bool]
class PasswordSettings(*, MinimumLength: bool = None, Lowercase: bool = None, Number: bool = None, Uppercase: bool = None, Symbol: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

minimum_length
Type

Optional[bool]

lowercase
Type

Optional[bool]

number
Type

Optional[bool]

uppercase
Type

Optional[bool]

symbol
Type

Optional[bool]

lowercase: Optional[bool]
minimum_length: Optional[bool]
number: Optional[bool]
symbol: Optional[bool]
uppercase: Optional[bool]
class PrivacySettings(*, ShowEmailAddress: bool = None, ShowFullName: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

show_email_address
Type

Optional[bool]

show_full_name
Type

Optional[bool]

show_email_address: Optional[bool]
show_full_name: Optional[bool]
class RateLimitSettings(*, Enable: bool = None, PerSec: bool = None, MaxBurst: bool = None, MemoryStoreSize: bool = None, VaryByRemoteAddr: bool = None, VaryByHeader: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

per_sec
Type

Optional[bool]

max_burst
Type

Optional[bool]

memory_store_size
Type

Optional[bool]

vary_by_remote_addr
Type

Optional[bool]

vary_by_header
Type

Optional[bool]

enable: Optional[bool]
max_burst: Optional[bool]
memory_store_size: Optional[bool]
per_sec: Optional[bool]
vary_by_header: Optional[bool]
vary_by_remote_addr: Optional[bool]
class SamlSettings(*, Enable: bool = None, Verify: bool = None, Encrypt: bool = None, IdpUrl: bool = None, IdpDescriptorUrl: bool = None, AssertionConsumerServiceURL: bool = None, IdpCertificateFile: bool = None, PublicCertificateFile: bool = None, PrivateKeyFile: bool = None, FirstNameAttribute: bool = None, LastNameAttribute: bool = None, EmailAttribute: bool = None, UsernameAttribute: bool = None, NicknameAttribute: bool = None, LocaleAttribute: bool = None, PositionAttribute: bool = None, LoginButtonText: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

enable
Type

Optional[bool]

verify
Type

Optional[bool]

encrypt
Type

Optional[bool]

idp_url
Type

Optional[bool]

idp_descriptor_url
Type

Optional[bool]

assertion_consumer_service_url
Type

Optional[bool]

idp_certificate_file
Type

Optional[bool]

public_certificate_file
Type

Optional[bool]

private_key_file
Type

Optional[bool]

first_name_attribute
Type

Optional[bool]

last_name_attribute
Type

Optional[bool]

email_attribute
Type

Optional[bool]

username_attribute
Type

Optional[bool]

nickname_attribute
Type

Optional[bool]

locale_attribute
Type

Optional[bool]

position_attribute
Type

Optional[bool]

login_button_text
Type

Optional[bool]

assertion_consumer_service_url: Optional[bool]
email_attribute: Optional[bool]
enable: Optional[bool]
encrypt: Optional[bool]
first_name_attribute: Optional[bool]
idp_certificate_file: Optional[bool]
idp_descriptor_url: Optional[bool]
idp_url: Optional[bool]
last_name_attribute: Optional[bool]
locale_attribute: Optional[bool]
login_button_text: Optional[bool]
nickname_attribute: Optional[bool]
position_attribute: Optional[bool]
private_key_file: Optional[bool]
public_certificate_file: Optional[bool]
username_attribute: Optional[bool]
verify: Optional[bool]
class ServiceSettings(*, SiteURL: bool = None, ListenAddress: bool = None, ConnectionSecurity: bool = None, TLSCertFile: bool = None, TLSKeyFile: bool = None, UseLetsEncrypt: bool = None, LetsEncryptCertificateCacheFile: bool = None, Forward80To443: bool = None, ReadTimeout: bool = None, WriteTimeout: bool = None, MaximumLoginAttempts: bool = None, SegmentDeveloperKey: bool = None, GoogleDeveloperKey: bool = None, EnableOAuthServiceProvider: bool = None, EnableIncomingWebhooks: bool = None, EnableOutgoingWebhooks: bool = None, EnableCommands: bool = None, EnableOnlyAdminIntegrations: bool = None, EnablePostUsernameOverride: bool = None, EnablePostIconOverride: bool = None, EnableTesting: bool = None, EnableDeveloper: bool = None, EnableSecurityFixAlert: bool = None, EnableInsecureOutgoingConnections: bool = None, EnableMultifactorAuthentication: bool = None, EnforceMultifactorAuthentication: bool = None, AllowCorsFrom: bool = None, SessionLengthWebInDays: bool = None, SessionLengthMobileInDays: bool = None, SessionLengthSSOInDays: bool = None, SessionCacheInMinutes: bool = None, WebsocketSecurePort: bool = None, WebsocketPort: bool = None, WebserverMode: bool = None, EnableCustomEmoji: bool = None, RestrictCustomEmojiCreation: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

site_url
Type

Optional[bool]

listen_address
Type

Optional[bool]

connection_security
Type

Optional[bool]

tls_cert_file
Type

Optional[bool]

tls_key_file
Type

Optional[bool]

use_lets_encrypt
Type

Optional[bool]

lets_encrypt_certificate_cache_file
Type

Optional[bool]

forward80_to443
Type

Optional[bool]

read_timeout
Type

Optional[bool]

write_timeout
Type

Optional[bool]

maximum_login_attempts
Type

Optional[bool]

segment_developer_key
Type

Optional[bool]

google_developer_key
Type

Optional[bool]

enable_oauth_service_provider
Type

Optional[bool]

enable_incoming_webhooks
Type

Optional[bool]

enable_outgoing_webhooks
Type

Optional[bool]

enable_commands
Type

Optional[bool]

enable_only_admin_integrations
Type

Optional[bool]

enable_post_username_override
Type

Optional[bool]

enable_post_icon_override
Type

Optional[bool]

enable_testing
Type

Optional[bool]

enable_developer
Type

Optional[bool]

enable_security_fix_alert
Type

Optional[bool]

enable_insecure_outgoing_connections
Type

Optional[bool]

enable_multifactor_authentication
Type

Optional[bool]

enforce_multifactor_authentication
Type

Optional[bool]

allow_cors_from
Type

Optional[bool]

session_length_web_in_days
Type

Optional[bool]

session_length_mobile_in_days
Type

Optional[bool]

session_length_sso_in_days
Type

Optional[bool]

session_cache_in_minutes
Type

Optional[bool]

websocket_secure_port
Type

Optional[bool]

websocket_port
Type

Optional[bool]

webserver_mode
Type

Optional[bool]

enable_custom_emoji
Type

Optional[bool]

restrict_custom_emoji_creation
Type

Optional[bool]

allow_cors_from: Optional[bool]
connection_security: Optional[bool]
enable_commands: Optional[bool]
enable_custom_emoji: Optional[bool]
enable_developer: Optional[bool]
enable_incoming_webhooks: Optional[bool]
enable_insecure_outgoing_connections: Optional[bool]
enable_multifactor_authentication: Optional[bool]
enable_oauth_service_provider: Optional[bool]
enable_only_admin_integrations: Optional[bool]
enable_outgoing_webhooks: Optional[bool]
enable_post_icon_override: Optional[bool]
enable_post_username_override: Optional[bool]
enable_security_fix_alert: Optional[bool]
enable_testing: Optional[bool]
enforce_multifactor_authentication: Optional[bool]
forward80_to443: Optional[bool]
google_developer_key: Optional[bool]
lets_encrypt_certificate_cache_file: Optional[bool]
listen_address: Optional[bool]
maximum_login_attempts: Optional[bool]
read_timeout: Optional[bool]
restrict_custom_emoji_creation: Optional[bool]
segment_developer_key: Optional[bool]
session_cache_in_minutes: Optional[bool]
session_length_mobile_in_days: Optional[bool]
session_length_sso_in_days: Optional[bool]
session_length_web_in_days: Optional[bool]
site_url: Optional[bool]
tls_cert_file: Optional[bool]
tls_key_file: Optional[bool]
use_lets_encrypt: Optional[bool]
webserver_mode: Optional[bool]
websocket_port: Optional[bool]
websocket_secure_port: Optional[bool]
write_timeout: Optional[bool]
class SqlSettings(*, DriverName: bool = None, DataSource: bool = None, DataSourceReplicas: bool = None, MaxIdleConns: bool = None, MaxOpenConns: bool = None, Trace: bool = None, AtRestEncryptKey: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

driver_name
Type

Optional[bool]

data_source
Type

Optional[bool]

data_source_replicas
Type

Optional[bool]

max_idle_conns
Type

Optional[bool]

max_open_conns
Type

Optional[bool]

trace
Type

Optional[bool]

at_rest_encrypt_key
Type

Optional[bool]

at_rest_encrypt_key: Optional[bool]
data_source: Optional[bool]
data_source_replicas: Optional[bool]
driver_name: Optional[bool]
max_idle_conns: Optional[bool]
max_open_conns: Optional[bool]
trace: Optional[bool]
class SupportSettings(*, TermsOfServiceLink: bool = None, PrivacyPolicyLink: bool = None, AboutLink: bool = None, HelpLink: bool = None, ReportAProblemLink: bool = None, SupportEmail: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

Type

Optional[bool]

Type

Optional[bool]

Type

Optional[bool]

Type

Optional[bool]

Type

Optional[bool]

support_email
Type

Optional[bool]

about_link: Optional[bool]
help_link: Optional[bool]
privacy_policy_link: Optional[bool]
report_aproblem_link: Optional[bool]
support_email: Optional[bool]
terms_of_service_link: Optional[bool]
class TeamSettings(*, SiteName: bool = None, MaxUsersPerTeam: bool = None, EnableTeamCreation: bool = None, EnableUserCreation: bool = None, EnableOpenServer: bool = None, RestrictCreationToDomains: bool = None, EnableCustomBrand: bool = None, CustomBrandText: bool = None, CustomDescriptionText: bool = None, RestrictDirectMessage: bool = None, RestrictTeamInvite: bool = None, RestrictPublicChannelManagement: bool = None, RestrictPrivateChannelManagement: bool = None, RestrictPublicChannelCreation: bool = None, RestrictPrivateChannelCreation: bool = None, RestrictPublicChannelDeletion: bool = None, RestrictPrivateChannelDeletion: bool = None, UserStatusAwayTimeout: bool = None, MaxChannelsPerTeam: bool = None, MaxNotificationsPerChannel: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

site_name
Type

Optional[bool]

max_users_per_team
Type

Optional[bool]

enable_team_creation
Type

Optional[bool]

enable_user_creation
Type

Optional[bool]

enable_open_server
Type

Optional[bool]

restrict_creation_to_domains
Type

Optional[bool]

enable_custom_brand
Type

Optional[bool]

custom_brand_text
Type

Optional[bool]

custom_description_text
Type

Optional[bool]

restrict_direct_message
Type

Optional[bool]

restrict_team_invite
Type

Optional[bool]

restrict_public_channel_management
Type

Optional[bool]

restrict_private_channel_management
Type

Optional[bool]

restrict_public_channel_creation
Type

Optional[bool]

restrict_private_channel_creation
Type

Optional[bool]

restrict_public_channel_deletion
Type

Optional[bool]

restrict_private_channel_deletion
Type

Optional[bool]

user_status_away_timeout
Type

Optional[bool]

max_channels_per_team
Type

Optional[bool]

max_notifications_per_channel
Type

Optional[bool]

custom_brand_text: Optional[bool]
custom_description_text: Optional[bool]
enable_custom_brand: Optional[bool]
enable_open_server: Optional[bool]
enable_team_creation: Optional[bool]
enable_user_creation: Optional[bool]
max_channels_per_team: Optional[bool]
max_notifications_per_channel: Optional[bool]
max_users_per_team: Optional[bool]
restrict_creation_to_domains: Optional[bool]
restrict_direct_message: Optional[bool]
restrict_private_channel_creation: Optional[bool]
restrict_private_channel_deletion: Optional[bool]
restrict_private_channel_management: Optional[bool]
restrict_public_channel_creation: Optional[bool]
restrict_public_channel_deletion: Optional[bool]
restrict_public_channel_management: Optional[bool]
restrict_team_invite: Optional[bool]
site_name: Optional[bool]
user_status_away_timeout: Optional[bool]
analytics_settings: Optional[matterapi.models.EnvironmentConfig.AnalyticsSettings]
cluster_settings: Optional[matterapi.models.EnvironmentConfig.ClusterSettings]
compliance_settings: Optional[matterapi.models.EnvironmentConfig.ComplianceSettings]
email_settings: Optional[matterapi.models.EnvironmentConfig.EmailSettings]
file_settings: Optional[matterapi.models.EnvironmentConfig.FileSettings]
git_lab_settings: Optional[matterapi.models.EnvironmentConfig.GitLabSettings]
google_settings: Optional[matterapi.models.EnvironmentConfig.GoogleSettings]
ldap_settings: Optional[matterapi.models.EnvironmentConfig.LdapSettings]
localization_settings: Optional[matterapi.models.EnvironmentConfig.LocalizationSettings]
log_settings: Optional[matterapi.models.EnvironmentConfig.LogSettings]
metrics_settings: Optional[matterapi.models.EnvironmentConfig.MetricsSettings]
native_app_settings: Optional[matterapi.models.EnvironmentConfig.NativeAppSettings]
office365_settings: Optional[matterapi.models.EnvironmentConfig.Office365Settings]
password_settings: Optional[matterapi.models.EnvironmentConfig.PasswordSettings]
privacy_settings: Optional[matterapi.models.EnvironmentConfig.PrivacySettings]
rate_limit_settings: Optional[matterapi.models.EnvironmentConfig.RateLimitSettings]
saml_settings: Optional[matterapi.models.EnvironmentConfig.SamlSettings]
service_settings: Optional[matterapi.models.EnvironmentConfig.ServiceSettings]
sql_settings: Optional[matterapi.models.EnvironmentConfig.SqlSettings]
support_settings: Optional[matterapi.models.EnvironmentConfig.SupportSettings]
team_settings: Optional[matterapi.models.EnvironmentConfig.TeamSettings]
class matterapi.models.ExecuteCommandJsonBody(*, channel_id: str, command: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

channel_id

Channel Id where the command will execute

Type

str

command

The slash command to execute

Type

str

channel_id: str
command: str
class matterapi.models.FileInfo(*, id: str = None, user_id: str = None, post_id: str = None, create_at: int = None, update_at: int = None, delete_at: int = None, name: str = None, extension: str = None, size: int = None, mime_type: str = None, width: int = None, height: int = None, has_preview_image: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

The unique identifier for this file

Type

Optional[str]

user_id

The ID of the user that uploaded this file

Type

Optional[str]

post_id

If this file is attached to a post, the ID of that post

Type

Optional[str]

create_at

The time in milliseconds a file was created

Type

Optional[int]

update_at

The time in milliseconds a file was last updated

Type

Optional[int]

delete_at

The time in milliseconds a file was deleted

Type

Optional[int]

name

The name of the file

Type

Optional[str]

extension

The extension at the end of the file name

Type

Optional[str]

size

The size of the file in bytes

Type

Optional[int]

mime_type

The MIME type of the file

Type

Optional[str]

width

If this file is an image, the width of the file

Type

Optional[int]

height

If this file is an image, the height of the file

Type

Optional[int]

has_preview_image

If this file is an image, whether or not it has a preview-sized version

Type

Optional[bool]

create_at: Optional[int]
delete_at: Optional[int]
extension: Optional[str]
has_preview_image: Optional[bool]
height: Optional[int]
id: Optional[str]
mime_type: Optional[str]
name: Optional[str]
post_id: Optional[str]
size: Optional[int]
update_at: Optional[int]
user_id: Optional[str]
width: Optional[int]
class matterapi.models.FileInfoList(*, order: List[str] = None, file_infos: matterapi.models.FileInfoList.FileInfos = None, next_file_id: str = None, prev_file_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

order

Example: [‘file_info_id1’, ‘file_info_id2’].

Type

Optional[List[str]]

file_infos
Type

Optional[FileInfos]

next_file_id

The ID of next file info. Not omitted when empty or not relevant.

Type

Optional[str]

prev_file_id

The ID of previous file info. Not omitted when empty or not relevant.

Type

Optional[str]

class FileInfos(*, __root__: Dict[str, matterapi.models.FileInfo], **extra_data: Any)

Bases: matterapi.types.BaseMapping

file_infos: Optional[matterapi.models.FileInfoList.FileInfos]
next_file_id: Optional[str]
order: Optional[List[str]]
prev_file_id: Optional[str]
class matterapi.models.GenerateMfaSecretResponse200(*, secret: str = None, qr_code: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

secret

The MFA secret as a string

Type

Optional[str]

qr_code

A base64 encoded QR code image

Type

Optional[str]

qr_code: Optional[str]
secret: Optional[str]
class matterapi.models.GetDataRetentionPoliciesCountResponse200(*, total_count: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

total_count

The number of granular retention policies.

Type

Optional[int]

total_count: Optional[int]
class matterapi.models.GetFileLinkResponse200(*, link: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

Type

Optional[str]

link: Optional[str]
class matterapi.models.GetGroupStatsResponse200(*, group_id: str = None, total_member_count: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

group_id
Type

Optional[str]

total_member_count
Type

Optional[int]

group_id: Optional[str]
total_member_count: Optional[int]
class matterapi.models.GetGroupUsersResponse200(*, members: List[matterapi.models.User] = None, total_member_count: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

members
Type

Optional[List[User]]

total_member_count
Type

Optional[int]

members: Optional[List[matterapi.models.User]]
total_member_count: Optional[int]
class matterapi.models.GetGroupsAssociatedToChannelsByTeamResponse200(**extra_data: Any)

Bases: matterapi.types.BaseConfig

class matterapi.models.GetPluginsResponse200(*, active: List[matterapi.models.PluginManifest] = None, inactive: List[matterapi.models.PluginManifest] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

active
Type

Optional[List[PluginManifest]]

inactive
Type

Optional[List[PluginManifest]]

active: Optional[List[matterapi.models.PluginManifest]]
inactive: Optional[List[matterapi.models.PluginManifest]]
class matterapi.models.GetTeamInviteInfoResponse200(*, id: str = None, name: str = None, display_name: str = None, description: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

name
Type

Optional[str]

display_name
Type

Optional[str]

description
Type

Optional[str]

description: Optional[str]
display_name: Optional[str]
id: Optional[str]
name: Optional[str]
class matterapi.models.GetUsersByGroupChannelIdsResponse200(**extra_data: Any)

Bases: matterapi.types.BaseConfig

channel_id
Type

Optional[List[User]]

channel_id: Optional[List[matterapi.models.User]]
class matterapi.models.GlobalDataRetentionPolicy(*, message_deletion_enabled: bool = None, file_deletion_enabled: bool = None, message_retention_cutoff: int = None, file_retention_cutoff: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

message_deletion_enabled

Indicates whether data retention policy deletion of messages is enabled globally.

Type

Optional[bool]

file_deletion_enabled

Indicates whether data retention policy deletion of file attachments is enabled globally.

Type

Optional[bool]

message_retention_cutoff

The current server timestamp before which messages should be deleted.

Type

Optional[int]

file_retention_cutoff

The current server timestamp before which files should be deleted.

Type

Optional[int]

file_deletion_enabled: Optional[bool]
file_retention_cutoff: Optional[int]
message_deletion_enabled: Optional[bool]
message_retention_cutoff: Optional[int]
class matterapi.models.Group(*, id: str = None, name: str = None, display_name: str = None, description: str = None, source: str = None, remote_id: str = None, create_at: int = None, update_at: int = None, delete_at: int = None, has_syncables: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

name
Type

Optional[str]

display_name
Type

Optional[str]

description
Type

Optional[str]

source
Type

Optional[str]

remote_id
Type

Optional[str]

create_at
Type

Optional[int]

update_at
Type

Optional[int]

delete_at
Type

Optional[int]

has_syncables
Type

Optional[bool]

create_at: Optional[int]
delete_at: Optional[int]
description: Optional[str]
display_name: Optional[str]
has_syncables: Optional[bool]
id: Optional[str]
name: Optional[str]
remote_id: Optional[str]
source: Optional[str]
update_at: Optional[int]
class matterapi.models.GroupSyncableChannel(*, channel_id: str = None, group_id: str = None, auto_add: bool = None, create_at: int = None, delete_at: int = None, update_at: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

channel_id
Type

Optional[str]

group_id
Type

Optional[str]

auto_add
Type

Optional[bool]

create_at
Type

Optional[int]

delete_at
Type

Optional[int]

update_at
Type

Optional[int]

auto_add: Optional[bool]
channel_id: Optional[str]
create_at: Optional[int]
delete_at: Optional[int]
group_id: Optional[str]
update_at: Optional[int]
class matterapi.models.GroupSyncableChannels(*, channel_id: str = None, channel_display_name: str = None, channel_type: str = None, team_id: str = None, team_display_name: str = None, team_type: str = None, group_id: str = None, auto_add: bool = None, create_at: int = None, delete_at: int = None, update_at: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

channel_id
Type

Optional[str]

channel_display_name
Type

Optional[str]

channel_type
Type

Optional[str]

team_id
Type

Optional[str]

team_display_name
Type

Optional[str]

team_type
Type

Optional[str]

group_id
Type

Optional[str]

auto_add
Type

Optional[bool]

create_at
Type

Optional[int]

delete_at
Type

Optional[int]

update_at
Type

Optional[int]

auto_add: Optional[bool]
channel_display_name: Optional[str]
channel_id: Optional[str]
channel_type: Optional[str]
create_at: Optional[int]
delete_at: Optional[int]
group_id: Optional[str]
team_display_name: Optional[str]
team_id: Optional[str]
team_type: Optional[str]
update_at: Optional[int]
class matterapi.models.GroupSyncableTeam(*, team_id: str = None, group_id: str = None, auto_add: bool = None, create_at: int = None, delete_at: int = None, update_at: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

team_id
Type

Optional[str]

group_id
Type

Optional[str]

auto_add
Type

Optional[bool]

create_at
Type

Optional[int]

delete_at
Type

Optional[int]

update_at
Type

Optional[int]

auto_add: Optional[bool]
create_at: Optional[int]
delete_at: Optional[int]
group_id: Optional[str]
team_id: Optional[str]
update_at: Optional[int]
class matterapi.models.GroupSyncableTeams(*, team_id: str = None, team_display_name: str = None, team_type: str = None, group_id: str = None, auto_add: bool = None, create_at: int = None, delete_at: int = None, update_at: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

team_id
Type

Optional[str]

team_display_name
Type

Optional[str]

team_type
Type

Optional[str]

group_id
Type

Optional[str]

auto_add
Type

Optional[bool]

create_at
Type

Optional[int]

delete_at
Type

Optional[int]

update_at
Type

Optional[int]

auto_add: Optional[bool]
create_at: Optional[int]
delete_at: Optional[int]
group_id: Optional[str]
team_display_name: Optional[str]
team_id: Optional[str]
team_type: Optional[str]
update_at: Optional[int]
class matterapi.models.GroupWithSchemeAdmin(*, group: matterapi.models.Group = None, scheme_admin: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

group augmented with scheme admin information

group
Type

Optional[Group]

scheme_admin
Type

Optional[bool]

group: Optional[matterapi.models.Group]
scheme_admin: Optional[bool]
class matterapi.models.GroupsAssociatedToChannels(*, __root__: Dict[str, List[matterapi.models.GroupWithSchemeAdmin]], **extra_data: Any)

Bases: matterapi.types.BaseMapping

a map of channel id(s) to the set of groups that constrain the corresponding channel in a team

class matterapi.models.ImportTeamMultipartData(*, file: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any] = None, filesize: int, importFrom: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

file

A file to be uploaded in zip format.

Type

File

filesize

The size of the zip file to be imported.

Type

int

import_from

String that defines from which application the team was exported to be imported into Mattermost.

Type

str

file: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any]
filesize: int
import_from: str
class matterapi.models.ImportTeamResponse200(*, results: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

results
Type

Optional[str]

results: Optional[str]
class matterapi.models.IncomingWebhook(*, id: str = None, create_at: int = None, update_at: int = None, delete_at: int = None, channel_id: str = None, description: str = None, display_name: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

The unique identifier for this incoming webhook

Type

Optional[str]

create_at

The time in milliseconds a incoming webhook was created

Type

Optional[int]

update_at

The time in milliseconds a incoming webhook was last updated

Type

Optional[int]

delete_at

The time in milliseconds a incoming webhook was deleted

Type

Optional[int]

channel_id

The ID of a public channel or private group that receives the webhook payloads

Type

Optional[str]

description

The description for this incoming webhook

Type

Optional[str]

display_name

The display name for this incoming webhook

Type

Optional[str]

channel_id: Optional[str]
create_at: Optional[int]
delete_at: Optional[int]
description: Optional[str]
display_name: Optional[str]
id: Optional[str]
update_at: Optional[int]
class matterapi.models.InstallMarketplacePluginJsonBody(*, id: str, version: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

The ID of the plugin to install.

Type

str

version

The version of the plugin to install.

Type

Optional[str]

id: str
version: Optional[str]
class matterapi.models.IntegrityCheckResult(*, data: matterapi.models.RelationalIntegrityCheckData = None, err: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

an object with the result of the integrity check.

data

an object containing the results of a relational integrity check.

Type

Optional[RelationalIntegrityCheckData]

err

a string value set in case of error.

Type

Optional[str]

data: Optional[matterapi.models.RelationalIntegrityCheckData]
err: Optional[str]
class matterapi.models.InviteGuestsToTeamJsonBody(*, emails: List[str], channels: List[str], message: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

emails

List of emails

Type

List[str]

channels

List of channel ids

Type

List[str]

message

Message to include in the invite

Type

Optional[str]

channels: List[str]
emails: List[str]
message: Optional[str]
class matterapi.models.Invoice(*, id: str = None, number: str = None, create_at: int = None, total: int = None, tax: int = None, status: str = None, period_start: int = None, period_end: int = None, subscription_id: str = None, item: List[matterapi.models.InvoiceLineItem] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

number
Type

Optional[str]

create_at
Type

Optional[int]

total
Type

Optional[int]

tax
Type

Optional[int]

status
Type

Optional[str]

period_start
Type

Optional[int]

period_end
Type

Optional[int]

subscription_id
Type

Optional[str]

item
Type

Optional[List[InvoiceLineItem]]

create_at: Optional[int]
id: Optional[str]
item: Optional[List[matterapi.models.InvoiceLineItem]]
number: Optional[str]
period_end: Optional[int]
period_start: Optional[int]
status: Optional[str]
subscription_id: Optional[str]
tax: Optional[int]
total: Optional[int]
class matterapi.models.InvoiceLineItem(*, price_id: str = None, total: int = None, quantity: int = None, price_per_unit: int = None, description: str = None, metadata: List[str] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

price_id
Type

Optional[str]

total
Type

Optional[int]

quantity
Type

Optional[int]

price_per_unit
Type

Optional[int]

description
Type

Optional[str]

metadata
Type

Optional[List[str]]

description: Optional[str]
metadata: Optional[List[str]]
price_id: Optional[str]
price_per_unit: Optional[int]
quantity: Optional[int]
total: Optional[int]
class matterapi.models.Job(*, id: str = None, type: str = None, create_at: int = None, start_at: int = None, last_activity_at: int = None, status: str = None, progress: int = None, data: matterapi.models.Job.Data = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

The unique id of the job

Type

Optional[str]

type

The type of job

Type

Optional[str]

create_at

The time at which the job was created

Type

Optional[int]

start_at

The time at which the job was started

Type

Optional[int]

last_activity_at

The last time at which the job had activity

Type

Optional[int]

status

The status of the job

Type

Optional[str]

progress

The progress (as a percentage) of the job

Type

Optional[int]

data

A freeform data field containing additional information about the job

Type

Optional[Data]

class Data(**extra_data: Any)

Bases: matterapi.types.BaseConfig

A freeform data field containing additional information about the job

create_at: Optional[int]
data: Optional[matterapi.models.Job.Data]
id: Optional[str]
last_activity_at: Optional[int]
progress: Optional[int]
start_at: Optional[int]
status: Optional[str]
type: Optional[str]
class matterapi.models.LDAPGroup(*, has_syncables: bool = None, mattermost_group_id: str = None, primary_key: str = None, name: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

A LDAP group

has_syncables
Type

Optional[bool]

mattermost_group_id
Type

Optional[str]

primary_key
Type

Optional[str]

name
Type

Optional[str]

has_syncables: Optional[bool]
mattermost_group_id: Optional[str]
name: Optional[str]
primary_key: Optional[str]
class matterapi.models.LDAPGroupsPaged(*, count: float = None, groups: List[matterapi.models.LDAPGroup] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

A paged list of LDAP groups

count

Total number of groups

Type

Optional[float]

groups
Type

Optional[List[LDAPGroup]]

count: Optional[float]
groups: Optional[List[matterapi.models.LDAPGroup]]

Bases: matterapi.types.BaseConfig

License renewal link

Type

Optional[str]

renewal_link: Optional[str]
class matterapi.models.LoginByCwsTokenJsonBody(*, login_id: str = None, cws_token: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

login_id
Type

Optional[str]

cws_token
Type

Optional[str]

cws_token: Optional[str]
login_id: Optional[str]
class matterapi.models.LoginJsonBody(*, id: str = None, login_id: str = None, token: str = None, device_id: str = None, ldap_only: bool = None, password: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

login_id
Type

Optional[str]

token
Type

Optional[str]

device_id
Type

Optional[str]

ldap_only
Type

Optional[bool]

password

The password used for email authentication.

Type

Optional[str]

device_id: Optional[str]
id: Optional[str]
ldap_only: Optional[bool]
login_id: Optional[str]
password: Optional[str]
token: Optional[str]
class matterapi.models.MarketplacePlugin(*, homepage_url: str = None, icon_data: str = None, download_url: str = None, release_notes_url: str = None, labels: List[str] = None, signature: str = None, manifest: matterapi.models.PluginManifest = None, installed_version: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

homepage_url

URL that leads to the homepage of the plugin.

Type

Optional[str]

icon_data

Base64 encoding of a plugin icon SVG.

Type

Optional[str]

download_url

URL to download the plugin.

Type

Optional[str]

release_notes_url

URL that leads to the release notes of the plugin.

Type

Optional[str]

labels

A list of the plugin labels.

Type

Optional[List[str]]

signature

Base64 encoded signature of the plugin.

Type

Optional[str]

manifest
Type

Optional[PluginManifest]

installed_version

Version number of the already installed plugin, if any.

Type

Optional[str]

download_url: Optional[str]
homepage_url: Optional[str]
icon_data: Optional[str]
installed_version: Optional[str]
labels: Optional[List[str]]
manifest: Optional[matterapi.models.PluginManifest]
release_notes_url: Optional[str]
signature: Optional[str]
class matterapi.models.MigrateAuthToLdapJsonBody(*, from: str, match_field: str, force: bool, **extra_data: typing.Any)

Bases: matterapi.types.BaseConfig

from_

The current authentication type for the matched users.

Type

str

match_field

Foreign user field name to match.

Type

str

force
Type

bool

force: bool
from_: str
match_field: str
class matterapi.models.MigrateAuthToSamlJsonBody(*, from: str, matches: matterapi.models.MigrateAuthToSamlJsonBody.Matches, auto: bool, **extra_data: typing.Any)

Bases: matterapi.types.BaseConfig

from_

The current authentication type for the matched users.

Type

str

matches

Users map.

Type

Matches

auto
Type

bool

class Matches(**extra_data: Any)

Bases: matterapi.types.BaseConfig

Users map.

auto: bool
from_: str
matches: matterapi.models.MigrateAuthToSamlJsonBody.Matches
class matterapi.models.MigrateIdLdapJsonBody(*, toAttribute: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

to_attribute

New IdAttribute value

Type

str

to_attribute: str
class matterapi.models.MoveChannelJsonBody(*, team_id: str, force: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

team_id
Type

str

force

Remove members those are not member of target team before moving the channel.

Type

Optional[bool]

force: Optional[bool]
team_id: str
class matterapi.models.MoveCommandJsonBody(*, team_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

team_id

Destination teamId

Type

Optional[str]

team_id: Optional[str]
class matterapi.models.Notice(*, id: str = None, sysAdminOnly: bool = None, teamAdminOnly: bool = None, action: str = None, actionParam: str = None, actionText: str = None, description: str = None, image: str = None, title: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

Notice ID

Type

Optional[str]

sys_admin_only

Does this notice apply only to sysadmins

Type

Optional[bool]

team_admin_only

Does this notice apply only to team admins

Type

Optional[bool]

action

Optional action to perform on action button click. (defaults to closing the notice)

Type

Optional[str]

action_param

Optional action parameter. Example: {“action”: “url”, actionParam: “/console/some-page”}

Type

Optional[str]

action_text

Optional override for the action button text (defaults to OK)

Type

Optional[str]

description

Notice content. Use {{Mattermost}} instead of plain text to support white-labeling. Text supports Markdown.

Type

Optional[str]

image

URL of image to display

Type

Optional[str]

title

Notice title. Use {{Mattermost}} instead of plain text to support white-labeling. Text supports Markdown.

Type

Optional[str]

action: Optional[str]
action_param: Optional[str]
action_text: Optional[str]
description: Optional[str]
id: Optional[str]
image: Optional[str]
sys_admin_only: Optional[bool]
team_admin_only: Optional[bool]
title: Optional[str]
class matterapi.models.OAuthApp(*, id: str = None, client_secret: str = None, name: str = None, description: str = None, icon_url: str = None, callback_urls: List[str] = None, homepage: str = None, is_trusted: bool = None, create_at: int = None, update_at: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

The client id of the application

Type

Optional[str]

client_secret

The client secret of the application

Type

Optional[str]

name

The name of the client application

Type

Optional[str]

description

A short description of the application

Type

Optional[str]

icon_url

A URL to an icon to display with the application

Type

Optional[str]

callback_urls

A list of callback URLs for the appliation

Type

Optional[List[str]]

homepage

A link to the website of the application

Type

Optional[str]

is_trusted

Set this to true to skip asking users for permission

Type

Optional[bool]

create_at

The time of registration for the application

Type

Optional[int]

update_at

The last time of update for the application

Type

Optional[int]

callback_urls: Optional[List[str]]
client_secret: Optional[str]
create_at: Optional[int]
description: Optional[str]
homepage: Optional[str]
icon_url: Optional[str]
id: Optional[str]
is_trusted: Optional[bool]
name: Optional[str]
update_at: Optional[int]
class matterapi.models.OpenGraph(*, type: str = None, url: str = None, title: str = None, description: str = None, determiner: str = None, site_name: str = None, locale: str = None, locales_alternate: List[str] = None, images: List[matterapi.models.OpenGraphImagesItem] = None, videos: List[matterapi.models.OpenGraphVideosItem] = None, audios: List[matterapi.models.OpenGraphAudiosItem] = None, article: matterapi.models.OpenGraph.Article = None, book: matterapi.models.OpenGraph.Book = None, profile: matterapi.models.OpenGraph.Profile = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

OpenGraph metadata of a webpage

type
Type

Optional[str]

url
Type

Optional[str]

title
Type

Optional[str]

description
Type

Optional[str]

determiner
Type

Optional[str]

site_name
Type

Optional[str]

locale
Type

Optional[str]

locales_alternate
Type

Optional[List[str]]

images
Type

Optional[List[OpenGraphImagesItem]]

videos
Type

Optional[List[OpenGraphVideosItem]]

audios
Type

Optional[List[OpenGraphAudiosItem]]

article

Article object used in OpenGraph metadata of a webpage, if type is article

Type

Optional[Article]

book

Book object used in OpenGraph metadata of a webpage, if type is book

Type

Optional[Book]

profile
Type

Optional[Profile]

class Article(*, published_time: str = None, modified_time: str = None, expiration_time: str = None, section: str = None, tags: List[str] = None, authors: List[matterapi.models.ArticleAuthorsItem] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

Article object used in OpenGraph metadata of a webpage, if type is article

Attributes:

published_time (Optional[str]): modified_time (Optional[str]): expiration_time (Optional[str]): section (Optional[str]): tags (Optional[List[str]]): authors (Optional[List[ArticleAuthorsItem]]):

authors: Optional[List[matterapi.models.ArticleAuthorsItem]]
expiration_time: Optional[str]
modified_time: Optional[str]
published_time: Optional[str]
section: Optional[str]
tags: Optional[List[str]]
class Book(*, isbn: str = None, release_date: str = None, tags: List[str] = None, authors: List[matterapi.models.BookAuthorsItem] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

Book object used in OpenGraph metadata of a webpage, if type is book

isbn
Type

Optional[str]

release_date
Type

Optional[str]

tags
Type

Optional[List[str]]

authors
Type

Optional[List[BookAuthorsItem]]

authors: Optional[List[matterapi.models.BookAuthorsItem]]
isbn: Optional[str]
release_date: Optional[str]
tags: Optional[List[str]]
class Profile(*, first_name: str = None, last_name: str = None, username: str = None, gender: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

first_name
Type

Optional[str]

last_name
Type

Optional[str]

username
Type

Optional[str]

gender
Type

Optional[str]

first_name: Optional[str]
gender: Optional[str]
last_name: Optional[str]
username: Optional[str]
article: Optional[matterapi.models.OpenGraph.Article]
audios: Optional[List[matterapi.models.OpenGraphAudiosItem]]
book: Optional[matterapi.models.OpenGraph.Book]
description: Optional[str]
determiner: Optional[str]
images: Optional[List[matterapi.models.OpenGraphImagesItem]]
locale: Optional[str]
locales_alternate: Optional[List[str]]
profile: Optional[matterapi.models.OpenGraph.Profile]
site_name: Optional[str]
title: Optional[str]
type: Optional[str]
url: Optional[str]
videos: Optional[List[matterapi.models.OpenGraphVideosItem]]
class matterapi.models.OpenGraphAudiosItem(*, url: str = None, secure_url: str = None, type: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

Audio object used in OpenGraph metadata of a webpage

url
Type

Optional[str]

secure_url
Type

Optional[str]

type
Type

Optional[str]

secure_url: Optional[str]
type: Optional[str]
url: Optional[str]
class matterapi.models.OpenGraphImagesItem(*, url: str = None, secure_url: str = None, type: str = None, width: int = None, height: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

Image object used in OpenGraph metadata of a webpage

url
Type

Optional[str]

secure_url
Type

Optional[str]

type
Type

Optional[str]

width
Type

Optional[int]

height
Type

Optional[int]

height: Optional[int]
secure_url: Optional[str]
type: Optional[str]
url: Optional[str]
width: Optional[int]
class matterapi.models.OpenGraphJsonBody(*, url: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

url

The URL to get Open Graph Metadata.

Type

str

url: str
class matterapi.models.OpenGraphVideosItem(*, url: str = None, secure_url: str = None, type: str = None, width: int = None, height: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

Video object used in OpenGraph metadata of a webpage

url
Type

Optional[str]

secure_url
Type

Optional[str]

type
Type

Optional[str]

width
Type

Optional[int]

height
Type

Optional[int]

height: Optional[int]
secure_url: Optional[str]
type: Optional[str]
url: Optional[str]
width: Optional[int]
class matterapi.models.OpenInteractiveDialogJsonBody(*, trigger_id: str, url: str, dialog: matterapi.models.OpenInteractiveDialogJsonBody.Dialog, **extra_data: Any)

Bases: matterapi.types.BaseConfig

trigger_id

Trigger ID provided by other action

Type

str

url

The URL to send the submitted dialog payload to

Type

str

dialog

Post object to create

Type

Dialog

class Dialog(*, title: str, elements: List[matterapi.models.DialogElementsItem], callback_id: str = None, introduction_text: str = None, submit_label: str = None, notify_on_cancel: bool = None, state: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

Post object to create

title

Title of the dialog

Type

str

elements

Input elements, see https://docs.mattermost.com/developer/interactive-dialogs.html#elements

Type

List[DialogElementsItem]

callback_id

Set an ID that will be included when the dialog is submitted

Type

Optional[str]

introduction_text

Markdown formatted introductory paragraph

Type

Optional[str]

submit_label

Label on the submit button

Type

Optional[str]

notify_on_cancel

Set true to receive payloads when user cancels a dialog

Type

Optional[bool]

state

Set some state to be echoed back with the dialog submission

Type

Optional[str]

callback_id: Optional[str]
elements: List[matterapi.models.DialogElementsItem]
introduction_text: Optional[str]
notify_on_cancel: Optional[bool]
state: Optional[str]
submit_label: Optional[str]
title: str
dialog: matterapi.models.OpenInteractiveDialogJsonBody.Dialog
trigger_id: str
url: str
class matterapi.models.OrderedSidebarCategories(*, order: List[str] = None, categories: List[matterapi.models.SidebarCategoryWithChannels] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

List of user’s categories with their channels

order
Type

Optional[List[str]]

categories
Type

Optional[List[SidebarCategoryWithChannels]]

categories: Optional[List[matterapi.models.SidebarCategoryWithChannels]]
order: Optional[List[str]]
class matterapi.models.OrphanedRecord(*, parent_id: str = None, child_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

an object containing information about an orphaned record.

parent_id

the id of the parent relation (table) entry.

Type

Optional[str]

child_id

the id of the child relation (table) entry.

Type

Optional[str]

child_id: Optional[str]
parent_id: Optional[str]
class matterapi.models.OutgoingWebhook(*, id: str = None, create_at: int = None, update_at: int = None, delete_at: int = None, creator_id: str = None, team_id: str = None, channel_id: str = None, description: str = None, display_name: str = None, trigger_words: List[str] = None, trigger_when: int = None, callback_urls: List[str] = None, content_type: str = 'application/x-www-form-urlencoded', **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

The unique identifier for this outgoing webhook

Type

Optional[str]

create_at

The time in milliseconds a outgoing webhook was created

Type

Optional[int]

update_at

The time in milliseconds a outgoing webhook was last updated

Type

Optional[int]

delete_at

The time in milliseconds a outgoing webhook was deleted

Type

Optional[int]

creator_id

The Id of the user who created the webhook

Type

Optional[str]

team_id

The ID of the team that the webhook watchs

Type

Optional[str]

channel_id

The ID of a public channel that the webhook watchs

Type

Optional[str]

description

The description for this outgoing webhook

Type

Optional[str]

display_name

The display name for this outgoing webhook

Type

Optional[str]

trigger_words

List of words for the webhook to trigger on

Type

Optional[List[str]]

trigger_when

When to trigger the webhook, 0 when a trigger word is present at all and 1 if the message starts with a trigger word

Type

Optional[int]

callback_urls

The URLs to POST the payloads to when the webhook is triggered

Type

Optional[List[str]]

content_type

The format to POST the data in, either application/json or application/x-www-form-urlencoded

Default: ‘application/x-www-form-urlencoded’.

Type

Optional[str]

callback_urls: Optional[List[str]]
channel_id: Optional[str]
content_type: Optional[str]
create_at: Optional[int]
creator_id: Optional[str]
delete_at: Optional[int]
description: Optional[str]
display_name: Optional[str]
id: Optional[str]
team_id: Optional[str]
trigger_when: Optional[int]
trigger_words: Optional[List[str]]
update_at: Optional[int]
class matterapi.models.PatchBotJsonBody(*, username: str, display_name: str = None, description: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

username
Type

str

display_name
Type

Optional[str]

description
Type

Optional[str]

description: Optional[str]
display_name: Optional[str]
username: str
class matterapi.models.PatchChannelJsonBody(*, name: str = None, display_name: str = None, purpose: str = None, header: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

name

The unique handle for the channel, will be present in the channel URL

Type

Optional[str]

display_name

The non-unique UI name for the channel

Type

Optional[str]

purpose

A short description of the purpose of the channel

Type

Optional[str]

header

Markdown-formatted text to display in the header of the channel

Type

Optional[str]

display_name: Optional[str]
header: Optional[str]
name: Optional[str]
purpose: Optional[str]
class matterapi.models.PatchGroupJsonBody(*, name: str = None, display_name: str = None, description: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

name
Type

Optional[str]

display_name
Type

Optional[str]

description
Type

Optional[str]

description: Optional[str]
display_name: Optional[str]
name: Optional[str]
class matterapi.models.PatchGroupSyncableForChannelJsonBody(*, auto_add: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

auto_add
Type

Optional[bool]

auto_add: Optional[bool]
class matterapi.models.PatchGroupSyncableForTeamJsonBody(*, auto_add: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

auto_add
Type

Optional[bool]

auto_add: Optional[bool]
class matterapi.models.PatchPostJsonBody(*, is_pinned: bool = None, message: str = None, file_ids: List[str] = None, has_reactions: bool = None, props: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

is_pinned

Set to true to pin the post to the channel it is in

Type

Optional[bool]

message

The message text of the post

Type

Optional[str]

file_ids

The list of files attached to this post

Type

Optional[List[str]]

has_reactions

Set to true if the post has reactions to it

Type

Optional[bool]

props

A general JSON property bag to attach to the post

Type

Optional[str]

file_ids: Optional[List[str]]
has_reactions: Optional[bool]
is_pinned: Optional[bool]
message: Optional[str]
props: Optional[str]
class matterapi.models.PatchRoleJsonBody(*, permissions: List[str] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

permissions

The permissions the role should grant.

Type

Optional[List[str]]

permissions: Optional[List[str]]
class matterapi.models.PatchSchemeJsonBody(*, name: str = None, description: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

name

The human readable name of the scheme

Type

Optional[str]

description

The description of the scheme

Type

Optional[str]

description: Optional[str]
name: Optional[str]
class matterapi.models.PatchTeamJsonBody(*, display_name: str = None, description: str = None, company_name: str = None, invite_id: str = None, allow_open_invite: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

display_name
Type

Optional[str]

description
Type

Optional[str]

company_name
Type

Optional[str]

invite_id
Type

Optional[str]

allow_open_invite
Type

Optional[bool]

allow_open_invite: Optional[bool]
company_name: Optional[str]
description: Optional[str]
display_name: Optional[str]
invite_id: Optional[str]
class matterapi.models.PatchUserJsonBody(*, email: str = None, username: str = None, first_name: str = None, last_name: str = None, nickname: str = None, locale: str = None, position: str = None, props: matterapi.models.PatchUserJsonBody.Props = None, notify_props: matterapi.models.UserNotifyProps = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

email
Type

Optional[str]

username
Type

Optional[str]

first_name
Type

Optional[str]

last_name
Type

Optional[str]

nickname
Type

Optional[str]

locale
Type

Optional[str]

position
Type

Optional[str]

props
Type

Optional[Props]

notify_props
Type

Optional[UserNotifyProps]

class Props(**extra_data: Any)

Bases: matterapi.types.BaseConfig

email: Optional[str]
first_name: Optional[str]
last_name: Optional[str]
locale: Optional[str]
nickname: Optional[str]
notify_props: Optional[matterapi.models.UserNotifyProps]
position: Optional[str]
props: Optional[matterapi.models.PatchUserJsonBody.Props]
username: Optional[str]
class matterapi.models.PaymentMethod(*, type: str = None, last_four: int = None, exp_month: int = None, exp_year: int = None, card_brand: str = None, name: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

type
Type

Optional[str]

last_four
Type

Optional[int]

exp_month
Type

Optional[int]

exp_year
Type

Optional[int]

card_brand
Type

Optional[str]

name
Type

Optional[str]

card_brand: Optional[str]
exp_month: Optional[int]
exp_year: Optional[int]
last_four: Optional[int]
name: Optional[str]
type: Optional[str]
class matterapi.models.PaymentSetupIntent(*, id: str = None, client_secret: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

client_secret
Type

Optional[str]

client_secret: Optional[str]
id: Optional[str]
class matterapi.models.PluginManifest(*, id: str = None, name: str = None, description: str = None, version: str = None, min_server_version: str = None, backend: matterapi.models.PluginManifest.Backend = None, server: matterapi.models.PluginManifest.Server = None, webapp: matterapi.models.PluginManifest.Webapp = None, settings_schema: matterapi.models.PluginManifest.SettingsSchema = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

Globally unique identifier that represents the plugin.

Type

Optional[str]

name

Name of the plugin.

Type

Optional[str]

description

Description of what the plugin is and does.

Type

Optional[str]

version

Version number of the plugin.

Type

Optional[str]

min_server_version

The minimum Mattermost server version required for the plugin.

Available as server version 5.6.

Type

Optional[str]

backend

Deprecated in Mattermost 5.2 release.

Type

Optional[Backend]

server
Type

Optional[Server]

webapp
Type

Optional[Webapp]

settings_schema

Settings schema used to define the System Console UI for the plugin.

Type

Optional[SettingsSchema]

class Backend(*, executable: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

Deprecated in Mattermost 5.2 release.

executable

Path to the executable binary.

Type

Optional[str]

executable: Optional[str]
class Server(*, executables: matterapi.models.PluginManifest.Server.Executables = None, executable: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

executables

Paths to executable binaries, specifying multiple entry points for different platforms when bundled together in a single plugin.

Type

Optional[Executables]

executable

Path to the executable binary.

Type

Optional[str]

class Executables(**extra_data: Any)

Bases: matterapi.types.BaseConfig

Paths to executable binaries, specifying multiple entry points for different platforms when bundled together in a single plugin.

Attributes:

linux_amd64 (Optional[str]): darwin_amd64 (Optional[str]): windows_amd64 (Optional[str]):

darwin_amd64: Optional[str]
linux_amd64: Optional[str]
windows_amd64: Optional[str]
executable: Optional[str]
executables: Optional[matterapi.models.PluginManifest.Server.Executables]
class SettingsSchema(**extra_data: Any)

Bases: matterapi.types.BaseConfig

Settings schema used to define the System Console UI for the plugin.

class Webapp(*, bundle_path: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

bundle_path

Path to the webapp JavaScript bundle.

Type

Optional[str]

bundle_path: Optional[str]
backend: Optional[matterapi.models.PluginManifest.Backend]
description: Optional[str]
id: Optional[str]
min_server_version: Optional[str]
name: Optional[str]
server: Optional[matterapi.models.PluginManifest.Server]
settings_schema: Optional[matterapi.models.PluginManifest.SettingsSchema]
version: Optional[str]
webapp: Optional[matterapi.models.PluginManifest.Webapp]
class matterapi.models.PluginManifestWebapp(*, id: str = None, version: str = None, webapp: matterapi.models.PluginManifestWebapp.Webapp = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

Globally unique identifier that represents the plugin.

Type

Optional[str]

version

Version number of the plugin.

Type

Optional[str]

webapp
Type

Optional[Webapp]

class Webapp(*, bundle_path: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

bundle_path

Path to the webapp JavaScript bundle.

Type

Optional[str]

bundle_path: Optional[str]
id: Optional[str]
version: Optional[str]
webapp: Optional[matterapi.models.PluginManifestWebapp.Webapp]
class matterapi.models.PluginStatus(*, plugin_id: str = None, name: str = None, description: str = None, version: str = None, cluster_id: str = None, plugin_path: str = None, state: matterapi.enums.PluginStatusState = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

plugin_id

Globally unique identifier that represents the plugin.

Type

Optional[str]

name

Name of the plugin.

Type

Optional[str]

description

Description of what the plugin is and does.

Type

Optional[str]

version

Version number of the plugin.

Type

Optional[str]

cluster_id

ID of the cluster in which plugin is running

Type

Optional[str]

plugin_path

Path to the plugin on the server

Type

Optional[str]

state

State of the plugin

Type

Optional[PluginStatusState]

cluster_id: Optional[str]
description: Optional[str]
name: Optional[str]
plugin_id: Optional[str]
plugin_path: Optional[str]
state: Optional[matterapi.enums.PluginStatusState]
version: Optional[str]
class matterapi.models.Post(*, id: str = None, create_at: int = None, update_at: int = None, delete_at: int = None, edit_at: int = None, user_id: str = None, channel_id: str = None, root_id: str = None, original_id: str = None, message: str = None, type: str = None, props: matterapi.models.Post.Props = None, hashtag: str = None, file_ids: List[str] = None, pending_post_id: str = None, metadata: matterapi.models.PostMetadata = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

create_at

The time in milliseconds a post was created

Type

Optional[int]

update_at

The time in milliseconds a post was last updated

Type

Optional[int]

delete_at

The time in milliseconds a post was deleted

Type

Optional[int]

edit_at
Type

Optional[int]

user_id
Type

Optional[str]

channel_id
Type

Optional[str]

root_id
Type

Optional[str]

original_id
Type

Optional[str]

message
Type

Optional[str]

type
Type

Optional[str]

props
Type

Optional[Props]

hashtag
Type

Optional[str]

file_ids
Type

Optional[List[str]]

pending_post_id
Type

Optional[str]

metadata

Additional information used to display a post.

Type

Optional[PostMetadata]

class Props(**extra_data: Any)

Bases: matterapi.types.BaseConfig

channel_id: Optional[str]
create_at: Optional[int]
delete_at: Optional[int]
edit_at: Optional[int]
file_ids: Optional[List[str]]
hashtag: Optional[str]
id: Optional[str]
message: Optional[str]
metadata: Optional[matterapi.models.PostMetadata]
original_id: Optional[str]
pending_post_id: Optional[str]
props: Optional[matterapi.models.Post.Props]
root_id: Optional[str]
type: Optional[str]
update_at: Optional[int]
user_id: Optional[str]
class matterapi.models.PostIdToReactionsMap(*, __root__: Dict[str, List[matterapi.models.Reaction]], **extra_data: Any)

Bases: matterapi.types.BaseMapping

class matterapi.models.PostList(*, order: List[str] = None, posts: matterapi.models.PostList.Posts = None, next_post_id: str = None, prev_post_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

order

Example: [‘post_id1’, ‘post_id12’].

Type

Optional[List[str]]

posts
Type

Optional[Posts]

next_post_id

The ID of next post. Not omitted when empty or not relevant.

Type

Optional[str]

prev_post_id

The ID of previous post. Not omitted when empty or not relevant.

Type

Optional[str]

class Posts(*, __root__: Dict[str, matterapi.models.Post], **extra_data: Any)

Bases: matterapi.types.BaseMapping

next_post_id: Optional[str]
order: Optional[List[str]]
posts: Optional[matterapi.models.PostList.Posts]
prev_post_id: Optional[str]
class matterapi.models.PostListWithSearchMatches(*, order: List[str] = None, posts: matterapi.models.PostListWithSearchMatches.Posts = None, matches: matterapi.models.PostListWithSearchMatches.Matches = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

order

Example: [‘post_id1’, ‘post_id12’].

Type

Optional[List[str]]

posts
Type

Optional[Posts]

matches

A mapping of post IDs to a list of matched terms within the post. This field will only be populated on servers running version 5.1 or greater with Elasticsearch enabled.

Example: {‘post_id1’: [‘search match 1’, ‘search match 2’]}.

Type

Optional[Matches]

class Matches(*, __root__: Dict[str, List[str]], **extra_data: Any)

Bases: matterapi.types.BaseMapping

A mapping of post IDs to a list of matched terms within the post. This field will only be populated on servers running version 5.1 or greater with Elasticsearch enabled.

Example:

{‘post_id1’: [‘search match 1’, ‘search match 2’]}

class Posts(*, __root__: Dict[str, matterapi.models.Post], **extra_data: Any)

Bases: matterapi.types.BaseMapping

matches: Optional[matterapi.models.PostListWithSearchMatches.Matches]
order: Optional[List[str]]
posts: Optional[matterapi.models.PostListWithSearchMatches.Posts]
class matterapi.models.PostLogJsonBody(*, level: str, message: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

level

The error level, ERROR or DEBUG

Type

str

message

Message to send to the server logs

Type

str

level: str
message: str
class matterapi.models.PostLogResponse200(**extra_data: Any)

Bases: matterapi.types.BaseConfig

class matterapi.models.PostMetadata(*, embeds: List[matterapi.models.PostMetadataEmbedsItem] = None, emojis: List[matterapi.models.Emoji] = None, files: List[matterapi.models.FileInfo] = None, images: matterapi.models.PostMetadata.Images = None, reactions: List[matterapi.models.Reaction] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

Additional information used to display a post.

embeds

Information about content embedded in the post including OpenGraph previews, image link previews, and message attachments. This field will be null if the post does not contain embedded content.

Type

Optional[List[PostMetadataEmbedsItem]]

emojis

The custom emojis that appear in this point or have been used in reactions to this post. This field will be null if the post does not contain custom emojis.

Type

Optional[List[Emoji]]

files

The FileInfo objects for any files attached to the post. This field will be null if the post does not have any file attachments.

Type

Optional[List[FileInfo]]

images

An object mapping the URL of an external image to an object containing the dimensions of that image. This field will be null if the post or its embedded content does not reference any external images.

Type

Optional[Images]

reactions

Any reactions made to this point. This field will be null if no reactions have been made to this post.

Type

Optional[List[Reaction]]

class Images(**extra_data: Any)

Bases: matterapi.types.BaseConfig

An object mapping the URL of an external image to an object containing the dimensions of that image. This field will be null if the post or its embedded content does not reference any external images.

embeds: Optional[List[matterapi.models.PostMetadataEmbedsItem]]
emojis: Optional[List[matterapi.models.Emoji]]
files: Optional[List[matterapi.models.FileInfo]]
images: Optional[matterapi.models.PostMetadata.Images]
reactions: Optional[List[matterapi.models.Reaction]]
class matterapi.models.PostMetadataEmbedsItem(*, type: matterapi.enums.PostMetadataEmbedsItemType = None, url: str = None, data: matterapi.models.PostMetadataEmbedsItem.Data = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

type

The type of content that is embedded in this point.

Type

Optional[PostMetadataEmbedsItemType]

url

The URL of the embedded content, if one exists.

Type

Optional[str]

data

Any additional information about the embedded content. Only used at this time to store OpenGraph metadata. This field will be null for non-OpenGraph embeds.

Type

Optional[Data]

class Data(**extra_data: Any)

Bases: matterapi.types.BaseConfig

Any additional information about the embedded content. Only used at this time to store OpenGraph metadata. This field will be null for non-OpenGraph embeds.

data: Optional[matterapi.models.PostMetadataEmbedsItem.Data]
type: Optional[matterapi.enums.PostMetadataEmbedsItemType]
url: Optional[str]
class matterapi.models.PostUserRecentCustomStatusDeleteJsonBody(*, emoji: str, text: str, duration: str, expires_at: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

emoji

Any emoji

Type

str

text

Any custom status text

Type

str

duration

Duration of custom status, can be thirty_minutes, one_hour, four_hours, today, this_week or date_and_time

Type

str

expires_at

The time at which custom status should be expired. It should be in ISO format.

Type

str

duration: str
emoji: str
expires_at: str
text: str
class matterapi.models.Preference(*, user_id: str = None, category: str = None, name: str = None, value: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

user_id

The ID of the user that owns this preference

Type

Optional[str]

category
Type

Optional[str]

name
Type

Optional[str]

value
Type

Optional[str]

category: Optional[str]
name: Optional[str]
user_id: Optional[str]
value: Optional[str]
class matterapi.models.Product(*, id: str = None, name: str = None, description: str = None, price_per_seat: str = None, add_ons: List[matterapi.models.AddOn] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

name
Type

Optional[str]

description
Type

Optional[str]

price_per_seat
Type

Optional[str]

add_ons
Type

Optional[List[AddOn]]

add_ons: Optional[List[matterapi.models.AddOn]]
description: Optional[str]
id: Optional[str]
name: Optional[str]
price_per_seat: Optional[str]
class matterapi.models.PublishUserTypingJsonBody(*, channel_id: str, parent_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

channel_id

The id of the channel to which to direct the typing event.

Type

str

parent_id

The optional id of the root post of the thread to which the user is replying. If unset, the typing event is directed at the entire channel.

Type

Optional[str]

channel_id: str
parent_id: Optional[str]
class matterapi.models.PushNotification(*, ack_id: str = None, platform: str = None, server_id: str = None, device_id: str = None, post_id: str = None, category: str = None, sound: str = None, message: str = None, badge: float = None, cont_ava: float = None, team_id: str = None, channel_id: str = None, root_id: str = None, channel_name: str = None, type: str = None, sender_id: str = None, sender_name: str = None, override_username: str = None, override_icon_url: str = None, from_webhook: str = None, version: str = None, is_id_loaded: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

ack_id
Type

Optional[str]

platform
Type

Optional[str]

server_id
Type

Optional[str]

device_id
Type

Optional[str]

post_id
Type

Optional[str]

category
Type

Optional[str]

sound
Type

Optional[str]

message
Type

Optional[str]

badge
Type

Optional[float]

cont_ava
Type

Optional[float]

team_id
Type

Optional[str]

channel_id
Type

Optional[str]

root_id
Type

Optional[str]

channel_name
Type

Optional[str]

type
Type

Optional[str]

sender_id
Type

Optional[str]

sender_name
Type

Optional[str]

override_username
Type

Optional[str]

override_icon_url
Type

Optional[str]

from_webhook
Type

Optional[str]

version
Type

Optional[str]

is_id_loaded
Type

Optional[bool]

ack_id: Optional[str]
badge: Optional[float]
category: Optional[str]
channel_id: Optional[str]
channel_name: Optional[str]
cont_ava: Optional[float]
device_id: Optional[str]
from_webhook: Optional[str]
is_id_loaded: Optional[bool]
message: Optional[str]
override_icon_url: Optional[str]
override_username: Optional[str]
platform: Optional[str]
post_id: Optional[str]
root_id: Optional[str]
sender_id: Optional[str]
sender_name: Optional[str]
server_id: Optional[str]
sound: Optional[str]
team_id: Optional[str]
type: Optional[str]
version: Optional[str]
class matterapi.models.Reaction(*, user_id: str = None, post_id: str = None, emoji_name: str = None, create_at: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

user_id

The ID of the user that made this reaction

Type

Optional[str]

post_id

The ID of the post to which this reaction was made

Type

Optional[str]

emoji_name

The name of the emoji that was used for this reaction

Type

Optional[str]

create_at

The time in milliseconds this reaction was made

Type

Optional[int]

create_at: Optional[int]
emoji_name: Optional[str]
post_id: Optional[str]
user_id: Optional[str]
class matterapi.models.RegenCommandTokenResponse200(*, token: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

token

The new token

Type

Optional[str]

token: Optional[str]
class matterapi.models.RegisterTermsOfServiceActionJsonBody(*, serviceTermsId: str, accepted: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

service_terms_id

terms of service ID on which the user is acting on

Type

str

accepted

true or false, indicates whether the user accepted or rejected the terms of service.

Type

str

accepted: str
service_terms_id: str
class matterapi.models.RelationalIntegrityCheckData(*, parent_name: str = None, child_name: str = None, parent_id_attr: str = None, child_id_attr: str = None, records: List[matterapi.models.OrphanedRecord] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

an object containing the results of a relational integrity check.

parent_name

the name of the parent relation (table).

Type

Optional[str]

child_name

the name of the child relation (table).

Type

Optional[str]

parent_id_attr

the name of the attribute (column) containing the parent id.

Type

Optional[str]

child_id_attr

the name of the attribute (column) containing the child id.

Type

Optional[str]

records

the list of orphaned records found.

Type

Optional[List[OrphanedRecord]]

child_id_attr: Optional[str]
child_name: Optional[str]
parent_id_attr: Optional[str]
parent_name: Optional[str]
records: Optional[List[matterapi.models.OrphanedRecord]]
class matterapi.models.RemoteClusterInfo(*, display_name: str = None, create_at: int = None, last_ping_at: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

display_name

The display name for the remote cluster

Type

Optional[str]

create_at

The time in milliseconds a remote cluster was created

Type

Optional[int]

last_ping_at

The time in milliseconds a remote cluster was last pinged successfully

Type

Optional[int]

create_at: Optional[int]
display_name: Optional[str]
last_ping_at: Optional[int]
class matterapi.models.RemoveRecentCustomStatusJsonBody(*, emoji: str, text: str, duration: str, expires_at: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

emoji

Any emoji

Type

str

text

Any custom status text

Type

str

duration

Duration of custom status, can be thirty_minutes, one_hour, four_hours, today, this_week or date_and_time

Type

str

expires_at

The time at which custom status should be expired. It should be in ISO format.

Type

str

duration: str
emoji: str
expires_at: str
text: str
class matterapi.models.RequestTrialLicenseJsonBody(*, users: int, **extra_data: Any)

Bases: matterapi.types.BaseConfig

users

Number of users requested (20% extra is going to be added)

Type

int

users: int
class matterapi.models.ResetPasswordJsonBody(*, code: str, new_password: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

code

The recovery code

Type

str

new_password

The new password for the user

Type

str

code: str
new_password: str
class matterapi.models.ResetSamlAuthDataToEmailJsonBody(*, include_deleted: bool = False, dry_run: bool = False, user_ids: List[str] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

include_deleted

Whether to include deleted users.

Type

Optional[bool]

dry_run

If set to true, the number of users who would be affected is returned.

Type

Optional[bool]

user_ids

If set to a non-empty array, then users whose IDs are not in the array will be excluded.

Type

Optional[List[str]]

dry_run: Optional[bool]
include_deleted: Optional[bool]
user_ids: Optional[List[str]]
class matterapi.models.ResetSamlAuthDataToEmailResponse200(*, num_affected: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

num_affected

The number of users whose AuthData field was reset.

Type

Optional[int]

num_affected: Optional[int]
class matterapi.models.RetentionPolicyForChannelList(*, policies: List[matterapi.models.DataRetentionPolicyForChannel] = None, total_count: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

policies

The list of channel policies.

Type

Optional[List[DataRetentionPolicyForChannel]]

total_count

The total number of channel policies.

Type

Optional[int]

policies: Optional[List[matterapi.models.DataRetentionPolicyForChannel]]
total_count: Optional[int]
class matterapi.models.RetentionPolicyForTeamList(*, policies: List[matterapi.models.DataRetentionPolicyForTeam] = None, total_count: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

policies

The list of team policies.

Type

Optional[List[DataRetentionPolicyForTeam]]

total_count

The total number of team policies.

Type

Optional[int]

policies: Optional[List[matterapi.models.DataRetentionPolicyForTeam]]
total_count: Optional[int]
class matterapi.models.RevokeSessionJsonBody(*, session_id: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

session_id

The session GUID to revoke.

Type

str

session_id: str
class matterapi.models.RevokeUserAccessTokenJsonBody(*, token_id: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

token_id

The user access token GUID to revoke

Type

str

token_id: str
class matterapi.models.Role(*, id: str = None, name: str = None, display_name: str = None, description: str = None, permissions: List[str] = None, scheme_managed: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

The unique identifier of the role.

Type

Optional[str]

name

The unique name of the role, used when assigning roles to users/groups in contexts.

Type

Optional[str]

display_name

The human readable name for the role.

Type

Optional[str]

description

A human readable description of the role.

Type

Optional[str]

permissions

A list of the unique names of the permissions this role grants.

Type

Optional[List[str]]

scheme_managed

indicates if this role is managed by a scheme (true), or is a custom stand-alone role (false).

Type

Optional[bool]

description: Optional[str]
display_name: Optional[str]
id: Optional[str]
name: Optional[str]
permissions: Optional[List[str]]
scheme_managed: Optional[bool]
class matterapi.models.SamlCertificateStatus(*, idp_certificate_file: bool = None, public_certificate_file: bool = None, private_key_file: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

idp_certificate_file

Status is good when true

Type

Optional[bool]

public_certificate_file

Status is good when true

Type

Optional[bool]

private_key_file

Status is good when true

Type

Optional[bool]

idp_certificate_file: Optional[bool]
private_key_file: Optional[bool]
public_certificate_file: Optional[bool]
class matterapi.models.Scheme(*, id: str = None, name: str = None, description: str = None, create_at: int = None, update_at: int = None, delete_at: int = None, scope: str = None, default_team_admin_role: str = None, default_team_user_role: str = None, default_channel_admin_role: str = None, default_channel_user_role: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

The unique identifier of the scheme.

Type

Optional[str]

name

The human readable name for the scheme.

Type

Optional[str]

description

A human readable description of the scheme.

Type

Optional[str]

create_at

The time at which the scheme was created.

Type

Optional[int]

update_at

The time at which the scheme was last updated.

Type

Optional[int]

delete_at

The time at which the scheme was deleted.

Type

Optional[int]

scope

The scope to which this scheme can be applied, either “team” or “channel”.

Type

Optional[str]

default_team_admin_role

The id of the default team admin role for this scheme.

Type

Optional[str]

default_team_user_role

The id of the default team user role for this scheme.

Type

Optional[str]

default_channel_admin_role

The id of the default channel admin role for this scheme.

Type

Optional[str]

default_channel_user_role

The id of the default channel user role for this scheme.

Type

Optional[str]

create_at: Optional[int]
default_channel_admin_role: Optional[str]
default_channel_user_role: Optional[str]
default_team_admin_role: Optional[str]
default_team_user_role: Optional[str]
delete_at: Optional[int]
description: Optional[str]
id: Optional[str]
name: Optional[str]
scope: Optional[str]
update_at: Optional[int]
class matterapi.models.SearchAllChannelsJsonBody(*, term: str, not_associated_to_group: str = None, exclude_default_channels: bool = None, team_ids: List[str] = None, group_constrained: bool = None, exclude_group_constrained: bool = None, public: bool = None, private: bool = None, deleted: bool = None, page: str = None, per_page: str = None, exclude_policy_constrained: bool = False, **extra_data: Any)

Bases: matterapi.types.BaseConfig

term

The string to search in the channel name, display name, and purpose.

Type

str

not_associated_to_group

A group id to exclude channels that are associated to that group via GroupChannel records.

Type

Optional[str]

exclude_default_channels

Exclude default channels from the results by setting this parameter to true.

Type

Optional[bool]

team_ids

Filters results to channels belonging to the given team ids

Minimum Server Version:

5.26

Type

Optional[List[str]]

group_constrained

Filters results to only return channels constrained to a group

Minimum Server Version:

5.26

Type

Optional[bool]

exclude_group_constrained

Filters results to exclude channels constrained to a group

Minimum Server Version:

5.26

Type

Optional[bool]

public

Filters results to only return Public / Open channels, can be used in conjunction with private to return both public and private channels

Minimum Server Version:

5.26

Type

Optional[bool]

private

Filters results to only return Private channels, can be used in conjunction with public to return both private and public channels

Minimum Server Version:

5.26

Type

Optional[bool]

deleted

Filters results to only return deleted / archived channels

Minimum Server Version:

5.26

Type

Optional[bool]

page

The page number to return, if paginated. If this parameter is not present with the per_page parameter then the results will be returned un-paged.

Type

Optional[str]

per_page

The number of entries to return per page, if paginated. If this parameter is not present with the page parameter then the results will be returned un-paged.

Type

Optional[str]

exclude_policy_constrained

If set to true, only channels which do not have a granular retention policy assigned to them will be returned. The sysconsole_read_compliance_data_retention permission is required to use this parameter.

Minimum Server Version:

5.35

Type

Optional[bool]

deleted: Optional[bool]
exclude_default_channels: Optional[bool]
exclude_group_constrained: Optional[bool]
exclude_policy_constrained: Optional[bool]
group_constrained: Optional[bool]
not_associated_to_group: Optional[str]
page: Optional[str]
per_page: Optional[str]
private: Optional[bool]
public: Optional[bool]
team_ids: Optional[List[str]]
term: str
class matterapi.models.SearchAllChannelsResponse200(*, channels: List[matterapi.models.Channel] = None, total_count: float = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

channels

The channels that matched the query.

Type

Optional[List[Channel]]

total_count

The total number of results, regardless of page and per_page requested.

Type

Optional[float]

channels: Optional[List[matterapi.models.Channel]]
total_count: Optional[float]
class matterapi.models.SearchArchivedChannelsJsonBody(*, term: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

term

The search term to match against the name or display name of archived channels

Type

str

term: str
class matterapi.models.SearchChannelsForRetentionPolicyJsonBody(*, term: str = None, team_ids: List[str] = None, public: bool = None, private: bool = None, deleted: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

term

The string to search in the channel name, display name, and purpose.

Type

Optional[str]

team_ids

Filters results to channels belonging to the given team ids

Type

Optional[List[str]]

public

Filters results to only return Public / Open channels, can be used in conjunction with private to return both public and private channels

Type

Optional[bool]

private

Filters results to only return Private channels, can be used in conjunction with public to return both private and public channels

Type

Optional[bool]

deleted

Filters results to only return deleted / archived channels

Type

Optional[bool]

deleted: Optional[bool]
private: Optional[bool]
public: Optional[bool]
team_ids: Optional[List[str]]
term: Optional[str]
class matterapi.models.SearchChannelsJsonBody(*, term: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

term

The search term to match against the name or display name of channels

Type

str

term: str
class matterapi.models.SearchEmojiJsonBody(*, term: str, prefix_only: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

term

The term to match against the emoji name.

Type

str

prefix_only

Set to only search for names starting with the search term.

Type

Optional[str]

prefix_only: Optional[str]
term: str
class matterapi.models.SearchFilesMultipartData(*, terms: str, is_or_search: bool, time_zone_offset: int = 0, include_deleted_channels: bool = None, page: int = 0, per_page: int = 60, **extra_data: Any)

Bases: matterapi.types.BaseConfig

terms

The search terms as inputed by the user. To search for files from a user include from:someusername, using a user’s username. To search in a specific channel include in:somechannel, using the channel name (not the display name). To search for specific extensions included ext:extension.

Type

str

Set to true if an Or search should be performed vs an And search.

Type

bool

time_zone_offset

Offset from UTC of user timezone for date searches.

Type

Optional[int]

include_deleted_channels

Set to true if deleted channels should be included in the search. (archived channels)

Type

Optional[bool]

page

The page to select. (Only works with Elasticsearch)

Type

Optional[int]

per_page

The number of posts per page. (Only works with Elasticsearch)

Default: 60.

Type

Optional[int]

include_deleted_channels: Optional[bool]
is_or_search: bool
page: Optional[int]
per_page: Optional[int]
terms: str
time_zone_offset: Optional[int]
class matterapi.models.SearchGroupChannelsJsonBody(*, term: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

term

The search term to match against the members’ usernames of the group channels

Type

str

term: str
class matterapi.models.SearchPostsJsonBody(*, terms: str, is_or_search: bool, time_zone_offset: int = 0, include_deleted_channels: bool = None, page: int = 0, per_page: int = 60, **extra_data: Any)

Bases: matterapi.types.BaseConfig

terms

The search terms as inputed by the user. To search for posts from a user include from:someusername, using a user’s username. To search in a specific channel include in:somechannel, using the channel name (not the display name).

Type

str

Set to true if an Or search should be performed vs an And search.

Type

bool

time_zone_offset

Offset from UTC of user timezone for date searches.

Type

Optional[int]

include_deleted_channels

Set to true if deleted channels should be included in the search. (archived channels)

Type

Optional[bool]

page

The page to select. (Only works with Elasticsearch)

Type

Optional[int]

per_page

The number of posts per page. (Only works with Elasticsearch)

Default: 60.

Type

Optional[int]

include_deleted_channels: Optional[bool]
is_or_search: bool
page: Optional[int]
per_page: Optional[int]
terms: str
time_zone_offset: Optional[int]
class matterapi.models.SearchTeamsForRetentionPolicyJsonBody(*, term: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

term

The search term to match against the name or display name of teams

Type

Optional[str]

term: Optional[str]
class matterapi.models.SearchTeamsJsonBody(*, term: str = None, page: str = None, per_page: str = None, allow_open_invite: bool = None, group_constrained: bool = None, exclude_policy_constrained: bool = False, **extra_data: Any)

Bases: matterapi.types.BaseConfig

term

The search term to match against the name or display name of teams

Type

Optional[str]

page

The page number to return, if paginated. If this parameter is not present with the per_page parameter then the results will be returned un-paged.

Type

Optional[str]

per_page

The number of entries to return per page, if paginated. If this parameter is not present with the page parameter then the results will be returned un-paged.

Type

Optional[str]

allow_open_invite

Filters results to teams where allow_open_invite is set to true or false, excludes group constrained channels if this filter option is passed. If this filter option is not passed then the query will remain unchanged.

Minimum Server Version:

5.28

Type

Optional[bool]

group_constrained

Filters results to teams where group_constrained is set to true or false, returns the union of results when used with allow_open_invite If the filter option is not passed then the query will remain unchanged.

Minimum Server Version:

5.28

Type

Optional[bool]

exclude_policy_constrained

If set to true, only teams which do not have a granular retention policy assigned to them will be returned. The sysconsole_read_compliance_data_retention permission is required to use this parameter.

Minimum Server Version:

5.35

Type

Optional[bool]

allow_open_invite: Optional[bool]
exclude_policy_constrained: Optional[bool]
group_constrained: Optional[bool]
page: Optional[str]
per_page: Optional[str]
term: Optional[str]
class matterapi.models.SearchTeamsResponse200(*, teams: List[matterapi.models.Team] = None, total_count: float = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

teams

The teams that matched the query.

Type

Optional[List[Team]]

total_count

The total number of results, regardless of page and per_page requested.

Type

Optional[float]

teams: Optional[List[matterapi.models.Team]]
total_count: Optional[float]
class matterapi.models.SearchUserAccessTokensJsonBody(*, term: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

term

The search term to match against the token id, user id or username.

Type

str

term: str
class matterapi.models.SearchUsersJsonBody(*, term: str, team_id: str = None, not_in_team_id: str = None, in_channel_id: str = None, not_in_channel_id: str = None, in_group_id: str = None, group_constrained: bool = None, allow_inactive: bool = None, without_team: bool = None, limit: int = 100, **extra_data: Any)

Bases: matterapi.types.BaseConfig

term

The term to match against username, full name, nickname and email

Type

str

team_id

If provided, only search users on this team

Type

Optional[str]

not_in_team_id

If provided, only search users not on this team

Type

Optional[str]

in_channel_id

If provided, only search users in this channel

Type

Optional[str]

not_in_channel_id

If provided, only search users not in this channel. Must specifiy team_id when using this option

Type

Optional[str]

in_group_id

If provided, only search users in this group. Must have manage_system permission.

Type

Optional[str]

group_constrained

When used with not_in_channel_id or not_in_team_id, returns only the users that are allowed to join the channel or team based on its group constrains.

Type

Optional[bool]

allow_inactive

When true, include deactivated users in the results

Type

Optional[bool]

without_team

Set this to true if you would like to search for users that are not on a team. This option takes precendence over team_id, in_channel_id, and not_in_channel_id.

Type

Optional[bool]

limit

The maximum number of users to return in the results

__Available as of server version 5.6. Defaults to 100 if not provided or on an earlier server version.__

Default: 100.

Type

Optional[int]

allow_inactive: Optional[bool]
group_constrained: Optional[bool]
in_channel_id: Optional[str]
in_group_id: Optional[str]
limit: Optional[int]
not_in_channel_id: Optional[str]
not_in_team_id: Optional[str]
team_id: Optional[str]
term: str
without_team: Optional[bool]
class matterapi.models.SendPasswordResetEmailJsonBody(*, email: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

email

The email of the user

Type

str

email: str
class matterapi.models.SendVerificationEmailJsonBody(*, email: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

email

Email of a user

Type

str

email: str
class matterapi.models.SendWarnMetricAckJsonBody(*, forceAck: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

force_ack

Flag which determines if the ack for the metric warning should be directly stored (without trying to send email first) or not

Type

Optional[bool]

force_ack: Optional[bool]
class matterapi.models.Server_Busy(*, busy: bool = None, expires: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

busy

True if the server is marked as busy (under high load)

Type

Optional[bool]

expires

timestamp - number of seconds since Jan 1, 1970 UTC.

Type

Optional[int]

busy: Optional[bool]
expires: Optional[int]
class matterapi.models.Session(*, create_at: int = None, device_id: str = None, expires_at: int = None, id: str = None, is_oauth: bool = None, last_activity_at: int = None, props: matterapi.models.Session.Props = None, roles: str = None, team_members: List[matterapi.models.TeamMember] = None, token: str = None, user_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

create_at

The time in milliseconds a session was created

Type

Optional[int]

device_id
Type

Optional[str]

expires_at

The time in milliseconds a session will expire

Type

Optional[int]

id
Type

Optional[str]

is_oauth
Type

Optional[bool]

last_activity_at

The time in milliseconds of the last activity of a session

Type

Optional[int]

props
Type

Optional[Props]

roles
Type

Optional[str]

team_members
Type

Optional[List[TeamMember]]

token
Type

Optional[str]

user_id
Type

Optional[str]

class Props(**extra_data: Any)

Bases: matterapi.types.BaseConfig

create_at: Optional[int]
device_id: Optional[str]
expires_at: Optional[int]
id: Optional[str]
is_oauth: Optional[bool]
last_activity_at: Optional[int]
props: Optional[matterapi.models.Session.Props]
roles: Optional[str]
team_members: Optional[List[matterapi.models.TeamMember]]
token: Optional[str]
user_id: Optional[str]
class matterapi.models.SetBotIconImageMultipartData(*, image: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

image

SVG icon image to be uploaded

Type

File

image: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any]
class matterapi.models.SetProfileImageMultipartData(*, image: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

image

The image to be uploaded

Type

File

image: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any]
class matterapi.models.SetTeamIconMultipartData(*, image: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

image

The image to be uploaded

Type

File

image: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any]
class matterapi.models.SharedChannel(*, id: str = None, team_id: str = None, home: bool = None, readonly: bool = None, name: str = None, display_name: str = None, purpose: str = None, header: str = None, creator_id: str = None, create_at: int = None, update_at: int = None, remote_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

Channel id of the shared channel

Type

Optional[str]

team_id
Type

Optional[str]

home

Is this the home cluster for the shared channel

Type

Optional[bool]

readonly

Is this shared channel shared as read only

Type

Optional[bool]

name

Channel name as it is shared (may be different than original channel name)

Type

Optional[str]

display_name

Channel display name as it appears locally

Type

Optional[str]

purpose
Type

Optional[str]

header
Type

Optional[str]

creator_id

Id of the user that shared the channel

Type

Optional[str]

create_at

Time in milliseconds that the channel was shared

Type

Optional[int]

update_at

Time in milliseconds that the shared channel record was last updated

Type

Optional[int]

remote_id

Id of the remote cluster where the shared channel is homed

Type

Optional[str]

create_at: Optional[int]
creator_id: Optional[str]
display_name: Optional[str]
header: Optional[str]
home: Optional[bool]
id: Optional[str]
name: Optional[str]
purpose: Optional[str]
readonly: Optional[bool]
remote_id: Optional[str]
team_id: Optional[str]
update_at: Optional[int]
class matterapi.models.SidebarCategory(*, id: str = None, user_id: str = None, team_id: str = None, display_name: str = None, type: matterapi.enums.SidebarCategoryType = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

User’s sidebar category

id
Type

Optional[str]

user_id
Type

Optional[str]

team_id
Type

Optional[str]

display_name
Type

Optional[str]

type
Type

Optional[SidebarCategoryType]

display_name: Optional[str]
id: Optional[str]
team_id: Optional[str]
type: Optional[matterapi.enums.SidebarCategoryType]
user_id: Optional[str]
class matterapi.models.SidebarCategoryWithChannels(*, id: str = None, user_id: str = None, team_id: str = None, display_name: str = None, type: matterapi.enums.SidebarCategoryWithChannelsType = None, channel_ids: List[str] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

User’s sidebar category with it’s channels

id
Type

Optional[str]

user_id
Type

Optional[str]

team_id
Type

Optional[str]

display_name
Type

Optional[str]

type
Type

Optional[SidebarCategoryWithChannelsType]

channel_ids
Type

Optional[List[str]]

channel_ids: Optional[List[str]]
display_name: Optional[str]
id: Optional[str]
team_id: Optional[str]
type: Optional[matterapi.enums.SidebarCategoryWithChannelsType]
user_id: Optional[str]
class matterapi.models.SlackAttachment(*, Id: str = None, Fallback: str = None, Color: str = None, Pretext: str = None, AuthorName: str = None, AuthorLink: str = None, AuthorIcon: str = None, Title: str = None, TitleLink: str = None, Text: str = None, Fields: List[matterapi.models.SlackAttachmentField] = None, ImageURL: str = None, ThumbURL: str = None, Footer: str = None, FooterIcon: str = None, Timestamp: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

fallback
Type

Optional[str]

color
Type

Optional[str]

pretext
Type

Optional[str]

author_name
Type

Optional[str]

Type

Optional[str]

author_icon
Type

Optional[str]

title
Type

Optional[str]

Type

Optional[str]

text
Type

Optional[str]

fields
Type

Optional[List[SlackAttachmentField]]

image_url
Type

Optional[str]

thumb_url
Type

Optional[str]

footer
Type

Optional[str]

footer_icon
Type

Optional[str]

timestamp

The timestamp of the slack attachment, either type of string or integer

Type

Optional[str]

author_icon: Optional[str]
author_link: Optional[str]
author_name: Optional[str]
color: Optional[str]
fallback: Optional[str]
fields: Optional[List[matterapi.models.SlackAttachmentField]]
footer: Optional[str]
footer_icon: Optional[str]
id: Optional[str]
image_url: Optional[str]
pretext: Optional[str]
text: Optional[str]
thumb_url: Optional[str]
timestamp: Optional[str]
title: Optional[str]
title_link: Optional[str]
class matterapi.models.SlackAttachmentField(*, Title: str = None, Value: str = None, Short: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

title
Type

Optional[str]

value

The value of the attachment, set as string but capable with golang interface

Type

Optional[str]

short
Type

Optional[bool]

short: Optional[bool]
title: Optional[str]
value: Optional[str]
class matterapi.models.Status(*, user_id: str = None, status: str = None, manual: bool = None, last_activity_at: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

user_id
Type

Optional[str]

status
Type

Optional[str]

manual
Type

Optional[bool]

last_activity_at
Type

Optional[int]

last_activity_at: Optional[int]
manual: Optional[bool]
status: Optional[str]
user_id: Optional[str]
class matterapi.models.StatusOK(*, status: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

status

Will contain “ok” if the request was successful and there was nothing else to return

Type

Optional[str]

status: Optional[str]
class matterapi.models.SubmitInteractiveDialogJsonBody(*, url: str, channel_id: str, team_id: str, submission: matterapi.models.SubmitInteractiveDialogJsonBody.Submission, callback_id: str = None, state: str = None, cancelled: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

url

The URL to send the submitted dialog payload to

Type

str

channel_id

Channel ID the user submitted the dialog from

Type

str

team_id

Team ID the user submitted the dialog from

Type

str

submission

String map where keys are element names and values are the element input values

Type

Submission

callback_id

Callback ID sent when the dialog was opened

Type

Optional[str]

state

State sent when the dialog was opened

Type

Optional[str]

cancelled

Set to true if the dialog was cancelled

Type

Optional[bool]

class Submission(**extra_data: Any)

Bases: matterapi.types.BaseConfig

String map where keys are element names and values are the element input values

callback_id: Optional[str]
cancelled: Optional[bool]
channel_id: str
state: Optional[str]
submission: matterapi.models.SubmitInteractiveDialogJsonBody.Submission
team_id: str
url: str
class matterapi.models.Subscription(*, id: str = None, customer_id: str = None, product_id: str = None, add_ons: List[str] = None, start_at: int = None, end_at: int = None, create_at: int = None, seats: int = None, dns: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

customer_id
Type

Optional[str]

product_id
Type

Optional[str]

add_ons
Type

Optional[List[str]]

start_at
Type

Optional[int]

end_at
Type

Optional[int]

create_at
Type

Optional[int]

seats
Type

Optional[int]

dns
Type

Optional[str]

add_ons: Optional[List[str]]
create_at: Optional[int]
customer_id: Optional[str]
dns: Optional[str]
end_at: Optional[int]
id: Optional[str]
product_id: Optional[str]
seats: Optional[int]
start_at: Optional[int]
class matterapi.models.SubscriptionStats(*, remaining_seats: int = None, is_paid_tier: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

remaining_seats
Type

Optional[int]

is_paid_tier
Type

Optional[str]

is_paid_tier: Optional[str]
remaining_seats: Optional[int]
class matterapi.models.SwitchAccountTypeJsonBody(*, current_service: str, new_service: str, email: str = None, password: str = None, mfa_code: str = None, ldap_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

current_service

The service the user currently uses to login

Type

str

new_service

The service the user will use to login

Type

str

email

The email of the user

Type

Optional[str]

password

The password used with the current service

Type

Optional[str]

mfa_code

The MFA code of the current service

Type

Optional[str]

ldap_id

The LDAP/AD id of the user

Type

Optional[str]

current_service: str
email: Optional[str]
ldap_id: Optional[str]
mfa_code: Optional[str]
new_service: str
password: Optional[str]
class matterapi.models.SwitchAccountTypeResponse200(*, follow_link: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

The link for the user to follow to login or to complete the account switching when the current service is OAuth2/SAML

Type

Optional[str]

follow_link: Optional[str]
class matterapi.models.System(*, name: str = None, value: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

name

System property name

Type

Optional[str]

value

System property value

Type

Optional[str]

name: Optional[str]
value: Optional[str]
class matterapi.models.SystemStatusResponse(*, AndroidLatestVersion: str = None, AndroidMinVersion: str = None, DesktopLatestVersion: str = None, DesktopMinVersion: str = None, IosLatestVersion: str = None, IosMinVersion: str = None, database_status: str = None, filestore_status: str = None, status: str = None, CanReceiveNotifications: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

android_latest_version

Latest Android version supported

Type

Optional[str]

android_min_version

Minimum Android version supported

Type

Optional[str]

desktop_latest_version

Latest desktop version supported

Type

Optional[str]

desktop_min_version

Minimum desktop version supported

Type

Optional[str]

ios_latest_version

Latest iOS version supported

Type

Optional[str]

ios_min_version

Minimum iOS version supported

Type

Optional[str]

database_status

Status of database (“OK” or “UNHEALTHY”). Included when get_server_status parameter set.

Type

Optional[str]

filestore_status

Status of filestore (“OK” or “UNHEALTHY”). Included when get_server_status parameter set.

Type

Optional[str]

status

Status of server (“OK” or “UNHEALTHY”). Included when get_server_status parameter set.

Type

Optional[str]

can_receive_notifications

Whether the device id provided can receive notifications (“true”, “false” or “unknown”). Included when device_id parameter set.

Type

Optional[str]

android_latest_version: Optional[str]
android_min_version: Optional[str]
can_receive_notifications: Optional[str]
database_status: Optional[str]
desktop_latest_version: Optional[str]
desktop_min_version: Optional[str]
filestore_status: Optional[str]
ios_latest_version: Optional[str]
ios_min_version: Optional[str]
status: Optional[str]
class matterapi.models.Team(*, id: str = None, create_at: int = None, update_at: int = None, delete_at: int = None, display_name: str = None, name: str = None, description: str = None, email: str = None, type: str = None, allowed_domains: str = None, invite_id: str = None, allow_open_invite: bool = None, policy_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

create_at

The time in milliseconds a team was created

Type

Optional[int]

update_at

The time in milliseconds a team was last updated

Type

Optional[int]

delete_at

The time in milliseconds a team was deleted

Type

Optional[int]

display_name
Type

Optional[str]

name
Type

Optional[str]

description
Type

Optional[str]

email
Type

Optional[str]

type
Type

Optional[str]

allowed_domains
Type

Optional[str]

invite_id
Type

Optional[str]

allow_open_invite
Type

Optional[bool]

policy_id

The data retention policy to which this team has been assigned. If no such policy exists, or the caller does not have the sysconsole_read_compliance_data_retention permission, this field will be null.

Type

Optional[str]

allow_open_invite: Optional[bool]
allowed_domains: Optional[str]
create_at: Optional[int]
delete_at: Optional[int]
description: Optional[str]
display_name: Optional[str]
email: Optional[str]
id: Optional[str]
invite_id: Optional[str]
name: Optional[str]
policy_id: Optional[str]
type: Optional[str]
update_at: Optional[int]
class matterapi.models.TeamExists(*, exists: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

exists
Type

Optional[bool]

exists: Optional[bool]
class matterapi.models.TeamMap(*, team_id: matterapi.models.Team = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

A mapping of teamIds to teams.

team_id
Type

Optional[Team]

team_id: Optional[matterapi.models.Team]
class matterapi.models.TeamMember(*, team_id: str = None, user_id: str = None, roles: str = None, delete_at: int = None, scheme_user: bool = None, scheme_admin: bool = None, explicit_roles: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

team_id

The ID of the team this member belongs to.

Type

Optional[str]

user_id

The ID of the user this member relates to.

Type

Optional[str]

roles

The complete list of roles assigned to this team member, as a space-separated list of role names, including any roles granted implicitly through permissions schemes.

Type

Optional[str]

delete_at

The time in milliseconds that this team member was deleted.

Type

Optional[int]

scheme_user

Whether this team member holds the default user role defined by the team’s permissions scheme.

Type

Optional[bool]

scheme_admin

Whether this team member holds the default admin role defined by the team’s permissions scheme.

Type

Optional[bool]

explicit_roles

The list of roles explicitly assigned to this team member, as a space separated list of role names. This list does not include any roles granted implicitly through permissions schemes.

Type

Optional[str]

delete_at: Optional[int]
explicit_roles: Optional[str]
roles: Optional[str]
scheme_admin: Optional[bool]
scheme_user: Optional[bool]
team_id: Optional[str]
user_id: Optional[str]
class matterapi.models.TeamStats(*, team_id: str = None, total_member_count: int = None, active_member_count: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

team_id
Type

Optional[str]

total_member_count
Type

Optional[int]

active_member_count
Type

Optional[int]

active_member_count: Optional[int]
team_id: Optional[str]
total_member_count: Optional[int]
class matterapi.models.TeamUnread(*, team_id: str = None, msg_count: int = None, mention_count: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

team_id
Type

Optional[str]

msg_count
Type

Optional[int]

mention_count
Type

Optional[int]

mention_count: Optional[int]
msg_count: Optional[int]
team_id: Optional[str]
class matterapi.models.TermsOfService(*, id: str = None, create_at: int = None, user_id: str = None, text: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

The unique identifier of the terms of service.

Type

Optional[str]

create_at

The time at which the terms of service was created.

Type

Optional[int]

user_id

The unique identifier of the user who created these terms of service.

Type

Optional[str]

text

The text of terms of service. Supports Markdown.

Type

Optional[str]

create_at: Optional[int]
id: Optional[str]
text: Optional[str]
user_id: Optional[str]
class matterapi.models.TestSiteURLJsonBody(*, site_url: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

site_url

The Site URL to test

Type

str

site_url: str
class matterapi.models.Timezone(*, useAutomaticTimezone: bool = None, manualTimezone: str = None, automaticTimezone: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

use_automatic_timezone

Set to “true” to use the browser/system timezone, “false” to set manually. Defaults to “true”.

Type

Optional[bool]

manual_timezone

Value when setting manually the timezone, i.e. “Europe/Berlin”.

Type

Optional[str]

automatic_timezone

This value is set automatically when the “useAutomaticTimezone” is set to “true”.

Type

Optional[str]

automatic_timezone: Optional[str]
manual_timezone: Optional[str]
use_automatic_timezone: Optional[bool]
class matterapi.models.UpdateChannelJsonBody(*, id: str, name: str = None, display_name: str = None, purpose: str = None, header: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

The channel’s id, not updatable

Type

str

name

The unique handle for the channel, will be present in the channel URL

Type

Optional[str]

display_name

The non-unique UI name for the channel

Type

Optional[str]

purpose

A short description of the purpose of the channel

Type

Optional[str]

header

Markdown-formatted text to display in the header of the channel

Type

Optional[str]

display_name: Optional[str]
header: Optional[str]
id: str
name: Optional[str]
purpose: Optional[str]
class matterapi.models.UpdateChannelMemberSchemeRolesJsonBody(*, scheme_admin: bool, scheme_user: bool, **extra_data: Any)

Bases: matterapi.types.BaseConfig

scheme_admin
Type

bool

scheme_user
Type

bool

scheme_admin: bool
scheme_user: bool
class matterapi.models.UpdateChannelPrivacyJsonBody(*, privacy: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

privacy

Channel privacy setting: ‘O’ for a public channel, ‘P’ for a private channel

Type

str

privacy: str
class matterapi.models.UpdateChannelRolesJsonBody(*, roles: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

roles
Type

str

roles: str
class matterapi.models.UpdateChannelSchemeJsonBody(*, scheme_id: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

scheme_id

The ID of the scheme.

Type

str

scheme_id: str
class matterapi.models.UpdateCloudCustomerJsonBody(*, name: str = None, email: str = None, contact_first_name: str = None, contact_last_name: str = None, num_employees: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

name
Type

Optional[str]

email
Type

Optional[str]

contact_first_name
Type

Optional[str]

contact_last_name
Type

Optional[str]

num_employees
Type

Optional[str]

contact_first_name: Optional[str]
contact_last_name: Optional[str]
email: Optional[str]
name: Optional[str]
num_employees: Optional[str]
class matterapi.models.UpdateIncomingWebhookJsonBody(*, hook_id: str, channel_id: str, display_name: str, description: str, username: str = None, icon_url: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

hook_id

Incoming webhook GUID

Type

str

channel_id

The ID of a public channel or private group that receives the webhook payloads.

Type

str

display_name

The display name for this incoming webhook

Type

str

description

The description for this incoming webhook

Type

str

username

The username this incoming webhook will post as.

Type

Optional[str]

icon_url

The profile picture this incoming webhook will use when posting.

Type

Optional[str]

channel_id: str
description: str
display_name: str
hook_id: str
icon_url: Optional[str]
username: Optional[str]
class matterapi.models.UpdateOAuthAppJsonBody(*, id: str, name: str, description: str, callback_urls: List[str], homepage: str, icon_url: str = None, is_trusted: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

The id of the client application

Type

str

name

The name of the client application

Type

str

description

A short description of the application

Type

str

callback_urls

A list of callback URLs for the appliation

Type

List[str]

homepage

A link to the website of the application

Type

str

icon_url

A URL to an icon to display with the application

Type

Optional[str]

is_trusted

Set this to true to skip asking users for permission. It will be set to false if value is not provided.

Type

Optional[bool]

callback_urls: List[str]
description: str
homepage: str
icon_url: Optional[str]
id: str
is_trusted: Optional[bool]
name: str
class matterapi.models.UpdateOutgoingWebhookJsonBody(*, hook_id: str, channel_id: str, display_name: str, description: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

hook_id

Outgoing webhook GUID

Type

str

channel_id

The ID of a public channel or private group that receives the webhook payloads.

Type

str

display_name

The display name for this incoming webhook

Type

str

description

The description for this incoming webhook

Type

str

channel_id: str
description: str
display_name: str
hook_id: str
class matterapi.models.UpdatePostJsonBody(*, id: str, is_pinned: bool = None, message: str = None, has_reactions: bool = None, props: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

ID of the post to update

Type

str

is_pinned

Set to true to pin the post to the channel it is in

Type

Optional[bool]

message

The message text of the post

Type

Optional[str]

has_reactions

Set to true if the post has reactions to it

Type

Optional[bool]

props

A general JSON property bag to attach to the post

Type

Optional[str]

has_reactions: Optional[bool]
id: str
is_pinned: Optional[bool]
message: Optional[str]
props: Optional[str]
class matterapi.models.UpdateTeamJsonBody(*, id: str, display_name: str, description: str, company_name: str, allowed_domains: str, invite_id: str, allow_open_invite: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

str

display_name
Type

str

description
Type

str

company_name
Type

str

allowed_domains
Type

str

invite_id
Type

str

allow_open_invite
Type

str

allow_open_invite: str
allowed_domains: str
company_name: str
description: str
display_name: str
id: str
invite_id: str
class matterapi.models.UpdateTeamMemberRolesJsonBody(*, roles: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

roles
Type

str

roles: str
class matterapi.models.UpdateTeamMemberSchemeRolesJsonBody(*, scheme_admin: bool, scheme_user: bool, **extra_data: Any)

Bases: matterapi.types.BaseConfig

scheme_admin
Type

bool

scheme_user
Type

bool

scheme_admin: bool
scheme_user: bool
class matterapi.models.UpdateTeamPrivacyJsonBody(*, privacy: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

privacy

Team privacy setting: ‘O’ for a public (open) team, ‘I’ for a private (invitation only) team

Type

str

privacy: str
class matterapi.models.UpdateTeamSchemeJsonBody(*, scheme_id: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

scheme_id

The ID of the scheme.

Type

str

scheme_id: str
class matterapi.models.UpdateUserActiveJsonBody(*, active: bool, **extra_data: Any)

Bases: matterapi.types.BaseConfig

active
Type

bool

active: bool
class matterapi.models.UpdateUserCustomStatusJsonBody(*, emoji: str, text: str, duration: str = None, expires_at: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

emoji

Any emoji

Type

str

text

Any custom status text

Type

str

duration

Duration of custom status, can be thirty_minutes, one_hour, four_hours, today, this_week or date_and_time

Type

Optional[str]

expires_at

The time at which custom status should be expired. It should be in ISO format.

Type

Optional[str]

duration: Optional[str]
emoji: str
expires_at: Optional[str]
text: str
class matterapi.models.UpdateUserJsonBody(*, id: str, email: str = None, username: str = None, first_name: str = None, last_name: str = None, nickname: str = None, locale: str = None, position: str = None, props: matterapi.models.UpdateUserJsonBody.Props = None, notify_props: matterapi.models.UserNotifyProps = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

str

email
Type

Optional[str]

username
Type

Optional[str]

first_name
Type

Optional[str]

last_name
Type

Optional[str]

nickname
Type

Optional[str]

locale
Type

Optional[str]

position
Type

Optional[str]

props
Type

Optional[Props]

notify_props
Type

Optional[UserNotifyProps]

class Props(**extra_data: Any)

Bases: matterapi.types.BaseConfig

email: Optional[str]
first_name: Optional[str]
id: str
last_name: Optional[str]
locale: Optional[str]
nickname: Optional[str]
notify_props: Optional[matterapi.models.UserNotifyProps]
position: Optional[str]
props: Optional[matterapi.models.UpdateUserJsonBody.Props]
username: Optional[str]
class matterapi.models.UpdateUserMfaJsonBody(*, activate: bool, code: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

activate

Use true to activate, false to deactivate

Type

bool

code

The code produced by your MFA client. Required if activate is true

Type

Optional[str]

activate: bool
code: Optional[str]
class matterapi.models.UpdateUserPasswordJsonBody(*, new_password: str, current_password: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

new_password

The new password for the user

Type

str

current_password

The current password for the user

Type

Optional[str]

current_password: Optional[str]
new_password: str
class matterapi.models.UpdateUserRolesJsonBody(*, roles: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

roles
Type

str

roles: str
class matterapi.models.UpdateUserStatusJsonBody(*, user_id: str, status: str, dnd_end_time: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

user_id

User ID

Type

str

status

User status, can be online, away, offline and dnd

Type

str

dnd_end_time

Time in epoch seconds at which a dnd status would be unset.

Type

Optional[int]

dnd_end_time: Optional[int]
status: str
user_id: str
class matterapi.models.UpgradeToEnterpriseStatusResponse200(*, percentage: int = None, error: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

percentage

Current percentage of the upgrade

Type

Optional[int]

error

Error happened during the upgrade

Type

Optional[str]

error: Optional[str]
percentage: Optional[int]
class matterapi.models.UploadBrandImageMultipartData(*, image: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

image

The image to be uploaded

Type

File

image: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any]
class matterapi.models.UploadDataFormData(**extra_data: Any)

Bases: matterapi.types.BaseConfig

class matterapi.models.UploadFileMultipartData(*, files: Optional[Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any]] = None, channel_id: str = None, client_ids: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

files

A file to be uploaded

Type

Optional[File]

channel_id

The ID of the channel that this file will be uploaded to

Type

Optional[str]

client_ids

A unique identifier for the file that will be returned in the response

Type

Optional[str]

channel_id: Optional[str]
client_ids: Optional[str]
files: Optional[Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any]]
class matterapi.models.UploadFileResponse201(*, file_infos: List[matterapi.models.FileInfo] = None, client_ids: List[str] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

file_infos

A list of file metadata that has been stored in the database

Type

Optional[List[FileInfo]]

client_ids

A list of the client_ids that were provided in the request

Type

Optional[List[str]]

client_ids: Optional[List[str]]
file_infos: Optional[List[matterapi.models.FileInfo]]
class matterapi.models.UploadLdapPrivateCertificateMultipartData(*, certificate: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

certificate

The private key file

Type

File

certificate: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any]
class matterapi.models.UploadLdapPublicCertificateMultipartData(*, certificate: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

certificate

The public certificate file

Type

File

certificate: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any]
class matterapi.models.UploadLicenseFileMultipartData(*, license: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

license

The license to be uploaded

Type

File

license: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any]
class matterapi.models.UploadPluginMultipartData(*, plugin: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any] = None, force: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

plugin

The plugin image to be uploaded

Type

File

force

Set to ‘true’ to overwrite a previously installed plugin with the same ID, if any

Type

Optional[str]

force: Optional[str]
plugin: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any]
class matterapi.models.UploadSamlIdpCertificateMultipartData(*, certificate: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

certificate

The IDP certificate file

Type

File

certificate: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any]
class matterapi.models.UploadSamlPrivateCertificateMultipartData(*, certificate: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

certificate

The private key file

Type

File

certificate: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any]
class matterapi.models.UploadSamlPublicCertificateMultipartData(*, certificate: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

certificate

The public certificate file

Type

File

certificate: Union[matterapi.types.FileInfo, Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]], Any]
class matterapi.models.UploadSession(*, id: str = None, type: matterapi.enums.UploadSessionType = None, create_at: int = None, user_id: str = None, channel_id: str = None, filename: str = None, file_size: int = None, file_offset: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

an object containing information used to keep track of a file upload.

id

The unique identifier for the upload.

Type

Optional[str]

type

The type of the upload.

Type

Optional[UploadSessionType]

create_at

The time the upload was created in milliseconds.

Type

Optional[int]

user_id

The ID of the user performing the upload.

Type

Optional[str]

channel_id

The ID of the channel to upload to.

Type

Optional[str]

filename

The name of the file to upload.

Type

Optional[str]

file_size

The size of the file to upload in bytes.

Type

Optional[int]

file_offset

The amount of data uploaded in bytes.

Type

Optional[int]

channel_id: Optional[str]
create_at: Optional[int]
file_offset: Optional[int]
file_size: Optional[int]
filename: Optional[str]
id: Optional[str]
type: Optional[matterapi.enums.UploadSessionType]
user_id: Optional[str]
class matterapi.models.User(*, id: str = None, create_at: int = None, update_at: int = None, delete_at: int = None, username: str = None, first_name: str = None, last_name: str = None, nickname: str = None, email: str = None, email_verified: bool = None, auth_service: str = None, roles: str = None, locale: str = None, notify_props: matterapi.models.UserNotifyProps = None, props: matterapi.models.User.Props = None, last_password_update: int = None, last_picture_update: int = None, failed_attempts: int = None, mfa_active: bool = None, timezone: matterapi.models.Timezone = None, terms_of_service_id: str = None, terms_of_service_create_at: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id
Type

Optional[str]

create_at

The time in milliseconds a user was created

Type

Optional[int]

update_at

The time in milliseconds a user was last updated

Type

Optional[int]

delete_at

The time in milliseconds a user was deleted

Type

Optional[int]

username
Type

Optional[str]

first_name
Type

Optional[str]

last_name
Type

Optional[str]

nickname
Type

Optional[str]

email
Type

Optional[str]

email_verified
Type

Optional[bool]

auth_service
Type

Optional[str]

roles
Type

Optional[str]

locale
Type

Optional[str]

notify_props
Type

Optional[UserNotifyProps]

props
Type

Optional[Props]

last_password_update
Type

Optional[int]

last_picture_update
Type

Optional[int]

failed_attempts
Type

Optional[int]

mfa_active
Type

Optional[bool]

timezone
Type

Optional[Timezone]

terms_of_service_id

ID of accepted terms of service, if any. This field is not present if empty.

Type

Optional[str]

terms_of_service_create_at

The time in milliseconds the user accepted the terms of service

Type

Optional[int]

class Props(**extra_data: Any)

Bases: matterapi.types.BaseConfig

auth_service: Optional[str]
create_at: Optional[int]
delete_at: Optional[int]
email: Optional[str]
email_verified: Optional[bool]
failed_attempts: Optional[int]
first_name: Optional[str]
id: Optional[str]
last_name: Optional[str]
last_password_update: Optional[int]
last_picture_update: Optional[int]
locale: Optional[str]
mfa_active: Optional[bool]
nickname: Optional[str]
notify_props: Optional[matterapi.models.UserNotifyProps]
props: Optional[matterapi.models.User.Props]
roles: Optional[str]
terms_of_service_create_at: Optional[int]
terms_of_service_id: Optional[str]
timezone: Optional[matterapi.models.Timezone]
update_at: Optional[int]
username: Optional[str]
class matterapi.models.UserAccessToken(*, id: str = None, token: str = None, user_id: str = None, description: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

Unique identifier for the token

Type

Optional[str]

token

The token used for authentication

Type

Optional[str]

user_id

The user the token authenticates for

Type

Optional[str]

description

A description of the token usage

Type

Optional[str]

description: Optional[str]
id: Optional[str]
token: Optional[str]
user_id: Optional[str]
class matterapi.models.UserAccessTokenSanitized(*, id: str = None, user_id: str = None, description: str = None, is_active: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

id

Unique identifier for the token

Type

Optional[str]

user_id

The user the token authenticates for

Type

Optional[str]

description

A description of the token usage

Type

Optional[str]

is_active

Indicates whether the token is active

Type

Optional[bool]

description: Optional[str]
id: Optional[str]
is_active: Optional[bool]
user_id: Optional[str]
class matterapi.models.UserAuthData(*, auth_data: str, auth_service: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

auth_data

Service-specific authentication data

Type

str

auth_service

The authentication service such as “email”, “gitlab”, or “ldap”

Type

str

auth_data: str
auth_service: str
class matterapi.models.UserAutocomplete(*, users: List[matterapi.models.User] = None, out_of_channel: List[matterapi.models.User] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

users

A list of users that are the main result of the query

Type

Optional[List[User]]

out_of_channel

A special case list of users returned when autocompleting in a specific channel. Omitted when empty or not relevant

Type

Optional[List[User]]

out_of_channel: Optional[List[matterapi.models.User]]
users: Optional[List[matterapi.models.User]]
class matterapi.models.UserAutocompleteInChannel(*, in_channel: List[matterapi.models.User] = None, out_of_channel: List[matterapi.models.User] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

in_channel

A list of user objects in the channel

Type

Optional[List[User]]

out_of_channel

A list of user objects not in the channel

Type

Optional[List[User]]

in_channel: Optional[List[matterapi.models.User]]
out_of_channel: Optional[List[matterapi.models.User]]
class matterapi.models.UserAutocompleteInTeam(*, in_team: List[matterapi.models.User] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

in_team

A list of user objects in the team

Type

Optional[List[User]]

in_team: Optional[List[matterapi.models.User]]
class matterapi.models.UserNotifyProps(*, email: bool = None, push: str = None, desktop: str = None, desktop_sound: bool = None, mention_keys: str = None, channel: bool = None, first_name: bool = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

email

Set to “true” to enable email notifications, “false” to disable. Defaults to “true”.

Type

Optional[bool]

push

Set to “all” to receive push notifications for all activity, “mention” for mentions and direct messages only, and “none” to disable. Defaults to “mention”.

Type

Optional[str]

desktop

Set to “all” to receive desktop notifications for all activity, “mention” for mentions and direct messages only, and “none” to disable. Defaults to “all”.

Type

Optional[str]

desktop_sound

Set to “true” to enable sound on desktop notifications, “false” to disable. Defaults to “true”.

Type

Optional[bool]

mention_keys

A comma-separated list of words to count as mentions. Defaults to username and @username.

Type

Optional[str]

channel

Set to “true” to enable channel-wide notifications (@channel, @all, etc.), “false” to disable. Defaults to “true”.

Type

Optional[bool]

first_name

Set to “true” to enable mentions for first name. Defaults to “true” if a first name is set, “false” otherwise.

Type

Optional[bool]

channel: Optional[bool]
desktop: Optional[str]
desktop_sound: Optional[bool]
email: Optional[bool]
first_name: Optional[bool]
mention_keys: Optional[str]
push: Optional[str]
class matterapi.models.UserTermsOfService(*, user_id: str = None, terms_of_service_id: str = None, create_at: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

user_id

The unique identifier of the user who performed this terms of service action.

Type

Optional[str]

terms_of_service_id

The unique identifier of the terms of service the action was performed on.

Type

Optional[str]

create_at

The time in milliseconds that this action was performed.

Type

Optional[int]

create_at: Optional[int]
terms_of_service_id: Optional[str]
user_id: Optional[str]
class matterapi.models.UserThread(*, id: str = None, reply_count: int = None, last_reply_at: int = None, last_viewed_at: int = None, participants: List[matterapi.models.Post] = None, post: matterapi.models.Post = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

a thread that user is following

id

ID of the post that is this thread’s root

Type

Optional[str]

reply_count

number of replies in this thread

Type

Optional[int]

last_reply_at

timestamp of the last post to this thread

Type

Optional[int]

last_viewed_at

timestamp of the last time the user viewed this thread

Type

Optional[int]

participants

list of users participating in this thread. only includes IDs unless ‘extended’ was set to ‘true’

Type

Optional[List[Post]]

post
Type

Optional[Post]

id: Optional[str]
last_reply_at: Optional[int]
last_viewed_at: Optional[int]
participants: Optional[List[matterapi.models.Post]]
post: Optional[matterapi.models.Post]
reply_count: Optional[int]
class matterapi.models.UserThreads(*, total: int = None, threads: List[matterapi.models.UserThread] = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

total

Total number of threads (used for paging)

Type

Optional[int]

threads

Array of threads

Type

Optional[List[UserThread]]

threads: Optional[List[matterapi.models.UserThread]]
total: Optional[int]
class matterapi.models.UsersStats(*, total_users_count: int = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

total_users_count
Type

Optional[int]

total_users_count: Optional[int]
class matterapi.models.VerifyUserEmailJsonBody(*, token: str, **extra_data: Any)

Bases: matterapi.types.BaseConfig

token

The token given to validate the email

Type

str

token: str
class matterapi.models.ViewChannelJsonBody(*, channel_id: str, prev_channel_id: str = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

channel_id

The channel ID that is being viewed. Use a blank string to indicate that all channels have lost focus.

Type

str

prev_channel_id

The channel ID of the previous channel, used when switching channels. Providing this ID will cause push notifications to clear on the channel being switched to.

Type

Optional[str]

channel_id: str
prev_channel_id: Optional[str]
class matterapi.models.ViewChannelResponse200(*, status: str = None, last_viewed_at_times: matterapi.models.ViewChannelResponse200.LastViewedAtTimes = None, **extra_data: Any)

Bases: matterapi.types.BaseConfig

status

Value should be “OK” if successful

Type

Optional[str]

last_viewed_at_times

A JSON object mapping channel IDs to the channel view times

Type

Optional[LastViewedAtTimes]

class LastViewedAtTimes(**extra_data: Any)

Bases: matterapi.types.BaseConfig

A JSON object mapping channel IDs to the channel view times

last_viewed_at_times: Optional[matterapi.models.ViewChannelResponse200.LastViewedAtTimes]
status: Optional[str]

Base Types

Contains some shared types for properties

class matterapi.types.BaseConfig(**extra_data: Any)

Bases: pydantic.main.BaseModel

class Config

Bases: object

exclude_defaults = True
extra = 'allow'
fields = {'fields': 'fields_'}
class matterapi.types.FileInfo(*, payload: Union[BinaryIO, TextIO], file_name: str = None, mime_type: str = None)

Bases: pydantic.main.BaseModel

Contains information for file uploads

class Config

Bases: object

arbitrary_types_allowed = True
file_name: Optional[str]
mime_type: Optional[str]
payload: Union[BinaryIO, TextIO]
to_tuple() Tuple[Optional[str], Union[BinaryIO, TextIO], Optional[str]]

Return a tuple representation that httpx will accept for multipart/form-data