mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
* Create scheduled post api (#27920) * Added migration files for Postgres * Added migrations for MySQL * Added store method * Added API and store tests * Renamed migration after syncing with master * Added app layer tests * API is ready * API is ready * API is ready * Renamed migration after syncing with master * Updated migration list * Fixed retry layer tests * Allowed posts with empty messages * Review fixes * Reverted an incorrect change * Renamed migration and fixed ID assignment * CI * Send post button changes (#28019) * added Split button * WIP * Added core menu options * WIP * WIP * WIP * Handled displaying error in creating scheduled post * lint fixes * webapp i18n fix * Review fixes * Fixed a webapp test * A few more fixes * Removed a duplicate comment * Scheduled post job (#28088) * Added the job function * Added query for fetching scheduled posts for pricessing * WIP * WIP * WIP * WIP * WIP * WIP * Reafactoring of scheduled post job * Lint fixes * Updated i18n files * FInishing touches * Added tests for GetScheduledPosts * Added tests for PermanentlyDeleteScheduledPosts * Updated all layer * Some changes as discussed with team * Added tests for UpdatedScheduledPost * Code review refactoring * Added job test * MM-60120 - Custom time selection (#28120) * Added a common date time picker modal and used it for post reminder * Added a common date time picker modal and used it for post reminderggp * Added modal for custom schedule time and fixed TZ issue * WIP * Removed event from useSubmit hook * Removed event from useSubmit hook * Added timezone handling * fixed type error * Updated i18n strings * Minor cleanup * updated snapshots * review fixes * Handled event * Supported for having a DM thread open in RHS while in a regular channel * Review fixes * MM-60136 - Scheduled messages tab (#28133) * WIP * WIP * Created Tabs and Tab wrapper with added styling * Added API to get scheduled posts * WIP * Displated scheduled post count * i18n fix * Added tests * Handled asetting active tab absed on URL: * Reverted unintended change * Added API to client ad OpenAPI specs * Renamed file * Adding fileinfo to schedule posts * Partial review fixes * Made get scheduled post API return posts by teamID * review fixes * Moved scheduled post redux code to MM-redux package * Usedd selector factory * WIP: * WIP: * Lint fix * Fixed an incorrect openapi spec file * Removed redundent permission check * Clreaed scheduled post data on logout * Removed unused i18n string: * lint fix * Render scheduled posts (#28208) * WIP * WIP * Created Tabs and Tab wrapper with added styling * Added API to get scheduled posts * WIP * Displated scheduled post count * i18n fix * Added tests * Handled asetting active tab absed on URL: * Reverted unintended change * Added API to client ad OpenAPI specs * Renamed file * Created common component for draft list item * WIP * WIP * Adding fileinfo to schedule posts * Basic rendering * Added count badge to tabs * WIP * Made the Drafts LHS iteam appear if no drafts exist but scheduled posts do * Fixed icon size * Partial review fixes * Made get scheduled post API return posts by teamID * Handled initial vs team switch load * Displayed scheduled date in panel header * Added error message and error indiocator * WIP * review fixes * WIP Adding error reason tag * Added error codes * Moved scheduled post redux code to MM-redux package * Usedd selector factory * WIP: * WIP: * Lint fix * Fixed an incorrect openapi spec file * Removed redundent permission check * Clreaed scheduled post data on logout * Removed unused i18n string: * lint fix * Opened rescheduling modal * Updated graphic for empty state of schduled post list * Added delete scheduled post option and modal * Badge and timezone fix * WIP: * Added send now confirmation modal * lint * Webapp i18n fix * Fixed webapp test * Fixed a bug where DM/GM scheduled posts weren't immideatly showing up in UI * Minor fixes * WIP * Review fixes * Review fixes * Optimisations * Fixed reducer name * Moment optimizatin * Updated route check * MM-60144 - added API to update a scheduled post (#28248) * WIP * Added api and ap layer for update scheduled post ̛̦̄ * Added API to OpenAI specs, Go client and TS client * removed permissio check * Added tests * Fixed tests * Added PreUpdate method on scheduled post model * MM-60131 - Reschedule post integration (#28281) * Handled rescheduling post in webapp * Added error handling * MM-60146 - Delete scheduled post api (#28265) * WIP * Added api and ap layer for update scheduled post ̛̦̄ * Added API to OpenAI specs, Go client and TS client * removed permissio check * Added tests * Fixed tests * Added PreUpdate method on scheduled post model * Added delete scheduled post API * Added API to Go client and OpenAPI specs * Added API to TS client * Added tests * CI * Rmeoved two incorrect code comments * MM-60653 - Integrated delete scheduled post API (#28296) * Integrated delete scheduled apost API * Lint fix * Review fixes * Excluded draft checks from scheduled posts (#28370) * Excluded draft checks from scheduled posts * Added a removed todo * MM-60125 - Scheduled post channel indicator (#28320) * Integrated delete scheduled apost API * Lint fix * Added state for storing scheduled posts by channel ID * Refactored redux store to store scheudled posts by ID, thens tore IDs everywhere * Refactored redux store to store scheudled posts by ID, thens tore IDs everywhere * WIP * Added scheduled post indiocator * Handled single and multiple scheudled posts * Review fixes * Fixed styling and handled center channel, RHS and threads view * Lint fix * i18n fix * Fixed a cycling dependency * Lint fix * Added some more comments * Updated styling * Review fixes * Added common component for remote user time and scheduled post indicator * Updated scheduled post count * Minor change * Moved CSS code around * Fixed a bug where files in scheduled post didn't show up until refresh (#28359) --------- Co-authored-by: Daniel Espino García <larkox@gmail.com> * Scheduled post config (#28485) * Added config * Added config on server and webapp side * Added config check in server and webapp * Added license check * Added license check * Added placeholder help text * Added license check to job * Fixed job test * Review fixes * Updated English text * Review fixes * MM-60118 - Added index on ScheduledPosts table (#28579) * Added index * Updated indexes * Scheduled posts misc fixes (#28625) * Added detailed logging for scheduled post job * Limited scheduled posts processing to 24 hours * Marked old scheduled posts as unable to send * Added t5ests * converted some logs to trace level * Fixed a bug causing error message to show up on deleting a scheduled post in a deleted thread (#28630) * Fixed scheduled posts link in RHS (#28659) * Fixed scheduled posts link in RHS * Review fixes * Fix permission name in scheduled posts by team (#28580) * Fix permission name * fix wording --------- Co-authored-by: Mattermost Build <build@mattermost.com> * FIxed width of generic modal header to fix browser channel modal (#28639) * Only consider error-free scheduled posts for indicator in channel and RHS (#28683) * Show only errro free scheudled posts in post box indicator * Fixed a bug to handle no scheduled posts * Fixed draft and scheudled post UI in mobile view (#28680) * MM-60873 and MM-60872 - Fixed a bug with updating scheduled posts (#28656) * Fixed a bug with updating scheduled posts * Better selectors * MOved shceuled post message length validation to app layer * MM-60732 - Scheduled posts channel link now takes you to the first scheduled post in channel/thread in list (#28768) * Ordered scheudle dposts by schgeudled at nad create at * Ordered in client * Added scroll to target * Removed classname prop * Fixed tests * Added doc * Import fix * MM-60961 - Fixed a bug where API used incoming create at date for scheduled post (#28703) * Fixed a bug where API used incoming create at date for scheduled post * Stopped sending created at value for scheduled post * MM-60785 - Fixed a bug where scheduled posts of channel we are no longer member of didn't show up (#28637) * Fixed a bug where scheduled posts of channel we are no longer member of didn't show up * Added a comment * CI * Used data loader to optimise laoding missing channels * Minor refactoring * MM-60963 - Added common checks for post and scheduled posts (#28713) * Added commen checks for post and scheuled posts * Sanitised scheduled posts * Fixed tests * Splitted post checks into app and context functions * Added checks on scheduiled posts job as well: * i18n fix * Fixed a test * Renamed a func * removed duplicate check * Scheduled posts UI fixes (#28828) * Fixed send button and time picker borders * Fixed center alignment of time picker * Removed on for today and tomorrow * Lint fix * Date time modal hover state fix * Badge fix * Fixed a mnerge issue * Scheduled Post send now and add schedule on draft (#28851) * Added send now option on scheduled posts * Minor refactoring * WIP * WIP * WIP * Lint fix * i18n fix * Snapshot update * Review fixes * Scheduled post inline editing (#28893) * Added send now option on scheduled posts * Minor refactoring * WIP * WIP * WIP * Lint fix * i18n fix * Snapshot update * Displayed editing component in scheduled post * Added handling for updating scheduled post * Handle events * Fixed escape key issue in scheudled post editing * Fixes * Displayed error message for editing error * Don't show mention warning * Handled dev mode (#28918) * MInor fixes * client fix * Fixes * CI * Removed dev mode behaviour temperorily (#29008) --------- Co-authored-by: Daniel Espino García <larkox@gmail.com> Co-authored-by: Eva Sarafianou <eva.sarafianou@gmail.com> Co-authored-by: Mattermost Build <build@mattermost.com>
3827 lines
111 KiB
YAML
3827 lines
111 KiB
YAML
components:
|
|
securitySchemes:
|
|
bearerAuth: # arbitrary name for the security scheme
|
|
type: http
|
|
scheme: bearer
|
|
bearerFormat: Token
|
|
responses:
|
|
Forbidden:
|
|
description: Do not have appropriate permissions
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/AppError"
|
|
Unauthorized:
|
|
description: No access token provided
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/AppError"
|
|
BadRequest:
|
|
description: Invalid or missing parameters in URL or request body
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/AppError"
|
|
NotFound:
|
|
description: Resource not found
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/AppError"
|
|
TooLarge:
|
|
description: Content too large
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/AppError"
|
|
NotImplemented:
|
|
description: Feature is disabled
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/AppError"
|
|
TooManyRequests:
|
|
description: Too many requests
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/AppError"
|
|
InternalServerError:
|
|
description: Something went wrong with the server
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/AppError"
|
|
BadGateway:
|
|
description: Bad gateway
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/AppError"
|
|
schemas:
|
|
User:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds a user was created
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
description: The time in milliseconds a user was last updated
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
description: The time in milliseconds a user was deleted
|
|
type: integer
|
|
format: int64
|
|
username:
|
|
type: string
|
|
first_name:
|
|
type: string
|
|
last_name:
|
|
type: string
|
|
nickname:
|
|
type: string
|
|
email:
|
|
type: string
|
|
email_verified:
|
|
type: boolean
|
|
auth_service:
|
|
type: string
|
|
roles:
|
|
type: string
|
|
locale:
|
|
type: string
|
|
notify_props:
|
|
$ref: "#/components/schemas/UserNotifyProps"
|
|
props:
|
|
type: object
|
|
last_password_update:
|
|
type: integer
|
|
format: int64
|
|
last_picture_update:
|
|
type: integer
|
|
format: int64
|
|
failed_attempts:
|
|
type: integer
|
|
mfa_active:
|
|
type: boolean
|
|
timezone:
|
|
$ref: "#/components/schemas/Timezone"
|
|
terms_of_service_id:
|
|
description: ID of accepted terms of service, if any. This field is not present
|
|
if empty.
|
|
type: string
|
|
terms_of_service_create_at:
|
|
description: The time in milliseconds the user accepted the terms of service
|
|
type: integer
|
|
format: int64
|
|
UsersStats:
|
|
type: object
|
|
properties:
|
|
total_users_count:
|
|
type: integer
|
|
KnownUsers:
|
|
type: array
|
|
properties:
|
|
items:
|
|
type: string
|
|
Team:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds a team was created
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
description: The time in milliseconds a team was last updated
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
description: The time in milliseconds a team was deleted
|
|
type: integer
|
|
format: int64
|
|
display_name:
|
|
type: string
|
|
name:
|
|
type: string
|
|
description:
|
|
type: string
|
|
email:
|
|
type: string
|
|
type:
|
|
type: string
|
|
allowed_domains:
|
|
type: string
|
|
invite_id:
|
|
type: string
|
|
allow_open_invite:
|
|
type: boolean
|
|
policy_id:
|
|
type: string
|
|
description: >-
|
|
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.
|
|
TeamStats:
|
|
type: object
|
|
properties:
|
|
team_id:
|
|
type: string
|
|
total_member_count:
|
|
type: integer
|
|
active_member_count:
|
|
type: integer
|
|
TeamExists:
|
|
type: object
|
|
properties:
|
|
exists:
|
|
type: boolean
|
|
Channel:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds a channel was created
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
description: The time in milliseconds a channel was last updated
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
description: The time in milliseconds a channel was deleted
|
|
type: integer
|
|
format: int64
|
|
team_id:
|
|
type: string
|
|
type:
|
|
type: string
|
|
display_name:
|
|
type: string
|
|
name:
|
|
type: string
|
|
header:
|
|
type: string
|
|
purpose:
|
|
type: string
|
|
last_post_at:
|
|
description: The time in milliseconds of the last post of a channel
|
|
type: integer
|
|
format: int64
|
|
total_msg_count:
|
|
type: integer
|
|
extra_update_at:
|
|
description: Deprecated in Mattermost 5.0 release
|
|
type: integer
|
|
format: int64
|
|
creator_id:
|
|
type: string
|
|
ChannelStats:
|
|
type: object
|
|
properties:
|
|
channel_id:
|
|
type: string
|
|
member_count:
|
|
type: integer
|
|
ChannelMember:
|
|
type: object
|
|
properties:
|
|
channel_id:
|
|
type: string
|
|
user_id:
|
|
type: string
|
|
roles:
|
|
type: string
|
|
last_viewed_at:
|
|
description: The time in milliseconds the channel was last viewed by the user
|
|
type: integer
|
|
format: int64
|
|
msg_count:
|
|
type: integer
|
|
mention_count:
|
|
type: integer
|
|
notify_props:
|
|
$ref: "#/components/schemas/ChannelNotifyProps"
|
|
last_update_at:
|
|
description: The time in milliseconds the channel member was last updated
|
|
type: integer
|
|
format: int64
|
|
ChannelMemberWithTeamData:
|
|
allOf:
|
|
- $ref: "#/components/schemas/ChannelMember"
|
|
- type: object
|
|
properties:
|
|
team_display_name:
|
|
type: string
|
|
description: The display name of the team to which this channel belongs.
|
|
team_name:
|
|
type: string
|
|
description: The name of the team to which this channel belongs.
|
|
team_update_at:
|
|
type: integer
|
|
description: The time at which the team to which this channel belongs was last updated.
|
|
ChannelData:
|
|
type: object
|
|
properties:
|
|
channel:
|
|
$ref: "#/components/schemas/Channel"
|
|
member:
|
|
$ref: "#/components/schemas/ChannelMember"
|
|
ChannelWithTeamData:
|
|
allOf:
|
|
- $ref: "#/components/schemas/Channel"
|
|
- type: object
|
|
properties:
|
|
team_display_name:
|
|
type: string
|
|
description: The display name of the team to which this channel belongs.
|
|
team_name:
|
|
type: string
|
|
description: The name of the team to which this channel belongs.
|
|
team_update_at:
|
|
type: integer
|
|
description: The time at which the team to which this channel belongs was last updated.
|
|
policy_id:
|
|
type: string
|
|
description: >-
|
|
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.
|
|
ChannelListWithTeamData:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/ChannelWithTeamData"
|
|
ChannelBookmark:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds a channel bookmark was created
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
description: The time in milliseconds a channel bookmark was last updated
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
description: The time in milliseconds a channel bookmark was deleted
|
|
type: integer
|
|
format: int64
|
|
channel_id:
|
|
type: string
|
|
owner_id:
|
|
description: The ID of the user that the channel bookmark belongs to
|
|
type: string
|
|
file_id:
|
|
description: The ID of the file associated with the channel bookmark
|
|
type: string
|
|
display_name:
|
|
type: string
|
|
sort_order:
|
|
description: The order of the channel bookmark
|
|
type: integer
|
|
format: int64
|
|
link_url:
|
|
description: The URL associated with the channel bookmark
|
|
type: string
|
|
image_url:
|
|
description: The URL of the image associated with the channel bookmark
|
|
type: string
|
|
emoji:
|
|
type: string
|
|
type:
|
|
type: string
|
|
enum: [link, file]
|
|
original_id:
|
|
description: The ID of the original channel bookmark
|
|
type: string
|
|
parent_id:
|
|
description: The ID of the parent channel bookmark
|
|
type: string
|
|
ChannelBookmarkWithFileInfo:
|
|
allOf:
|
|
- $ref: "#/components/schemas/ChannelBookmark"
|
|
- type: object
|
|
properties:
|
|
file:
|
|
$ref: "#/components/schemas/FileInfo"
|
|
UpdateChannelBookmarkResponse:
|
|
type: object
|
|
properties:
|
|
updated:
|
|
$ref: "#/components/schemas/ChannelBookmarkWithFileInfo"
|
|
deleted:
|
|
$ref: "#/components/schemas/ChannelBookmarkWithFileInfo"
|
|
Post:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds a post was created
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
description: The time in milliseconds a post was last updated
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
description: The time in milliseconds a post was deleted
|
|
type: integer
|
|
format: int64
|
|
edit_at:
|
|
type: integer
|
|
format: int64
|
|
user_id:
|
|
type: string
|
|
channel_id:
|
|
type: string
|
|
root_id:
|
|
type: string
|
|
original_id:
|
|
type: string
|
|
message:
|
|
type: string
|
|
type:
|
|
type: string
|
|
props:
|
|
type: object
|
|
hashtag:
|
|
type: string
|
|
file_ids:
|
|
type: array
|
|
items:
|
|
type: string
|
|
pending_post_id:
|
|
type: string
|
|
metadata:
|
|
$ref: "#/components/schemas/PostMetadata"
|
|
FileInfoList:
|
|
type: object
|
|
properties:
|
|
order:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- file_info_id1
|
|
- file_info_id2
|
|
file_infos:
|
|
type: object
|
|
additionalProperties:
|
|
$ref: "#/components/schemas/FileInfo"
|
|
next_file_id:
|
|
type: string
|
|
description: The ID of next file info. Not omitted when empty or not relevant.
|
|
prev_file_id:
|
|
type: string
|
|
description: The ID of previous file info. Not omitted when empty or not relevant.
|
|
PostList:
|
|
type: object
|
|
properties:
|
|
order:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- post_id1
|
|
- post_id12
|
|
posts:
|
|
type: object
|
|
additionalProperties:
|
|
$ref: "#/components/schemas/Post"
|
|
next_post_id:
|
|
type: string
|
|
description: The ID of next post. Not omitted when empty or not relevant.
|
|
prev_post_id:
|
|
type: string
|
|
description: The ID of previous post. Not omitted when empty or not relevant.
|
|
has_next:
|
|
type: boolean
|
|
description: Whether there are more items after this page.
|
|
PostListWithSearchMatches:
|
|
type: object
|
|
properties:
|
|
order:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- post_id1
|
|
- post_id12
|
|
posts:
|
|
type: object
|
|
additionalProperties:
|
|
$ref: "#/components/schemas/Post"
|
|
matches:
|
|
description: 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.
|
|
type: object
|
|
additionalProperties:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
post_id1:
|
|
- search match 1
|
|
- search match 2
|
|
PostMetadata:
|
|
type: object
|
|
description: Additional information used to display a post.
|
|
properties:
|
|
embeds:
|
|
type: array
|
|
description: >
|
|
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.
|
|
items:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The type of content that is embedded in this point.
|
|
enum:
|
|
- image
|
|
- message_attachment
|
|
- opengraph
|
|
- link
|
|
url:
|
|
type: string
|
|
description: The URL of the embedded content, if one exists.
|
|
data:
|
|
type: object
|
|
description: >
|
|
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.
|
|
emojis:
|
|
type: array
|
|
description: >
|
|
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.
|
|
items:
|
|
$ref: "#/components/schemas/Emoji"
|
|
files:
|
|
type: array
|
|
description: >
|
|
The FileInfo objects for any files attached to the post. This field
|
|
will be null if the post does not have any file attachments.
|
|
items:
|
|
$ref: "#/components/schemas/FileInfo"
|
|
images:
|
|
type: object
|
|
description: >
|
|
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.
|
|
items:
|
|
type: object
|
|
properties:
|
|
height:
|
|
type: integer
|
|
width:
|
|
type: integer
|
|
reactions:
|
|
type: array
|
|
description: >
|
|
Any reactions made to this point. This field will be null if no
|
|
reactions have been made to this post.
|
|
items:
|
|
$ref: "#/components/schemas/Reaction"
|
|
priority:
|
|
type: object
|
|
description: >
|
|
Post priority set for this post. This field will be null if no
|
|
priority metadata has been set.
|
|
properties:
|
|
priority:
|
|
type: string
|
|
description: The priority label of a post, could be either empty, important, or urgent.
|
|
requested_ack:
|
|
type: boolean
|
|
description: Whether the post author has requested for acknowledgements or not.
|
|
acknowledgements:
|
|
type: array
|
|
description: >
|
|
Any acknowledgements made to this point.
|
|
items:
|
|
$ref: "#/components/schemas/PostAcknowledgement"
|
|
TeamMap:
|
|
type: object
|
|
description: A mapping of teamIds to teams.
|
|
properties:
|
|
team_id:
|
|
$ref: "#/components/schemas/Team"
|
|
TeamMember:
|
|
type: object
|
|
properties:
|
|
team_id:
|
|
description: The ID of the team this member belongs to.
|
|
type: string
|
|
user_id:
|
|
description: The ID of the user this member relates to.
|
|
type: string
|
|
roles:
|
|
description: 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: string
|
|
delete_at:
|
|
description: The time in milliseconds that this team member was deleted.
|
|
type: integer
|
|
scheme_user:
|
|
description: Whether this team member holds the default user role defined by the
|
|
team's permissions scheme.
|
|
type: boolean
|
|
scheme_admin:
|
|
description: Whether this team member holds the default admin role defined by the
|
|
team's permissions scheme.
|
|
type: boolean
|
|
explicit_roles:
|
|
description: 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: string
|
|
TeamUnread:
|
|
type: object
|
|
properties:
|
|
team_id:
|
|
type: string
|
|
msg_count:
|
|
type: integer
|
|
mention_count:
|
|
type: integer
|
|
ChannelUnread:
|
|
type: object
|
|
properties:
|
|
team_id:
|
|
type: string
|
|
channel_id:
|
|
type: string
|
|
msg_count:
|
|
type: integer
|
|
mention_count:
|
|
type: integer
|
|
ChannelUnreadAt:
|
|
type: object
|
|
properties:
|
|
team_id:
|
|
description: The ID of the team the channel belongs to.
|
|
type: string
|
|
channel_id:
|
|
description: The ID of the channel the user has access to..
|
|
type: string
|
|
msg_count:
|
|
description: No. of messages the user has already read.
|
|
type: integer
|
|
mention_count:
|
|
description: No. of mentions the user has within the unread posts of the channel.
|
|
type: integer
|
|
last_viewed_at:
|
|
description: time in milliseconds when the user last viewed the channel.
|
|
type: integer
|
|
Session:
|
|
type: object
|
|
properties:
|
|
create_at:
|
|
description: The time in milliseconds a session was created
|
|
type: integer
|
|
format: int64
|
|
device_id:
|
|
type: string
|
|
expires_at:
|
|
description: The time in milliseconds a session will expire
|
|
type: integer
|
|
format: int64
|
|
id:
|
|
type: string
|
|
is_oauth:
|
|
type: boolean
|
|
last_activity_at:
|
|
description: The time in milliseconds of the last activity of a session
|
|
type: integer
|
|
format: int64
|
|
props:
|
|
type: object
|
|
roles:
|
|
type: string
|
|
team_members:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/TeamMember"
|
|
token:
|
|
type: string
|
|
user_id:
|
|
type: string
|
|
FileInfo:
|
|
type: object
|
|
properties:
|
|
id:
|
|
description: The unique identifier for this file
|
|
type: string
|
|
user_id:
|
|
description: The ID of the user that uploaded this file
|
|
type: string
|
|
post_id:
|
|
description: If this file is attached to a post, the ID of that post
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds a file was created
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
description: The time in milliseconds a file was last updated
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
description: The time in milliseconds a file was deleted
|
|
type: integer
|
|
format: int64
|
|
name:
|
|
description: The name of the file
|
|
type: string
|
|
extension:
|
|
description: The extension at the end of the file name
|
|
type: string
|
|
size:
|
|
description: The size of the file in bytes
|
|
type: integer
|
|
mime_type:
|
|
description: The MIME type of the file
|
|
type: string
|
|
width:
|
|
description: If this file is an image, the width of the file
|
|
type: integer
|
|
height:
|
|
description: If this file is an image, the height of the file
|
|
type: integer
|
|
has_preview_image:
|
|
description: If this file is an image, whether or not it has a preview-sized
|
|
version
|
|
type: boolean
|
|
Preference:
|
|
type: object
|
|
properties:
|
|
user_id:
|
|
description: The ID of the user that owns this preference
|
|
type: string
|
|
category:
|
|
type: string
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
UserAuthData:
|
|
type: object
|
|
properties:
|
|
auth_data:
|
|
description: Service-specific authentication data
|
|
type: string
|
|
auth_service:
|
|
description: The authentication service such as "email", "gitlab", or "ldap"
|
|
type: string
|
|
required:
|
|
- auth_data
|
|
- auth_service
|
|
UserAutocomplete:
|
|
type: object
|
|
properties:
|
|
users:
|
|
description: A list of users that are the main result of the query
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/User"
|
|
out_of_channel:
|
|
description: A special case list of users returned when autocompleting in a
|
|
specific channel. Omitted when empty or not relevant
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/User"
|
|
UserAutocompleteInTeam:
|
|
type: object
|
|
properties:
|
|
in_team:
|
|
description: A list of user objects in the team
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/User"
|
|
UserAutocompleteInChannel:
|
|
type: object
|
|
properties:
|
|
in_channel:
|
|
description: A list of user objects in the channel
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/User"
|
|
out_of_channel:
|
|
description: A list of user objects not in the channel
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/User"
|
|
IncomingWebhook:
|
|
type: object
|
|
properties:
|
|
id:
|
|
description: The unique identifier for this incoming webhook
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds a incoming webhook was created
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
description: The time in milliseconds a incoming webhook was last updated
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
description: The time in milliseconds a incoming webhook was deleted
|
|
type: integer
|
|
format: int64
|
|
channel_id:
|
|
description: The ID of a public channel or private group that receives the
|
|
webhook payloads
|
|
type: string
|
|
description:
|
|
description: The description for this incoming webhook
|
|
type: string
|
|
display_name:
|
|
description: The display name for this incoming webhook
|
|
type: string
|
|
OutgoingWebhook:
|
|
type: object
|
|
properties:
|
|
id:
|
|
description: The unique identifier for this outgoing webhook
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds a outgoing webhook was created
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
description: The time in milliseconds a outgoing webhook was last updated
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
description: The time in milliseconds a outgoing webhook was deleted
|
|
type: integer
|
|
format: int64
|
|
creator_id:
|
|
description: The Id of the user who created the webhook
|
|
type: string
|
|
team_id:
|
|
description: The ID of the team that the webhook watchs
|
|
type: string
|
|
channel_id:
|
|
description: The ID of a public channel that the webhook watchs
|
|
type: string
|
|
description:
|
|
description: The description for this outgoing webhook
|
|
type: string
|
|
display_name:
|
|
description: The display name for this outgoing webhook
|
|
type: string
|
|
trigger_words:
|
|
description: List of words for the webhook to trigger on
|
|
type: array
|
|
items:
|
|
type: string
|
|
trigger_when:
|
|
description: 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: integer
|
|
callback_urls:
|
|
description: The URLs to POST the payloads to when the webhook is triggered
|
|
type: array
|
|
items:
|
|
type: string
|
|
content_type:
|
|
description: The format to POST the data in, either `application/json` or
|
|
`application/x-www-form-urlencoded`
|
|
default: application/x-www-form-urlencoded
|
|
type: string
|
|
Reaction:
|
|
type: object
|
|
properties:
|
|
user_id:
|
|
description: The ID of the user that made this reaction
|
|
type: string
|
|
post_id:
|
|
description: The ID of the post to which this reaction was made
|
|
type: string
|
|
emoji_name:
|
|
description: The name of the emoji that was used for this reaction
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds this reaction was made
|
|
type: integer
|
|
format: int64
|
|
NewTeamMember:
|
|
type: object
|
|
properties:
|
|
id:
|
|
description: The user's ID.
|
|
type: string
|
|
username:
|
|
type: string
|
|
first_name:
|
|
type: string
|
|
last_name:
|
|
type: string
|
|
nickname:
|
|
type: string
|
|
position:
|
|
description: The user's position field value.
|
|
type: string
|
|
create_at:
|
|
description: The creation timestamp of the team member record.
|
|
type: integer
|
|
NewTeamMembersList:
|
|
type: object
|
|
properties:
|
|
has_next:
|
|
description: Indicates if there is another page of new team members that can be fetched.
|
|
type: boolean
|
|
items:
|
|
description: List of new team members.
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/NewTeamMember"
|
|
total_count:
|
|
description: The total count of new team members for the given time range.
|
|
type: integer
|
|
Emoji:
|
|
type: object
|
|
properties:
|
|
id:
|
|
description: The ID of the emoji
|
|
type: string
|
|
creator_id:
|
|
description: The ID of the user that made the emoji
|
|
type: string
|
|
name:
|
|
description: The name of the emoji
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds the emoji was made
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
description: The time in milliseconds the emoji was last updated
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
description: The time in milliseconds the emoji was deleted
|
|
type: integer
|
|
format: int64
|
|
Command:
|
|
type: object
|
|
properties:
|
|
id:
|
|
description: The ID of the slash command
|
|
type: string
|
|
token:
|
|
description: The token which is used to verify the source of the payload
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds the command was created
|
|
type: integer
|
|
update_at:
|
|
description: The time in milliseconds the command was last updated
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
description: The time in milliseconds the command was deleted, 0 if never deleted
|
|
type: integer
|
|
format: int64
|
|
creator_id:
|
|
description: The user id for the commands creator
|
|
type: string
|
|
team_id:
|
|
description: The team id for which this command is configured
|
|
type: string
|
|
trigger:
|
|
description: The string that triggers this command
|
|
type: string
|
|
method:
|
|
description: Is the trigger done with HTTP Get ('G') or HTTP Post ('P')
|
|
type: string
|
|
username:
|
|
description: What is the username for the response post
|
|
type: string
|
|
icon_url:
|
|
description: The url to find the icon for this users avatar
|
|
type: string
|
|
auto_complete:
|
|
description: Use auto complete for this command
|
|
type: boolean
|
|
auto_complete_desc:
|
|
description: The description for this command shown when selecting the command
|
|
type: string
|
|
auto_complete_hint:
|
|
description: The hint for this command
|
|
type: string
|
|
display_name:
|
|
description: Display name for the command
|
|
type: string
|
|
description:
|
|
description: Description for this command
|
|
type: string
|
|
url:
|
|
description: The URL that is triggered
|
|
type: string
|
|
AutocompleteSuggestion:
|
|
type: object
|
|
properties:
|
|
Complete:
|
|
description: Completed suggestion
|
|
type: string
|
|
Suggestion:
|
|
description: Predicted text user might want to input
|
|
type: string
|
|
Hint:
|
|
description: Hint about suggested input
|
|
type: string
|
|
Description:
|
|
description: Description of the suggested command
|
|
type: string
|
|
IconData:
|
|
description: Base64 encoded svg image
|
|
type: string
|
|
CommandResponse:
|
|
type: object
|
|
properties:
|
|
ResponseType:
|
|
description: The response type either in_channel or ephemeral
|
|
type: string
|
|
Text:
|
|
type: string
|
|
Username:
|
|
type: string
|
|
IconURL:
|
|
type: string
|
|
GotoLocation:
|
|
type: string
|
|
Attachments:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/SlackAttachment"
|
|
SlackAttachment:
|
|
type: object
|
|
properties:
|
|
Id:
|
|
type: string
|
|
Fallback:
|
|
type: string
|
|
Color:
|
|
type: string
|
|
Pretext:
|
|
type: string
|
|
AuthorName:
|
|
type: string
|
|
AuthorLink:
|
|
type: string
|
|
AuthorIcon:
|
|
type: string
|
|
Title:
|
|
type: string
|
|
TitleLink:
|
|
type: string
|
|
Text:
|
|
type: string
|
|
Fields:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/SlackAttachmentField"
|
|
ImageURL:
|
|
type: string
|
|
ThumbURL:
|
|
type: string
|
|
Footer:
|
|
type: string
|
|
FooterIcon:
|
|
type: string
|
|
Timestamp:
|
|
description: The timestamp of the slack attachment, either type of string or integer
|
|
type: string
|
|
SlackAttachmentField:
|
|
type: object
|
|
properties:
|
|
Title:
|
|
type: string
|
|
Value:
|
|
description: The value of the attachment, set as string but capable with golang interface
|
|
type: string
|
|
Short:
|
|
type: boolean
|
|
StatusOK:
|
|
type: object
|
|
properties:
|
|
status:
|
|
description: Will contain "ok" if the request was successful and there was nothing else to return
|
|
type: string
|
|
OpenGraph:
|
|
type: object
|
|
description: OpenGraph metadata of a webpage
|
|
properties:
|
|
type:
|
|
type: string
|
|
url:
|
|
type: string
|
|
title:
|
|
type: string
|
|
description:
|
|
type: string
|
|
determiner:
|
|
type: string
|
|
site_name:
|
|
type: string
|
|
locale:
|
|
type: string
|
|
locales_alternate:
|
|
type: array
|
|
items:
|
|
type: string
|
|
images:
|
|
type: array
|
|
items:
|
|
type: object
|
|
description: Image object used in OpenGraph metadata of a webpage
|
|
properties:
|
|
url:
|
|
type: string
|
|
secure_url:
|
|
type: string
|
|
type:
|
|
type: string
|
|
width:
|
|
type: integer
|
|
height:
|
|
type: integer
|
|
videos:
|
|
type: array
|
|
items:
|
|
type: object
|
|
description: Video object used in OpenGraph metadata of a webpage
|
|
properties:
|
|
url:
|
|
type: string
|
|
secure_url:
|
|
type: string
|
|
type:
|
|
type: string
|
|
width:
|
|
type: integer
|
|
height:
|
|
type: integer
|
|
audios:
|
|
type: array
|
|
items:
|
|
type: object
|
|
description: Audio object used in OpenGraph metadata of a webpage
|
|
properties:
|
|
url:
|
|
type: string
|
|
secure_url:
|
|
type: string
|
|
type:
|
|
type: string
|
|
article:
|
|
type: object
|
|
description: Article object used in OpenGraph metadata of a webpage, if type is
|
|
article
|
|
properties:
|
|
published_time:
|
|
type: string
|
|
modified_time:
|
|
type: string
|
|
expiration_time:
|
|
type: string
|
|
section:
|
|
type: string
|
|
tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
authors:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
first_name:
|
|
type: string
|
|
last_name:
|
|
type: string
|
|
username:
|
|
type: string
|
|
gender:
|
|
type: string
|
|
book:
|
|
type: object
|
|
description: Book object used in OpenGraph metadata of a webpage, if type is book
|
|
properties:
|
|
isbn:
|
|
type: string
|
|
release_date:
|
|
type: string
|
|
tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
authors:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
first_name:
|
|
type: string
|
|
last_name:
|
|
type: string
|
|
username:
|
|
type: string
|
|
gender:
|
|
type: string
|
|
profile:
|
|
type: object
|
|
properties:
|
|
first_name:
|
|
type: string
|
|
last_name:
|
|
type: string
|
|
username:
|
|
type: string
|
|
gender:
|
|
type: string
|
|
Audit:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds a audit was created
|
|
type: integer
|
|
format: int64
|
|
user_id:
|
|
type: string
|
|
action:
|
|
type: string
|
|
extra_info:
|
|
type: string
|
|
ip_address:
|
|
type: string
|
|
session_id:
|
|
type: string
|
|
Config:
|
|
type: object
|
|
properties:
|
|
ServiceSettings:
|
|
type: object
|
|
properties:
|
|
SiteURL:
|
|
type: string
|
|
ListenAddress:
|
|
type: string
|
|
ConnectionSecurity:
|
|
type: string
|
|
TLSCertFile:
|
|
type: string
|
|
TLSKeyFile:
|
|
type: string
|
|
UseLetsEncrypt:
|
|
type: boolean
|
|
LetsEncryptCertificateCacheFile:
|
|
type: string
|
|
Forward80To443:
|
|
type: boolean
|
|
ReadTimeout:
|
|
type: integer
|
|
WriteTimeout:
|
|
type: integer
|
|
MaximumLoginAttempts:
|
|
type: integer
|
|
SegmentDeveloperKey:
|
|
type: string
|
|
GoogleDeveloperKey:
|
|
type: string
|
|
EnableOAuthServiceProvider:
|
|
type: boolean
|
|
EnableIncomingWebhooks:
|
|
type: boolean
|
|
EnableOutgoingWebhooks:
|
|
type: boolean
|
|
EnableCommands:
|
|
type: boolean
|
|
EnableOnlyAdminIntegrations:
|
|
type: boolean
|
|
EnablePostUsernameOverride:
|
|
type: boolean
|
|
EnablePostIconOverride:
|
|
type: boolean
|
|
EnableTesting:
|
|
type: boolean
|
|
EnableDeveloper:
|
|
type: boolean
|
|
EnableSecurityFixAlert:
|
|
type: boolean
|
|
EnableInsecureOutgoingConnections:
|
|
type: boolean
|
|
EnableMultifactorAuthentication:
|
|
type: boolean
|
|
EnforceMultifactorAuthentication:
|
|
type: boolean
|
|
AllowCorsFrom:
|
|
type: string
|
|
SessionLengthWebInDays:
|
|
type: integer
|
|
SessionLengthMobileInDays:
|
|
type: integer
|
|
SessionLengthSSOInDays:
|
|
type: integer
|
|
SessionCacheInMinutes:
|
|
type: integer
|
|
WebsocketSecurePort:
|
|
type: integer
|
|
WebsocketPort:
|
|
type: integer
|
|
WebserverMode:
|
|
type: string
|
|
EnableCustomEmoji:
|
|
type: boolean
|
|
RestrictCustomEmojiCreation:
|
|
type: string
|
|
TeamSettings:
|
|
type: object
|
|
properties:
|
|
SiteName:
|
|
type: string
|
|
MaxUsersPerTeam:
|
|
type: integer
|
|
EnableTeamCreation:
|
|
type: boolean
|
|
EnableUserCreation:
|
|
type: boolean
|
|
EnableOpenServer:
|
|
type: boolean
|
|
RestrictCreationToDomains:
|
|
type: string
|
|
EnableCustomBrand:
|
|
type: boolean
|
|
CustomBrandText:
|
|
type: string
|
|
CustomDescriptionText:
|
|
type: string
|
|
RestrictDirectMessage:
|
|
type: string
|
|
RestrictTeamInvite:
|
|
type: string
|
|
RestrictPublicChannelManagement:
|
|
type: string
|
|
RestrictPrivateChannelManagement:
|
|
type: string
|
|
RestrictPublicChannelCreation:
|
|
type: string
|
|
RestrictPrivateChannelCreation:
|
|
type: string
|
|
RestrictPublicChannelDeletion:
|
|
type: string
|
|
RestrictPrivateChannelDeletion:
|
|
type: string
|
|
UserStatusAwayTimeout:
|
|
type: integer
|
|
MaxChannelsPerTeam:
|
|
type: integer
|
|
MaxNotificationsPerChannel:
|
|
type: integer
|
|
SqlSettings:
|
|
type: object
|
|
properties:
|
|
DriverName:
|
|
type: string
|
|
DataSource:
|
|
type: string
|
|
DataSourceReplicas:
|
|
type: array
|
|
items:
|
|
type: string
|
|
MaxIdleConns:
|
|
type: integer
|
|
MaxOpenConns:
|
|
type: integer
|
|
Trace:
|
|
type: boolean
|
|
AtRestEncryptKey:
|
|
type: string
|
|
LogSettings:
|
|
type: object
|
|
properties:
|
|
EnableConsole:
|
|
type: boolean
|
|
ConsoleLevel:
|
|
type: string
|
|
EnableFile:
|
|
type: boolean
|
|
FileLevel:
|
|
type: string
|
|
FileLocation:
|
|
type: string
|
|
EnableWebhookDebugging:
|
|
type: boolean
|
|
EnableDiagnostics:
|
|
type: boolean
|
|
PasswordSettings:
|
|
type: object
|
|
properties:
|
|
MinimumLength:
|
|
type: integer
|
|
Lowercase:
|
|
type: boolean
|
|
Number:
|
|
type: boolean
|
|
Uppercase:
|
|
type: boolean
|
|
Symbol:
|
|
type: boolean
|
|
FileSettings:
|
|
type: object
|
|
properties:
|
|
MaxFileSize:
|
|
type: integer
|
|
DriverName:
|
|
type: string
|
|
Directory:
|
|
type: string
|
|
EnablePublicLink:
|
|
type: boolean
|
|
PublicLinkSalt:
|
|
type: string
|
|
ThumbnailWidth:
|
|
type: integer
|
|
ThumbnailHeight:
|
|
type: integer
|
|
PreviewWidth:
|
|
type: integer
|
|
PreviewHeight:
|
|
type: integer
|
|
ProfileWidth:
|
|
type: integer
|
|
ProfileHeight:
|
|
type: integer
|
|
InitialFont:
|
|
type: string
|
|
AmazonS3AccessKeyId:
|
|
type: string
|
|
AmazonS3SecretAccessKey:
|
|
type: string
|
|
AmazonS3Bucket:
|
|
type: string
|
|
AmazonS3Region:
|
|
type: string
|
|
AmazonS3Endpoint:
|
|
type: string
|
|
AmazonS3SSL:
|
|
type: boolean
|
|
EmailSettings:
|
|
type: object
|
|
properties:
|
|
EnableSignUpWithEmail:
|
|
type: boolean
|
|
EnableSignInWithEmail:
|
|
type: boolean
|
|
EnableSignInWithUsername:
|
|
type: boolean
|
|
SendEmailNotifications:
|
|
type: boolean
|
|
RequireEmailVerification:
|
|
type: boolean
|
|
FeedbackName:
|
|
type: string
|
|
FeedbackEmail:
|
|
type: string
|
|
FeedbackOrganization:
|
|
type: string
|
|
SMTPUsername:
|
|
type: string
|
|
SMTPPassword:
|
|
type: string
|
|
SMTPServer:
|
|
type: string
|
|
SMTPPort:
|
|
type: string
|
|
ConnectionSecurity:
|
|
type: string
|
|
InviteSalt:
|
|
type: string
|
|
PasswordResetSalt:
|
|
type: string
|
|
SendPushNotifications:
|
|
type: boolean
|
|
PushNotificationServer:
|
|
type: string
|
|
PushNotificationContents:
|
|
type: string
|
|
EnableEmailBatching:
|
|
type: boolean
|
|
EmailBatchingBufferSize:
|
|
type: integer
|
|
EmailBatchingInterval:
|
|
type: integer
|
|
RateLimitSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
PerSec:
|
|
type: integer
|
|
MaxBurst:
|
|
type: integer
|
|
MemoryStoreSize:
|
|
type: integer
|
|
VaryByRemoteAddr:
|
|
type: boolean
|
|
VaryByHeader:
|
|
type: string
|
|
PrivacySettings:
|
|
type: object
|
|
properties:
|
|
ShowEmailAddress:
|
|
type: boolean
|
|
ShowFullName:
|
|
type: boolean
|
|
SupportSettings:
|
|
type: object
|
|
properties:
|
|
TermsOfServiceLink:
|
|
type: string
|
|
PrivacyPolicyLink:
|
|
type: string
|
|
AboutLink:
|
|
type: string
|
|
HelpLink:
|
|
type: string
|
|
ReportAProblemLink:
|
|
type: string
|
|
SupportEmail:
|
|
type: string
|
|
GitLabSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
Secret:
|
|
type: string
|
|
Id:
|
|
type: string
|
|
Scope:
|
|
type: string
|
|
AuthEndpoint:
|
|
type: string
|
|
TokenEndpoint:
|
|
type: string
|
|
UserApiEndpoint:
|
|
type: string
|
|
GoogleSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
Secret:
|
|
type: string
|
|
Id:
|
|
type: string
|
|
Scope:
|
|
type: string
|
|
AuthEndpoint:
|
|
type: string
|
|
TokenEndpoint:
|
|
type: string
|
|
UserApiEndpoint:
|
|
type: string
|
|
Office365Settings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
Secret:
|
|
type: string
|
|
Id:
|
|
type: string
|
|
Scope:
|
|
type: string
|
|
AuthEndpoint:
|
|
type: string
|
|
TokenEndpoint:
|
|
type: string
|
|
UserApiEndpoint:
|
|
type: string
|
|
LdapSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
LdapServer:
|
|
type: string
|
|
LdapPort:
|
|
type: integer
|
|
ConnectionSecurity:
|
|
type: string
|
|
BaseDN:
|
|
type: string
|
|
BindUsername:
|
|
type: string
|
|
BindPassword:
|
|
type: string
|
|
UserFilter:
|
|
type: string
|
|
FirstNameAttribute:
|
|
type: string
|
|
LastNameAttribute:
|
|
type: string
|
|
EmailAttribute:
|
|
type: string
|
|
UsernameAttribute:
|
|
type: string
|
|
NicknameAttribute:
|
|
type: string
|
|
IdAttribute:
|
|
type: string
|
|
PositionAttribute:
|
|
type: string
|
|
SyncIntervalMinutes:
|
|
type: integer
|
|
SkipCertificateVerification:
|
|
type: boolean
|
|
QueryTimeout:
|
|
type: integer
|
|
MaxPageSize:
|
|
type: integer
|
|
LoginFieldName:
|
|
type: string
|
|
ComplianceSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
Directory:
|
|
type: string
|
|
EnableDaily:
|
|
type: boolean
|
|
LocalizationSettings:
|
|
type: object
|
|
properties:
|
|
DefaultServerLocale:
|
|
type: string
|
|
DefaultClientLocale:
|
|
type: string
|
|
AvailableLocales:
|
|
type: string
|
|
SamlSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
Verify:
|
|
type: boolean
|
|
Encrypt:
|
|
type: boolean
|
|
IdpUrl:
|
|
type: string
|
|
IdpDescriptorUrl:
|
|
type: string
|
|
AssertionConsumerServiceURL:
|
|
type: string
|
|
IdpCertificateFile:
|
|
type: string
|
|
PublicCertificateFile:
|
|
type: string
|
|
PrivateKeyFile:
|
|
type: string
|
|
FirstNameAttribute:
|
|
type: string
|
|
LastNameAttribute:
|
|
type: string
|
|
EmailAttribute:
|
|
type: string
|
|
UsernameAttribute:
|
|
type: string
|
|
NicknameAttribute:
|
|
type: string
|
|
LocaleAttribute:
|
|
type: string
|
|
PositionAttribute:
|
|
type: string
|
|
LoginButtonText:
|
|
type: string
|
|
NativeAppSettings:
|
|
type: object
|
|
properties:
|
|
AppDownloadLink:
|
|
type: string
|
|
AndroidAppDownloadLink:
|
|
type: string
|
|
IosAppDownloadLink:
|
|
type: string
|
|
ClusterSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
InterNodeListenAddress:
|
|
type: string
|
|
InterNodeUrls:
|
|
type: array
|
|
items:
|
|
type: string
|
|
MetricsSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
BlockProfileRate:
|
|
type: integer
|
|
ListenAddress:
|
|
type: string
|
|
AnalyticsSettings:
|
|
type: object
|
|
properties:
|
|
MaxUsersForStatistics:
|
|
type: integer
|
|
EnvironmentConfig:
|
|
type: object
|
|
properties:
|
|
ServiceSettings:
|
|
type: object
|
|
properties:
|
|
SiteURL:
|
|
type: boolean
|
|
ListenAddress:
|
|
type: boolean
|
|
ConnectionSecurity:
|
|
type: boolean
|
|
TLSCertFile:
|
|
type: boolean
|
|
TLSKeyFile:
|
|
type: boolean
|
|
UseLetsEncrypt:
|
|
type: boolean
|
|
LetsEncryptCertificateCacheFile:
|
|
type: boolean
|
|
Forward80To443:
|
|
type: boolean
|
|
ReadTimeout:
|
|
type: boolean
|
|
WriteTimeout:
|
|
type: boolean
|
|
MaximumLoginAttempts:
|
|
type: boolean
|
|
SegmentDeveloperKey:
|
|
type: boolean
|
|
GoogleDeveloperKey:
|
|
type: boolean
|
|
EnableOAuthServiceProvider:
|
|
type: boolean
|
|
EnableIncomingWebhooks:
|
|
type: boolean
|
|
EnableOutgoingWebhooks:
|
|
type: boolean
|
|
EnableCommands:
|
|
type: boolean
|
|
EnableOnlyAdminIntegrations:
|
|
type: boolean
|
|
EnablePostUsernameOverride:
|
|
type: boolean
|
|
EnablePostIconOverride:
|
|
type: boolean
|
|
EnableTesting:
|
|
type: boolean
|
|
EnableDeveloper:
|
|
type: boolean
|
|
EnableSecurityFixAlert:
|
|
type: boolean
|
|
EnableInsecureOutgoingConnections:
|
|
type: boolean
|
|
EnableMultifactorAuthentication:
|
|
type: boolean
|
|
EnforceMultifactorAuthentication:
|
|
type: boolean
|
|
AllowCorsFrom:
|
|
type: boolean
|
|
SessionLengthWebInDays:
|
|
type: boolean
|
|
SessionLengthMobileInDays:
|
|
type: boolean
|
|
SessionLengthSSOInDays:
|
|
type: boolean
|
|
SessionCacheInMinutes:
|
|
type: boolean
|
|
WebsocketSecurePort:
|
|
type: boolean
|
|
WebsocketPort:
|
|
type: boolean
|
|
WebserverMode:
|
|
type: boolean
|
|
EnableCustomEmoji:
|
|
type: boolean
|
|
RestrictCustomEmojiCreation:
|
|
type: boolean
|
|
TeamSettings:
|
|
type: object
|
|
properties:
|
|
SiteName:
|
|
type: boolean
|
|
MaxUsersPerTeam:
|
|
type: boolean
|
|
EnableTeamCreation:
|
|
type: boolean
|
|
EnableUserCreation:
|
|
type: boolean
|
|
EnableOpenServer:
|
|
type: boolean
|
|
RestrictCreationToDomains:
|
|
type: boolean
|
|
EnableCustomBrand:
|
|
type: boolean
|
|
CustomBrandText:
|
|
type: boolean
|
|
CustomDescriptionText:
|
|
type: boolean
|
|
RestrictDirectMessage:
|
|
type: boolean
|
|
RestrictTeamInvite:
|
|
type: boolean
|
|
RestrictPublicChannelManagement:
|
|
type: boolean
|
|
RestrictPrivateChannelManagement:
|
|
type: boolean
|
|
RestrictPublicChannelCreation:
|
|
type: boolean
|
|
RestrictPrivateChannelCreation:
|
|
type: boolean
|
|
RestrictPublicChannelDeletion:
|
|
type: boolean
|
|
RestrictPrivateChannelDeletion:
|
|
type: boolean
|
|
UserStatusAwayTimeout:
|
|
type: boolean
|
|
MaxChannelsPerTeam:
|
|
type: boolean
|
|
MaxNotificationsPerChannel:
|
|
type: boolean
|
|
SqlSettings:
|
|
type: object
|
|
properties:
|
|
DriverName:
|
|
type: boolean
|
|
DataSource:
|
|
type: boolean
|
|
DataSourceReplicas:
|
|
type: boolean
|
|
MaxIdleConns:
|
|
type: boolean
|
|
MaxOpenConns:
|
|
type: boolean
|
|
Trace:
|
|
type: boolean
|
|
AtRestEncryptKey:
|
|
type: boolean
|
|
LogSettings:
|
|
type: object
|
|
properties:
|
|
EnableConsole:
|
|
type: boolean
|
|
ConsoleLevel:
|
|
type: boolean
|
|
EnableFile:
|
|
type: boolean
|
|
FileLevel:
|
|
type: boolean
|
|
FileLocation:
|
|
type: boolean
|
|
EnableWebhookDebugging:
|
|
type: boolean
|
|
EnableDiagnostics:
|
|
type: boolean
|
|
PasswordSettings:
|
|
type: object
|
|
properties:
|
|
MinimumLength:
|
|
type: boolean
|
|
Lowercase:
|
|
type: boolean
|
|
Number:
|
|
type: boolean
|
|
Uppercase:
|
|
type: boolean
|
|
Symbol:
|
|
type: boolean
|
|
FileSettings:
|
|
type: object
|
|
properties:
|
|
MaxFileSize:
|
|
type: boolean
|
|
DriverName:
|
|
type: boolean
|
|
Directory:
|
|
type: boolean
|
|
EnablePublicLink:
|
|
type: boolean
|
|
PublicLinkSalt:
|
|
type: boolean
|
|
ThumbnailWidth:
|
|
type: boolean
|
|
ThumbnailHeight:
|
|
type: boolean
|
|
PreviewWidth:
|
|
type: boolean
|
|
PreviewHeight:
|
|
type: boolean
|
|
ProfileWidth:
|
|
type: boolean
|
|
ProfileHeight:
|
|
type: boolean
|
|
InitialFont:
|
|
type: boolean
|
|
AmazonS3AccessKeyId:
|
|
type: boolean
|
|
AmazonS3SecretAccessKey:
|
|
type: boolean
|
|
AmazonS3Bucket:
|
|
type: boolean
|
|
AmazonS3Region:
|
|
type: boolean
|
|
AmazonS3Endpoint:
|
|
type: boolean
|
|
AmazonS3SSL:
|
|
type: boolean
|
|
EmailSettings:
|
|
type: object
|
|
properties:
|
|
EnableSignUpWithEmail:
|
|
type: boolean
|
|
EnableSignInWithEmail:
|
|
type: boolean
|
|
EnableSignInWithUsername:
|
|
type: boolean
|
|
SendEmailNotifications:
|
|
type: boolean
|
|
RequireEmailVerification:
|
|
type: boolean
|
|
FeedbackName:
|
|
type: boolean
|
|
FeedbackEmail:
|
|
type: boolean
|
|
FeedbackOrganization:
|
|
type: boolean
|
|
SMTPUsername:
|
|
type: boolean
|
|
SMTPPassword:
|
|
type: boolean
|
|
SMTPServer:
|
|
type: boolean
|
|
SMTPPort:
|
|
type: boolean
|
|
ConnectionSecurity:
|
|
type: boolean
|
|
InviteSalt:
|
|
type: boolean
|
|
PasswordResetSalt:
|
|
type: boolean
|
|
SendPushNotifications:
|
|
type: boolean
|
|
PushNotificationServer:
|
|
type: boolean
|
|
PushNotificationContents:
|
|
type: boolean
|
|
EnableEmailBatching:
|
|
type: boolean
|
|
EmailBatchingBufferSize:
|
|
type: boolean
|
|
EmailBatchingInterval:
|
|
type: boolean
|
|
RateLimitSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
PerSec:
|
|
type: boolean
|
|
MaxBurst:
|
|
type: boolean
|
|
MemoryStoreSize:
|
|
type: boolean
|
|
VaryByRemoteAddr:
|
|
type: boolean
|
|
VaryByHeader:
|
|
type: boolean
|
|
PrivacySettings:
|
|
type: object
|
|
properties:
|
|
ShowEmailAddress:
|
|
type: boolean
|
|
ShowFullName:
|
|
type: boolean
|
|
SupportSettings:
|
|
type: object
|
|
properties:
|
|
TermsOfServiceLink:
|
|
type: boolean
|
|
PrivacyPolicyLink:
|
|
type: boolean
|
|
AboutLink:
|
|
type: boolean
|
|
HelpLink:
|
|
type: boolean
|
|
ReportAProblemLink:
|
|
type: boolean
|
|
SupportEmail:
|
|
type: boolean
|
|
GitLabSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
Secret:
|
|
type: boolean
|
|
Id:
|
|
type: boolean
|
|
Scope:
|
|
type: boolean
|
|
AuthEndpoint:
|
|
type: boolean
|
|
TokenEndpoint:
|
|
type: boolean
|
|
UserApiEndpoint:
|
|
type: boolean
|
|
GoogleSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
Secret:
|
|
type: boolean
|
|
Id:
|
|
type: boolean
|
|
Scope:
|
|
type: boolean
|
|
AuthEndpoint:
|
|
type: boolean
|
|
TokenEndpoint:
|
|
type: boolean
|
|
UserApiEndpoint:
|
|
type: boolean
|
|
Office365Settings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
Secret:
|
|
type: boolean
|
|
Id:
|
|
type: boolean
|
|
Scope:
|
|
type: boolean
|
|
AuthEndpoint:
|
|
type: boolean
|
|
TokenEndpoint:
|
|
type: boolean
|
|
UserApiEndpoint:
|
|
type: boolean
|
|
LdapSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
LdapServer:
|
|
type: boolean
|
|
LdapPort:
|
|
type: boolean
|
|
ConnectionSecurity:
|
|
type: boolean
|
|
BaseDN:
|
|
type: boolean
|
|
BindUsername:
|
|
type: boolean
|
|
BindPassword:
|
|
type: boolean
|
|
UserFilter:
|
|
type: boolean
|
|
FirstNameAttribute:
|
|
type: boolean
|
|
LastNameAttribute:
|
|
type: boolean
|
|
EmailAttribute:
|
|
type: boolean
|
|
UsernameAttribute:
|
|
type: boolean
|
|
NicknameAttribute:
|
|
type: boolean
|
|
IdAttribute:
|
|
type: boolean
|
|
PositionAttribute:
|
|
type: boolean
|
|
SyncIntervalMinutes:
|
|
type: boolean
|
|
SkipCertificateVerification:
|
|
type: boolean
|
|
QueryTimeout:
|
|
type: boolean
|
|
MaxPageSize:
|
|
type: boolean
|
|
LoginFieldName:
|
|
type: boolean
|
|
ComplianceSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
Directory:
|
|
type: boolean
|
|
EnableDaily:
|
|
type: boolean
|
|
LocalizationSettings:
|
|
type: object
|
|
properties:
|
|
DefaultServerLocale:
|
|
type: boolean
|
|
DefaultClientLocale:
|
|
type: boolean
|
|
AvailableLocales:
|
|
type: boolean
|
|
SamlSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
Verify:
|
|
type: boolean
|
|
Encrypt:
|
|
type: boolean
|
|
IdpUrl:
|
|
type: boolean
|
|
IdpDescriptorUrl:
|
|
type: boolean
|
|
AssertionConsumerServiceURL:
|
|
type: boolean
|
|
IdpCertificateFile:
|
|
type: boolean
|
|
PublicCertificateFile:
|
|
type: boolean
|
|
PrivateKeyFile:
|
|
type: boolean
|
|
FirstNameAttribute:
|
|
type: boolean
|
|
LastNameAttribute:
|
|
type: boolean
|
|
EmailAttribute:
|
|
type: boolean
|
|
UsernameAttribute:
|
|
type: boolean
|
|
NicknameAttribute:
|
|
type: boolean
|
|
LocaleAttribute:
|
|
type: boolean
|
|
PositionAttribute:
|
|
type: boolean
|
|
LoginButtonText:
|
|
type: boolean
|
|
NativeAppSettings:
|
|
type: object
|
|
properties:
|
|
AppDownloadLink:
|
|
type: boolean
|
|
AndroidAppDownloadLink:
|
|
type: boolean
|
|
IosAppDownloadLink:
|
|
type: boolean
|
|
ClusterSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
InterNodeListenAddress:
|
|
type: boolean
|
|
InterNodeUrls:
|
|
type: boolean
|
|
MetricsSettings:
|
|
type: object
|
|
properties:
|
|
Enable:
|
|
type: boolean
|
|
BlockProfileRate:
|
|
type: boolean
|
|
ListenAddress:
|
|
type: boolean
|
|
AnalyticsSettings:
|
|
type: object
|
|
properties:
|
|
MaxUsersForStatistics:
|
|
type: boolean
|
|
SamlCertificateStatus:
|
|
type: object
|
|
properties:
|
|
idp_certificate_file:
|
|
description: Status is good when `true`
|
|
type: boolean
|
|
public_certificate_file:
|
|
description: Status is good when `true`
|
|
type: boolean
|
|
private_key_file:
|
|
description: Status is good when `true`
|
|
type: boolean
|
|
Compliance:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
create_at:
|
|
type: integer
|
|
format: int64
|
|
user_id:
|
|
type: string
|
|
status:
|
|
type: string
|
|
count:
|
|
type: integer
|
|
desc:
|
|
type: string
|
|
type:
|
|
type: string
|
|
start_at:
|
|
type: integer
|
|
format: int64
|
|
end_at:
|
|
type: integer
|
|
format: int64
|
|
keywords:
|
|
type: string
|
|
emails:
|
|
type: string
|
|
ClusterInfo:
|
|
type: array
|
|
properties:
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
description: The unique ID for the node
|
|
type: string
|
|
version:
|
|
description: The server version the node is on
|
|
type: string
|
|
schema_version:
|
|
description: The number of the latest DB migration successfully executed for the node
|
|
type: string
|
|
config_hash:
|
|
description: The hash of the configuration file the node is using
|
|
type: string
|
|
ipaddress:
|
|
description: The IP address of the node
|
|
type: string
|
|
hostname:
|
|
description: The hostname for this node
|
|
type: string
|
|
AppError:
|
|
type: object
|
|
properties:
|
|
status_code:
|
|
type: integer
|
|
id:
|
|
type: string
|
|
message:
|
|
type: string
|
|
request_id:
|
|
type: string
|
|
Status:
|
|
type: object
|
|
properties:
|
|
user_id:
|
|
type: string
|
|
status:
|
|
type: string
|
|
manual:
|
|
type: boolean
|
|
last_activity_at:
|
|
type: integer
|
|
format: int64
|
|
OAuthApp:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: The client id of the application
|
|
client_secret:
|
|
type: string
|
|
description: The client secret of the application
|
|
name:
|
|
type: string
|
|
description: The name of the client application
|
|
description:
|
|
type: string
|
|
description: A short description of the application
|
|
icon_url:
|
|
type: string
|
|
description: A URL to an icon to display with the application
|
|
callback_urls:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: A list of callback URLs for the appliation
|
|
homepage:
|
|
type: string
|
|
description: A link to the website of the application
|
|
is_trusted:
|
|
type: boolean
|
|
description: Set this to `true` to skip asking users for permission
|
|
create_at:
|
|
type: integer
|
|
description: The time of registration for the application
|
|
format: int64
|
|
update_at:
|
|
type: integer
|
|
description: The last time of update for the application
|
|
format: int64
|
|
Job:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: The unique id of the job
|
|
type:
|
|
type: string
|
|
description: The type of job
|
|
create_at:
|
|
type: integer
|
|
description: The time at which the job was created
|
|
format: int64
|
|
start_at:
|
|
type: integer
|
|
description: The time at which the job was started
|
|
format: int64
|
|
last_activity_at:
|
|
type: integer
|
|
description: The last time at which the job had activity
|
|
format: int64
|
|
status:
|
|
type: string
|
|
description: The status of the job
|
|
progress:
|
|
type: integer
|
|
description: The progress (as a percentage) of the job
|
|
data:
|
|
type: object
|
|
description: A freeform data field containing additional information about the job
|
|
UserAccessToken:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: Unique identifier for the token
|
|
token:
|
|
type: string
|
|
description: The token used for authentication
|
|
user_id:
|
|
type: string
|
|
description: The user the token authenticates for
|
|
description:
|
|
type: string
|
|
description: A description of the token usage
|
|
UserAccessTokenSanitized:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: Unique identifier for the token
|
|
user_id:
|
|
type: string
|
|
description: The user the token authenticates for
|
|
description:
|
|
type: string
|
|
description: A description of the token usage
|
|
is_active:
|
|
type: boolean
|
|
description: Indicates whether the token is active
|
|
GlobalDataRetentionPolicy:
|
|
type: object
|
|
properties:
|
|
message_deletion_enabled:
|
|
type: boolean
|
|
description: Indicates whether data retention policy deletion of messages is
|
|
enabled globally.
|
|
file_deletion_enabled:
|
|
type: boolean
|
|
description: Indicates whether data retention policy deletion of file attachments
|
|
is enabled globally.
|
|
message_retention_cutoff:
|
|
type: integer
|
|
description: The current server timestamp before which messages should be deleted.
|
|
file_retention_cutoff:
|
|
type: integer
|
|
description: The current server timestamp before which files should be deleted.
|
|
DataRetentionPolicyWithoutId:
|
|
type: object
|
|
properties:
|
|
display_name:
|
|
type: string
|
|
description: The display name for this retention policy.
|
|
post_duration:
|
|
type: integer
|
|
description: >
|
|
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).
|
|
DataRetentionPolicy:
|
|
allOf:
|
|
- $ref: "#/components/schemas/DataRetentionPolicyWithoutId"
|
|
- type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: The ID of this retention policy.
|
|
DataRetentionPolicyWithTeamAndChannelCounts:
|
|
allOf:
|
|
- $ref: "#/components/schemas/DataRetentionPolicy"
|
|
- type: object
|
|
properties:
|
|
team_count:
|
|
type: integer
|
|
description: The number of teams to which this policy is applied.
|
|
channel_count:
|
|
type: integer
|
|
description: The number of channels to which this policy is applied.
|
|
DataRetentionPolicyWithTeamAndChannelIds:
|
|
allOf:
|
|
- $ref: "#/components/schemas/DataRetentionPolicyWithoutId"
|
|
- type: object
|
|
properties:
|
|
team_ids:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: The IDs of the teams to which this policy should be applied.
|
|
channel_ids:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: The IDs of the channels to which this policy should be applied.
|
|
DataRetentionPolicyCreate:
|
|
allOf:
|
|
- $ref: "#/components/schemas/DataRetentionPolicyWithTeamAndChannelIds"
|
|
required:
|
|
- display_name
|
|
- post_duration
|
|
DataRetentionPolicyForTeam:
|
|
type: object
|
|
properties:
|
|
team_id:
|
|
type: string
|
|
description: The team ID.
|
|
post_duration:
|
|
type: integer
|
|
description: The number of days a message will be retained before being deleted by this policy.
|
|
RetentionPolicyForTeamList:
|
|
type: object
|
|
properties:
|
|
policies:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/DataRetentionPolicyForTeam"
|
|
description: The list of team policies.
|
|
total_count:
|
|
type: integer
|
|
description: The total number of team policies.
|
|
DataRetentionPolicyForChannel:
|
|
type: object
|
|
properties:
|
|
channel_id:
|
|
type: string
|
|
description: The channel ID.
|
|
post_duration:
|
|
type: integer
|
|
description: The number of days a message will be retained before being deleted by this policy.
|
|
RetentionPolicyForChannelList:
|
|
type: object
|
|
properties:
|
|
policies:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/DataRetentionPolicyForChannel"
|
|
description: The list of channel policies.
|
|
total_count:
|
|
type: integer
|
|
description: The total number of channel policies.
|
|
UserNotifyProps:
|
|
type: object
|
|
properties:
|
|
email:
|
|
type: string
|
|
description: Set to "true" to enable email notifications, "false" to disable.
|
|
Defaults to "true".
|
|
push:
|
|
type: string
|
|
description: Set to "all" to receive push notifications for all activity,
|
|
"mention" for mentions and direct messages only, and "none" to
|
|
disable. Defaults to "mention".
|
|
desktop:
|
|
type: string
|
|
description: Set to "all" to receive desktop notifications for all activity,
|
|
"mention" for mentions and direct messages only, and "none" to
|
|
disable. Defaults to "all".
|
|
desktop_sound:
|
|
type: string
|
|
description: Set to "true" to enable sound on desktop notifications, "false" to
|
|
disable. Defaults to "true".
|
|
mention_keys:
|
|
type: string
|
|
description: A comma-separated list of words to count as mentions. Defaults to
|
|
username and @username.
|
|
channel:
|
|
type: string
|
|
description: Set to "true" to enable channel-wide notifications (@channel, @all,
|
|
etc.), "false" to disable. Defaults to "true".
|
|
first_name:
|
|
type: string
|
|
description: Set to "true" to enable mentions for first name. Defaults to "true"
|
|
if a first name is set, "false" otherwise.
|
|
Timezone:
|
|
type: object
|
|
properties:
|
|
useAutomaticTimezone:
|
|
type: boolean
|
|
description: Set to "true" to use the browser/system timezone, "false" to set
|
|
manually. Defaults to "true".
|
|
manualTimezone:
|
|
type: string
|
|
description: Value when setting manually the timezone, i.e. "Europe/Berlin".
|
|
automaticTimezone:
|
|
type: string
|
|
description: This value is set automatically when the "useAutomaticTimezone" is
|
|
set to "true".
|
|
ChannelNotifyProps:
|
|
type: object
|
|
properties:
|
|
email:
|
|
type: string
|
|
description: Set to "true" to enable email notifications, "false" to disable, or
|
|
"default" to use the global user notification setting.
|
|
push:
|
|
type: string
|
|
description: 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.
|
|
desktop:
|
|
type: string
|
|
description: 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.
|
|
mark_unread:
|
|
type: string
|
|
description: Set to "all" to mark the channel unread for any new message,
|
|
"mention" to mark unread for new mentions only. Defaults to "all".
|
|
PluginManifest:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: Globally unique identifier that represents the plugin.
|
|
name:
|
|
type: string
|
|
description: Name of the plugin.
|
|
description:
|
|
type: string
|
|
description: Description of what the plugin is and does.
|
|
version:
|
|
type: string
|
|
description: Version number of the plugin.
|
|
min_server_version:
|
|
type: string
|
|
description: |
|
|
The minimum Mattermost server version required for the plugin.
|
|
|
|
Available as server version 5.6.
|
|
backend:
|
|
type: object
|
|
description: Deprecated in Mattermost 5.2 release.
|
|
properties:
|
|
executable:
|
|
type: string
|
|
description: Path to the executable binary.
|
|
server:
|
|
type: object
|
|
properties:
|
|
executables:
|
|
type: object
|
|
description: Paths to executable binaries, specifying multiple entry points
|
|
for different platforms when bundled together in a single
|
|
plugin.
|
|
properties:
|
|
linux-amd64:
|
|
type: string
|
|
darwin-amd64:
|
|
type: string
|
|
windows-amd64:
|
|
type: string
|
|
executable:
|
|
type: string
|
|
description: Path to the executable binary.
|
|
webapp:
|
|
type: object
|
|
properties:
|
|
bundle_path:
|
|
type: string
|
|
description: Path to the webapp JavaScript bundle.
|
|
settings_schema:
|
|
type: object
|
|
description: Settings schema used to define the System Console UI for the plugin.
|
|
MarketplacePlugin:
|
|
type: object
|
|
properties:
|
|
homepage_url:
|
|
type: string
|
|
description: URL that leads to the homepage of the plugin.
|
|
icon_data:
|
|
type: string
|
|
description: Base64 encoding of a plugin icon SVG.
|
|
download_url:
|
|
type: string
|
|
description: URL to download the plugin.
|
|
release_notes_url:
|
|
type: string
|
|
description: URL that leads to the release notes of the plugin.
|
|
labels:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: A list of the plugin labels.
|
|
signature:
|
|
type: string
|
|
description: Base64 encoded signature of the plugin.
|
|
manifest:
|
|
$ref: "#/components/schemas/PluginManifest"
|
|
installed_version:
|
|
type: string
|
|
description: Version number of the already installed plugin, if any.
|
|
PushNotification:
|
|
type: object
|
|
properties:
|
|
ack_id:
|
|
type: string
|
|
platform:
|
|
type: string
|
|
server_id:
|
|
type: string
|
|
device_id:
|
|
type: string
|
|
post_id:
|
|
type: string
|
|
category:
|
|
type: string
|
|
sound:
|
|
type: string
|
|
message:
|
|
type: string
|
|
badge:
|
|
type: number
|
|
cont_ava:
|
|
type: number
|
|
team_id:
|
|
type: string
|
|
channel_id:
|
|
type: string
|
|
root_id:
|
|
type: string
|
|
channel_name:
|
|
type: string
|
|
type:
|
|
type: string
|
|
sender_id:
|
|
type: string
|
|
sender_name:
|
|
type: string
|
|
override_username:
|
|
type: string
|
|
override_icon_url:
|
|
type: string
|
|
from_webhook:
|
|
type: string
|
|
version:
|
|
type: string
|
|
is_id_loaded:
|
|
type: boolean
|
|
PluginStatus:
|
|
type: object
|
|
properties:
|
|
plugin_id:
|
|
type: string
|
|
description: Globally unique identifier that represents the plugin.
|
|
name:
|
|
type: string
|
|
description: Name of the plugin.
|
|
description:
|
|
type: string
|
|
description: Description of what the plugin is and does.
|
|
version:
|
|
type: string
|
|
description: Version number of the plugin.
|
|
cluster_id:
|
|
type: string
|
|
description: ID of the cluster in which plugin is running
|
|
plugin_path:
|
|
type: string
|
|
description: Path to the plugin on the server
|
|
state:
|
|
type: number
|
|
description: State of the plugin
|
|
enum:
|
|
- NotRunning
|
|
- Starting
|
|
- Running
|
|
- FailedToStart
|
|
- FailedToStayRunning
|
|
- Stopping
|
|
|
|
|
|
PluginManifestWebapp:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: Globally unique identifier that represents the plugin.
|
|
version:
|
|
type: string
|
|
description: Version number of the plugin.
|
|
webapp:
|
|
type: object
|
|
properties:
|
|
bundle_path:
|
|
type: string
|
|
description: Path to the webapp JavaScript bundle.
|
|
Role:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: The unique identifier of the role.
|
|
name:
|
|
type: string
|
|
description: The unique name of the role, used when assigning roles to
|
|
users/groups in contexts.
|
|
display_name:
|
|
type: string
|
|
description: The human readable name for the role.
|
|
description:
|
|
type: string
|
|
description: A human readable description of the role.
|
|
permissions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: A list of the unique names of the permissions this role grants.
|
|
scheme_managed:
|
|
type: boolean
|
|
description: indicates if this role is managed by a scheme (true), or is a custom
|
|
stand-alone role (false).
|
|
Scheme:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: The unique identifier of the scheme.
|
|
name:
|
|
type: string
|
|
description: The human readable name for the scheme.
|
|
description:
|
|
type: string
|
|
description: A human readable description of the scheme.
|
|
create_at:
|
|
type: integer
|
|
format: int64
|
|
description: The time at which the scheme was created.
|
|
update_at:
|
|
type: integer
|
|
format: int64
|
|
description: The time at which the scheme was last updated.
|
|
delete_at:
|
|
type: integer
|
|
format: int64
|
|
description: The time at which the scheme was deleted.
|
|
scope:
|
|
type: string
|
|
description: The scope to which this scheme can be applied, either "team" or
|
|
"channel".
|
|
default_team_admin_role:
|
|
type: string
|
|
description: The id of the default team admin role for this scheme.
|
|
default_team_user_role:
|
|
type: string
|
|
description: The id of the default team user role for this scheme.
|
|
default_channel_admin_role:
|
|
type: string
|
|
description: The id of the default channel admin role for this scheme.
|
|
default_channel_user_role:
|
|
type: string
|
|
description: The id of the default channel user role for this scheme.
|
|
TermsOfService:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: The unique identifier of the terms of service.
|
|
create_at:
|
|
type: integer
|
|
format: int64
|
|
description: The time at which the terms of service was created.
|
|
user_id:
|
|
type: string
|
|
description: The unique identifier of the user who created these terms of service.
|
|
text:
|
|
type: string
|
|
description: The text of terms of service. Supports Markdown.
|
|
UserTermsOfService:
|
|
type: object
|
|
properties:
|
|
user_id:
|
|
type: string
|
|
description: The unique identifier of the user who performed this terms of
|
|
service action.
|
|
terms_of_service_id:
|
|
type: string
|
|
description: The unique identifier of the terms of service the action was
|
|
performed on.
|
|
create_at:
|
|
description: The time in milliseconds that this action was performed.
|
|
type: integer
|
|
format: int64
|
|
PostIdToReactionsMap:
|
|
type: object
|
|
additionalProperties:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/Reaction"
|
|
Product:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
name:
|
|
type: string
|
|
description:
|
|
type: string
|
|
price_per_seat:
|
|
type: string
|
|
add_ons:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/AddOn"
|
|
AddOn:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
name:
|
|
type: string
|
|
display_name:
|
|
type: string
|
|
price_per_seat:
|
|
type: string
|
|
ProductLimits:
|
|
type: object
|
|
properties:
|
|
boards:
|
|
$ref: "#/components/schemas/BoardsLimits"
|
|
nullable: true
|
|
files:
|
|
$ref: "#/components/schemas/FilesLimits"
|
|
nullable: true
|
|
integrations:
|
|
$ref: "#/components/schemas/IntegrationsLimits"
|
|
nullable: true
|
|
messages:
|
|
$ref: "#/components/schemas/MessagesLimits"
|
|
nullable: true
|
|
teams:
|
|
$ref: "#/components/schemas/TeamsLimits"
|
|
nullable: true
|
|
BoardsLimits:
|
|
type: object
|
|
properties:
|
|
cards:
|
|
type: integer
|
|
nullable: true
|
|
views:
|
|
type: integer
|
|
nullable: true
|
|
FilesLimits:
|
|
type: object
|
|
properties:
|
|
total_storage:
|
|
type: integer
|
|
format: int64
|
|
nullable: true
|
|
IntegrationsLimits:
|
|
type: object
|
|
properties:
|
|
enabled:
|
|
type: integer
|
|
nullable: true
|
|
MessagesLimits:
|
|
type: object
|
|
properties:
|
|
history:
|
|
type: integer
|
|
nullable: true
|
|
TeamsLimits:
|
|
type: object
|
|
properties:
|
|
active:
|
|
type: integer
|
|
nullable: true
|
|
PaymentSetupIntent:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
client_secret:
|
|
type: string
|
|
PaymentMethod:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
last_four:
|
|
type: integer
|
|
exp_month:
|
|
type: integer
|
|
exp_year:
|
|
type: integer
|
|
card_brand:
|
|
type: string
|
|
name:
|
|
type: string
|
|
Address:
|
|
type: object
|
|
properties:
|
|
city:
|
|
type: string
|
|
country:
|
|
type: string
|
|
line1:
|
|
type: string
|
|
line2:
|
|
type: string
|
|
postal_code:
|
|
type: string
|
|
state:
|
|
type: string
|
|
CloudCustomer:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
creator_id:
|
|
type: string
|
|
create_at:
|
|
type: integer
|
|
format: int64
|
|
email:
|
|
type: string
|
|
name:
|
|
type: string
|
|
num_employees:
|
|
type: string
|
|
contact_first_name:
|
|
type: string
|
|
contact_last_name:
|
|
type: string
|
|
billing_address:
|
|
$ref: "#/components/schemas/Address"
|
|
company_address:
|
|
$ref: "#/components/schemas/Address"
|
|
payment_method:
|
|
$ref: "#/components/schemas/PaymentMethod"
|
|
Subscription:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
customer_id:
|
|
type: string
|
|
product_id:
|
|
type: string
|
|
add_ons:
|
|
type: array
|
|
items:
|
|
type: string
|
|
start_at:
|
|
type: integer
|
|
format: int64
|
|
end_at:
|
|
type: integer
|
|
format: int64
|
|
create_at:
|
|
type: integer
|
|
format: int64
|
|
seats:
|
|
type: integer
|
|
dns:
|
|
type: string
|
|
SubscriptionStats:
|
|
type: object
|
|
properties:
|
|
remaining_seats:
|
|
type: integer
|
|
is_paid_tier:
|
|
type: string
|
|
Invoice:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
number:
|
|
type: string
|
|
create_at:
|
|
type: integer
|
|
format: int64
|
|
total:
|
|
type: integer
|
|
format: int64
|
|
tax:
|
|
type: integer
|
|
format: int64
|
|
status:
|
|
type: string
|
|
period_start:
|
|
type: integer
|
|
format: int64
|
|
period_end:
|
|
type: integer
|
|
format: int64
|
|
subscription_id:
|
|
type: string
|
|
item:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/InvoiceLineItem"
|
|
InvoiceLineItem:
|
|
type: object
|
|
properties:
|
|
price_id:
|
|
type: string
|
|
total:
|
|
type: integer
|
|
format: int64
|
|
quantity:
|
|
type: integer
|
|
format: int64
|
|
price_per_unit:
|
|
type: integer
|
|
format: int64
|
|
description:
|
|
type: string
|
|
metadata:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Group:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
name:
|
|
type: string
|
|
display_name:
|
|
type: string
|
|
description:
|
|
type: string
|
|
source:
|
|
type: string
|
|
remote_id:
|
|
type: string
|
|
create_at:
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
type: integer
|
|
format: int64
|
|
has_syncables:
|
|
type: boolean
|
|
GroupSyncableTeam:
|
|
type: object
|
|
properties:
|
|
team_id:
|
|
type: string
|
|
group_id:
|
|
type: string
|
|
auto_add:
|
|
type: boolean
|
|
create_at:
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
type: integer
|
|
format: int64
|
|
GroupSyncableChannel:
|
|
type: object
|
|
properties:
|
|
channel_id:
|
|
type: string
|
|
group_id:
|
|
type: string
|
|
auto_add:
|
|
type: boolean
|
|
create_at:
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
type: integer
|
|
format: int64
|
|
GroupSyncableTeams:
|
|
type: object
|
|
properties:
|
|
team_id:
|
|
type: string
|
|
team_display_name:
|
|
type: string
|
|
team_type:
|
|
type: string
|
|
group_id:
|
|
type: string
|
|
auto_add:
|
|
type: boolean
|
|
create_at:
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
type: integer
|
|
format: int64
|
|
GroupSyncableChannels:
|
|
type: object
|
|
properties:
|
|
channel_id:
|
|
type: string
|
|
channel_display_name:
|
|
type: string
|
|
channel_type:
|
|
type: string
|
|
team_id:
|
|
type: string
|
|
team_display_name:
|
|
type: string
|
|
team_type:
|
|
type: string
|
|
group_id:
|
|
type: string
|
|
auto_add:
|
|
type: boolean
|
|
create_at:
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
type: integer
|
|
format: int64
|
|
ChannelModeration:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
roles:
|
|
$ref: "#/components/schemas/ChannelModeratedRoles"
|
|
ChannelModeratedRoles:
|
|
type: object
|
|
properties:
|
|
guests:
|
|
$ref: "#/components/schemas/ChannelModeratedRole"
|
|
members:
|
|
$ref: "#/components/schemas/ChannelModeratedRole"
|
|
ChannelModeratedRole:
|
|
type: object
|
|
properties:
|
|
value:
|
|
type: boolean
|
|
enabled:
|
|
type: boolean
|
|
ChannelModeratedRolesPatch:
|
|
type: object
|
|
properties:
|
|
guests:
|
|
type: boolean
|
|
members:
|
|
type: boolean
|
|
ChannelModerationPatch:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
roles:
|
|
$ref: "#/components/schemas/ChannelModeratedRolesPatch"
|
|
ChannelMemberCountByGroup:
|
|
description: An object describing group member information in a channel
|
|
type: object
|
|
properties:
|
|
group_id:
|
|
type: string
|
|
description: ID of the group
|
|
channel_member_count:
|
|
type: number
|
|
description: Total number of group members in the channel
|
|
channel_member_timezones_count:
|
|
type: number
|
|
description: Total number of unique timezones for the group members in the channel
|
|
LDAPGroupsPaged:
|
|
description: A paged list of LDAP groups
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: number
|
|
description: Total number of groups
|
|
groups:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/LDAPGroup"
|
|
LDAPGroup:
|
|
description: A LDAP group
|
|
type: object
|
|
properties:
|
|
has_syncables:
|
|
type: boolean
|
|
mattermost_group_id:
|
|
type: string
|
|
primary_key:
|
|
type: string
|
|
name:
|
|
type: string
|
|
SidebarCategory:
|
|
description: User's sidebar category
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
user_id:
|
|
type: string
|
|
team_id:
|
|
type: string
|
|
display_name:
|
|
type: string
|
|
type:
|
|
type: string
|
|
enum:
|
|
- channels
|
|
- custom
|
|
- direct_messages
|
|
- favorites
|
|
SidebarCategoryWithChannels:
|
|
description: User's sidebar category with it's channels
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
user_id:
|
|
type: string
|
|
team_id:
|
|
type: string
|
|
display_name:
|
|
type: string
|
|
type:
|
|
type: string
|
|
enum:
|
|
- channels
|
|
- custom
|
|
- direct_messages
|
|
- favorites
|
|
channel_ids:
|
|
type: array
|
|
items:
|
|
type: string
|
|
OrderedSidebarCategories:
|
|
description: List of user's categories with their channels
|
|
type: object
|
|
properties:
|
|
order:
|
|
type: array
|
|
items:
|
|
type: string
|
|
categories:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/SidebarCategoryWithChannels"
|
|
Bot:
|
|
description: A bot account
|
|
type: object
|
|
properties:
|
|
user_id:
|
|
description: The user id of the associated user entry.
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds a bot was created
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
description: The time in milliseconds a bot was last updated
|
|
type: integer
|
|
format: int64
|
|
delete_at:
|
|
description: The time in milliseconds a bot was deleted
|
|
type: integer
|
|
format: int64
|
|
username:
|
|
type: string
|
|
display_name:
|
|
type: string
|
|
description:
|
|
type: string
|
|
owner_id:
|
|
description: The user id of the user that currently owns this bot.
|
|
type: string
|
|
Server_Busy:
|
|
type: object
|
|
properties:
|
|
busy:
|
|
description: True if the server is marked as busy (under high load)
|
|
type: boolean
|
|
expires:
|
|
description: timestamp - number of seconds since Jan 1, 1970 UTC.
|
|
type: integer
|
|
format: int64
|
|
GroupWithSchemeAdmin:
|
|
description: group augmented with scheme admin information
|
|
type: object
|
|
properties:
|
|
group:
|
|
$ref: "#/components/schemas/Group"
|
|
scheme_admin:
|
|
type: boolean
|
|
GroupsAssociatedToChannels:
|
|
description: a map of channel id(s) to the set of groups that constrain the corresponding channel in a team
|
|
type: object
|
|
additionalProperties:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/GroupWithSchemeAdmin"
|
|
|
|
OrphanedRecord:
|
|
description: an object containing information about an orphaned record.
|
|
type: object
|
|
properties:
|
|
parent_id:
|
|
type: string
|
|
description: the id of the parent relation (table) entry.
|
|
child_id:
|
|
type: string
|
|
description: the id of the child relation (table) entry.
|
|
UserThread:
|
|
description: a thread that user is following
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: ID of the post that is this thread's root
|
|
reply_count:
|
|
type: integer
|
|
description: number of replies in this thread
|
|
last_reply_at:
|
|
type: integer
|
|
format: int64
|
|
description: timestamp of the last post to this thread
|
|
last_viewed_at:
|
|
type: integer
|
|
format: int64
|
|
description: timestamp of the last time the user viewed this thread
|
|
participants:
|
|
type: array
|
|
description: list of users participating in this thread. only includes IDs unless 'extended' was set to 'true'
|
|
items:
|
|
$ref: "#/components/schemas/Post"
|
|
post:
|
|
$ref: "#/components/schemas/Post"
|
|
RelationalIntegrityCheckData:
|
|
description: an object containing the results of a relational integrity check.
|
|
type: object
|
|
properties:
|
|
parent_name:
|
|
type: string
|
|
description: the name of the parent relation (table).
|
|
child_name:
|
|
type: string
|
|
description: the name of the child relation (table).
|
|
parent_id_attr:
|
|
type: string
|
|
description: the name of the attribute (column) containing the parent id.
|
|
child_id_attr:
|
|
type: string
|
|
description: the name of the attribute (column) containing the child id.
|
|
records:
|
|
description: the list of orphaned records found.
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/OrphanedRecord"
|
|
IntegrityCheckResult:
|
|
description: an object with the result of the integrity check.
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: "#/components/schemas/RelationalIntegrityCheckData"
|
|
err:
|
|
type: string
|
|
description: a string value set in case of error.
|
|
UploadSession:
|
|
description: an object containing information used to keep track of a file upload.
|
|
type: object
|
|
properties:
|
|
id:
|
|
description: The unique identifier for the upload.
|
|
type: string
|
|
type:
|
|
description: The type of the upload.
|
|
type: string
|
|
enum:
|
|
- attachment
|
|
- import
|
|
create_at:
|
|
description: The time the upload was created in milliseconds.
|
|
type: integer
|
|
format: int64
|
|
user_id:
|
|
description: The ID of the user performing the upload.
|
|
type: string
|
|
channel_id:
|
|
description: The ID of the channel to upload to.
|
|
type: string
|
|
filename:
|
|
description: The name of the file to upload.
|
|
type: string
|
|
file_size:
|
|
description: The size of the file to upload in bytes.
|
|
type: integer
|
|
format: int64
|
|
file_offset:
|
|
description: The amount of data uploaded in bytes.
|
|
type: integer
|
|
format: int64
|
|
Notice:
|
|
type: object
|
|
properties:
|
|
id:
|
|
description: Notice ID
|
|
type: string
|
|
sysAdminOnly:
|
|
description: Does this notice apply only to sysadmins
|
|
type: boolean
|
|
teamAdminOnly:
|
|
description: Does this notice apply only to team admins
|
|
type: boolean
|
|
action:
|
|
description: "Optional action to perform on action button click. (defaults to closing the notice)"
|
|
type: string
|
|
actionParam:
|
|
description: "Optional action parameter. \nExample: {\"action\": \"url\", actionParam: \"/console/some-page\"}"
|
|
type: string
|
|
actionText:
|
|
description: Optional override for the action button text (defaults to OK)
|
|
type: string
|
|
description:
|
|
description: "Notice content. Use {{Mattermost}} instead of plain text to support white-labeling. Text supports Markdown."
|
|
type: string
|
|
image:
|
|
description: URL of image to display
|
|
type: string
|
|
title:
|
|
description: "Notice title. Use {{Mattermost}} instead of plain text to support white-labeling. Text supports Markdown."
|
|
type: string
|
|
SharedChannel:
|
|
type: object
|
|
properties:
|
|
id:
|
|
description: Channel id of the shared channel
|
|
type: string
|
|
team_id:
|
|
type: string
|
|
home:
|
|
description: Is this the home cluster for the shared channel
|
|
type: boolean
|
|
readonly:
|
|
description: Is this shared channel shared as read only
|
|
type: boolean
|
|
name:
|
|
description: Channel name as it is shared (may be different than original channel name)
|
|
type: string
|
|
display_name:
|
|
description: Channel display name as it appears locally
|
|
type: string
|
|
purpose:
|
|
type: string
|
|
header:
|
|
type: string
|
|
creator_id:
|
|
description: Id of the user that shared the channel
|
|
type: string
|
|
create_at:
|
|
description: Time in milliseconds that the channel was shared
|
|
type: integer
|
|
update_at:
|
|
description: Time in milliseconds that the shared channel record was last updated
|
|
type: integer
|
|
remote_id:
|
|
description: Id of the remote cluster where the shared channel is homed
|
|
type: string
|
|
RemoteCluster:
|
|
type: object
|
|
properties:
|
|
remote_id:
|
|
type: string
|
|
remote_team_id:
|
|
type: string
|
|
name:
|
|
type: string
|
|
display_name:
|
|
type: string
|
|
site_url:
|
|
description: URL of the remote cluster
|
|
type: string
|
|
default_team_id:
|
|
description: The team where channels from invites are created
|
|
type: string
|
|
create_at:
|
|
description: Time in milliseconds that the remote cluster was created
|
|
type: integer
|
|
delete_at:
|
|
description: Time in milliseconds that the remote cluster record was deleted
|
|
type: integer
|
|
last_ping_at:
|
|
description: Time in milliseconds when the last ping to the remote cluster was run
|
|
type: integer
|
|
token:
|
|
type: string
|
|
remote_token:
|
|
type: string
|
|
topics:
|
|
type: string
|
|
creator_id:
|
|
type: string
|
|
plugin_id:
|
|
type: string
|
|
options:
|
|
description: A bitmask with a set of option flags
|
|
type: integer
|
|
RemoteClusterInfo:
|
|
type: object
|
|
properties:
|
|
display_name:
|
|
description: The display name for the remote cluster
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds a remote cluster was created
|
|
type: integer
|
|
format: int64
|
|
last_ping_at:
|
|
description: The time in milliseconds a remote cluster was last pinged successfully
|
|
type: integer
|
|
format: int64
|
|
SharedChannelRemote:
|
|
type: object
|
|
properties:
|
|
id:
|
|
description: The id of the shared channel remote
|
|
type: string
|
|
channel_id:
|
|
description: The id of the channel
|
|
type: string
|
|
creator_id:
|
|
description: Id of the user that invited the remote to share the channel
|
|
type: string
|
|
create_at:
|
|
description: Time in milliseconds that the remote was invited to the channel
|
|
type: integer
|
|
update_at:
|
|
description: Time in milliseconds that the shared channel remote record was last updated
|
|
type: integer
|
|
delete_at:
|
|
description: Time in milliseconds that the shared chanenl remote record was deleted
|
|
type: integer
|
|
is_invite_accepted:
|
|
description: Indicates if the invite has been accepted by the remote
|
|
type: boolean
|
|
is_invite_confirmed:
|
|
description: Indicates if the invite has been confirmed by the remote
|
|
type: boolean
|
|
remote_id:
|
|
description: Id of the remote cluster that the channel is shared with
|
|
type: string
|
|
last_post_update_at:
|
|
description: Time in milliseconds of the last post in the channel that was synchronized with the remote update_at
|
|
type: integer
|
|
last_post_id:
|
|
description: Id of the last post in the channel that was synchronized with the remote
|
|
type: string
|
|
last_post_create_at:
|
|
description: Time in milliseconds of the last post in the channel that was synchronized with the remote create_at
|
|
type: string
|
|
last_post_create_id:
|
|
type: string
|
|
SystemStatusResponse:
|
|
type: object
|
|
properties:
|
|
AndroidLatestVersion:
|
|
description: Latest Android version supported
|
|
type: string
|
|
AndroidMinVersion:
|
|
description: Minimum Android version supported
|
|
type: string
|
|
DesktopLatestVersion:
|
|
description: Latest desktop version supported
|
|
type: string
|
|
DesktopMinVersion:
|
|
description: Minimum desktop version supported
|
|
type: string
|
|
IosLatestVersion:
|
|
description: Latest iOS version supported
|
|
type: string
|
|
IosMinVersion:
|
|
description: Minimum iOS version supported
|
|
type: string
|
|
database_status:
|
|
description: Status of database ("OK" or "UNHEALTHY"). Included when get_server_status parameter set.
|
|
type: string
|
|
filestore_status:
|
|
description: Status of filestore ("OK" or "UNHEALTHY"). Included when get_server_status parameter set.
|
|
type: string
|
|
status:
|
|
description: Status of server ("OK" or "UNHEALTHY"). Included when get_server_status parameter set.
|
|
type: string
|
|
CanReceiveNotifications:
|
|
description: Whether the device id provided can receive notifications ("true", "false" or "unknown"). Included when device_id parameter set.
|
|
type: string
|
|
UserThreads:
|
|
type: object
|
|
properties:
|
|
total:
|
|
description: Total number of threads (used for paging)
|
|
type: integer
|
|
threads:
|
|
description: Array of threads
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/UserThread"
|
|
LicenseRenewalLink:
|
|
type: object
|
|
properties:
|
|
renewal_link:
|
|
description: License renewal link
|
|
type: string
|
|
System:
|
|
type: object
|
|
properties:
|
|
name:
|
|
description: System property name
|
|
type: string
|
|
value:
|
|
description: System property value
|
|
type: string
|
|
PostsUsage:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: number
|
|
description: Total no. of posts
|
|
StorageUsage:
|
|
type: object
|
|
properties:
|
|
bytes:
|
|
type: number
|
|
description: Total file storage usage for the instance in bytes rounded down to the most significant digit
|
|
PostAcknowledgement:
|
|
type: object
|
|
properties:
|
|
user_id:
|
|
description: The ID of the user that made this acknowledgement.
|
|
type: string
|
|
post_id:
|
|
description: The ID of the post to which this acknowledgement was made.
|
|
type: string
|
|
acknowledged_at:
|
|
description: The time in milliseconds in which this acknowledgement was made.
|
|
type: integer
|
|
format: int64
|
|
AllowedIPRange:
|
|
type: object
|
|
properties:
|
|
CIDRBlock:
|
|
description: An IP address range in CIDR notation
|
|
type: string
|
|
Description:
|
|
description: A description for the CIDRBlock
|
|
type: string
|
|
UserReport:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds a user was created
|
|
type: integer
|
|
format: int64
|
|
username:
|
|
type: string
|
|
email:
|
|
type: string
|
|
display_name:
|
|
type: string
|
|
description: Calculated display name based on user
|
|
last_login_at:
|
|
description: Last time the user was logged in
|
|
type: integer
|
|
format: int64
|
|
last_status_at:
|
|
description: Last time the user's status was updated
|
|
type: integer
|
|
format: int64
|
|
last_post_date:
|
|
description: Last time the user made a post within the given date range
|
|
type: integer
|
|
format: int64
|
|
days_active:
|
|
description: Total number of days a user posted within the given date range
|
|
type: integer
|
|
total_posts:
|
|
description: Total number of posts made by a user within the given date range
|
|
type: integer
|
|
Installation:
|
|
type: object
|
|
properties:
|
|
id:
|
|
description: A unique identifier
|
|
type: string
|
|
allowed_ip_ranges:
|
|
$ref: "#/components/schemas/AllowedIPRange"
|
|
state:
|
|
description: The current state of the installation
|
|
type: string
|
|
ServerLimits:
|
|
type: object
|
|
properties:
|
|
maxUsersLimit:
|
|
description: The maximum number of users allowed on server
|
|
type: integer
|
|
format: int64
|
|
activeUserCount:
|
|
description: The number of active users in the server
|
|
type: integer
|
|
format: int64
|
|
# Outgoing OAuth Connections
|
|
OutgoingOAuthConnectionGetItem:
|
|
type: object
|
|
properties:
|
|
id:
|
|
description: The unique identifier for the outgoing OAuth connection.
|
|
type: string
|
|
name:
|
|
description: The name of the outgoing OAuth connection.
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds the outgoing OAuth connection was created.
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
description: The time in milliseconds the outgoing OAuth connection was last updated.
|
|
type: integer
|
|
format: int64
|
|
grant_type:
|
|
description: The grant type of the outgoing OAuth connection.
|
|
type: string
|
|
audiences:
|
|
description: The audiences of the outgoing OAuth connection.
|
|
type: string
|
|
OutgoingOAuthConnectionPostItem:
|
|
type: object
|
|
properties:
|
|
name:
|
|
description: The name of the outgoing OAuth connection.
|
|
type: string
|
|
client_id:
|
|
description: The client ID of the outgoing OAuth connection.
|
|
type: string
|
|
client_secret:
|
|
description: The client secret of the outgoing OAuth connection.
|
|
type: string
|
|
credentials_username:
|
|
description: The username of the credentials of the outgoing OAuth connection.
|
|
type: string
|
|
credentials_password:
|
|
description: The password of the credentials of the outgoing OAuth connection.
|
|
type: string
|
|
oauth_token_url:
|
|
description: The OAuth token URL of the outgoing OAuth connection.
|
|
type: string
|
|
grant_type:
|
|
description: The grant type of the outgoing OAuth connection.
|
|
type: string
|
|
audiences:
|
|
description: The audiences of the outgoing OAuth connection.
|
|
type: string
|
|
ScheduledPost:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
create_at:
|
|
description: The time in milliseconds a scheduled post was created
|
|
type: integer
|
|
format: int64
|
|
update_at:
|
|
description: The time in milliseconds a scheduled post was last updated
|
|
type: integer
|
|
format: int64
|
|
user_id:
|
|
type: string
|
|
channel_id:
|
|
type: string
|
|
root_id:
|
|
type: string
|
|
message:
|
|
type: string
|
|
props:
|
|
type: object
|
|
file_ids:
|
|
type: array
|
|
items:
|
|
type: string
|
|
scheduled_at:
|
|
description: The time in milliseconds a scheduled post is scheduled to be sent at
|
|
type: integer
|
|
format: int64
|
|
processed_at:
|
|
description: The time in milliseconds a scheduled post was processed at
|
|
type: integer
|
|
format: int64
|
|
error_code:
|
|
type: string
|
|
description: Explains the error behind why a scheduled post could not have been sent
|
|
metadata:
|
|
$ref: "#/components/schemas/PostMetadata"
|
|
externalDocs:
|
|
description: Find out more about Mattermost
|
|
url: 'https://about.mattermost.com'
|
|
security:
|
|
- bearerAuth: []
|