mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
473 lines
13 KiB
YAML
473 lines
13 KiB
YAML
/api/v4/bots:
|
|
post:
|
|
tags:
|
|
- bots
|
|
summary: Create a bot
|
|
description: |
|
|
Create a new bot account on the system. Username is required.
|
|
##### Permissions
|
|
Must have `create_bot` permission.
|
|
__Minimum server version__: 5.10
|
|
operationId: CreateBot
|
|
requestBody:
|
|
description: Bot to be created
|
|
required: true
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
required:
|
|
- username
|
|
properties:
|
|
username:
|
|
type: string
|
|
display_name:
|
|
type: string
|
|
description:
|
|
type: string
|
|
responses:
|
|
"201":
|
|
description: Bot creation successful
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Bot"
|
|
"400":
|
|
$ref: "#/components/responses/BadRequest"
|
|
"401":
|
|
$ref: "#/components/responses/Unauthorized"
|
|
"403":
|
|
$ref: "#/components/responses/Forbidden"
|
|
get:
|
|
tags:
|
|
- bots
|
|
summary: Get bots
|
|
description: >
|
|
Get a page of a list of bots.
|
|
|
|
##### Permissions
|
|
|
|
Must have `read_bots` permission for bots you are managing, and `read_others_bots` permission for bots others are managing.
|
|
|
|
__Minimum server version__: 5.10
|
|
operationId: GetBots
|
|
parameters:
|
|
- name: page
|
|
in: query
|
|
description: The page to select.
|
|
schema:
|
|
type: integer
|
|
default: 0
|
|
- name: per_page
|
|
in: query
|
|
description: The number of users per page.
|
|
schema:
|
|
type: integer
|
|
default: 60
|
|
- name: include_deleted
|
|
in: query
|
|
description: If deleted bots should be returned.
|
|
schema:
|
|
type: boolean
|
|
- name: only_orphaned
|
|
in: query
|
|
description: When true, only orphaned bots will be returned. A bot is considered
|
|
orphaned if its owner has been deactivated.
|
|
schema:
|
|
type: boolean
|
|
responses:
|
|
"200":
|
|
description: Bot page retrieval successful
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/Bot"
|
|
"400":
|
|
$ref: "#/components/responses/BadRequest"
|
|
"401":
|
|
$ref: "#/components/responses/Unauthorized"
|
|
"403":
|
|
$ref: "#/components/responses/Forbidden"
|
|
"/api/v4/bots/{bot_user_id}":
|
|
put:
|
|
tags:
|
|
- bots
|
|
summary: Patch a bot
|
|
description: >
|
|
Partially update a bot by providing only the fields you want to update.
|
|
Omitted fields will not be updated. The fields that can be updated are
|
|
defined in the request body, all other provided fields will be ignored.
|
|
|
|
##### Permissions
|
|
|
|
Must have `manage_bots` permission.
|
|
|
|
__Minimum server version__: 5.10
|
|
operationId: PatchBot
|
|
parameters:
|
|
- name: bot_user_id
|
|
in: path
|
|
description: Bot user ID
|
|
required: true
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
description: Bot to be created
|
|
required: true
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
required:
|
|
- username
|
|
properties:
|
|
username:
|
|
type: string
|
|
display_name:
|
|
type: string
|
|
description:
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Bot patch successful
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Bot"
|
|
"400":
|
|
$ref: "#/components/responses/BadRequest"
|
|
"401":
|
|
$ref: "#/components/responses/Unauthorized"
|
|
"403":
|
|
$ref: "#/components/responses/Forbidden"
|
|
get:
|
|
tags:
|
|
- bots
|
|
summary: Get a bot
|
|
description: >
|
|
Get a bot specified by its bot id.
|
|
|
|
##### Permissions
|
|
|
|
Must have `read_bots` permission for bots you are managing, and `read_others_bots` permission for bots others are managing.
|
|
|
|
__Minimum server version__: 5.10
|
|
operationId: GetBot
|
|
parameters:
|
|
- name: bot_user_id
|
|
in: path
|
|
description: Bot user ID
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: include_deleted
|
|
in: query
|
|
description: If deleted bots should be returned.
|
|
schema:
|
|
type: boolean
|
|
responses:
|
|
"200":
|
|
description: Bot successfully retrieved.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Bot"
|
|
"400":
|
|
$ref: "#/components/responses/BadRequest"
|
|
"401":
|
|
$ref: "#/components/responses/Unauthorized"
|
|
"403":
|
|
$ref: "#/components/responses/Forbidden"
|
|
"/api/v4/bots/{bot_user_id}/disable":
|
|
post:
|
|
tags:
|
|
- bots
|
|
summary: Disable a bot
|
|
description: |
|
|
Disable a bot.
|
|
##### Permissions
|
|
Must have `manage_bots` permission.
|
|
__Minimum server version__: 5.10
|
|
operationId: DisableBot
|
|
parameters:
|
|
- name: bot_user_id
|
|
in: path
|
|
description: Bot user ID
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Bot successfully disabled.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Bot"
|
|
"400":
|
|
$ref: "#/components/responses/BadRequest"
|
|
"401":
|
|
$ref: "#/components/responses/Unauthorized"
|
|
"403":
|
|
$ref: "#/components/responses/Forbidden"
|
|
"/api/v4/bots/{bot_user_id}/enable":
|
|
post:
|
|
tags:
|
|
- bots
|
|
summary: Enable a bot
|
|
description: |
|
|
Enable a bot.
|
|
##### Permissions
|
|
Must have `manage_bots` permission.
|
|
__Minimum server version__: 5.10
|
|
operationId: EnableBot
|
|
parameters:
|
|
- name: bot_user_id
|
|
in: path
|
|
description: Bot user ID
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Bot successfully enabled.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Bot"
|
|
"400":
|
|
$ref: "#/components/responses/BadRequest"
|
|
"401":
|
|
$ref: "#/components/responses/Unauthorized"
|
|
"403":
|
|
$ref: "#/components/responses/Forbidden"
|
|
"/api/v4/bots/{bot_user_id}/assign/{user_id}":
|
|
post:
|
|
tags:
|
|
- bots
|
|
summary: Assign a bot to a user
|
|
description: |
|
|
Assign a bot to a specified user.
|
|
##### Permissions
|
|
Must have `manage_bots` permission.
|
|
__Minimum server version__: 5.10
|
|
operationId: AssignBot
|
|
parameters:
|
|
- name: bot_user_id
|
|
in: path
|
|
description: Bot user ID
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: user_id
|
|
in: path
|
|
description: The user ID to assign the bot to.
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Bot successfully assigned.
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Bot"
|
|
"400":
|
|
$ref: "#/components/responses/BadRequest"
|
|
"401":
|
|
$ref: "#/components/responses/Unauthorized"
|
|
"403":
|
|
$ref: "#/components/responses/Forbidden"
|
|
"/api/v4/bots/{bot_user_id}/icon":
|
|
get:
|
|
tags:
|
|
- bots
|
|
summary: Get bot's LHS icon
|
|
description: |
|
|
Get a bot's LHS icon image based on bot_user_id string parameter.
|
|
##### Permissions
|
|
Must be logged in.
|
|
__Minimum server version__: 5.14
|
|
operationId: GetBotIconImage
|
|
parameters:
|
|
- name: bot_user_id
|
|
in: path
|
|
description: Bot user ID
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Bot's LHS icon image
|
|
"400":
|
|
$ref: "#/components/responses/BadRequest"
|
|
"401":
|
|
$ref: "#/components/responses/Unauthorized"
|
|
"403":
|
|
$ref: "#/components/responses/Forbidden"
|
|
"404":
|
|
$ref: "#/components/responses/NotFound"
|
|
"500":
|
|
$ref: "#/components/responses/InternalServerError"
|
|
"501":
|
|
$ref: "#/components/responses/NotImplemented"
|
|
post:
|
|
tags:
|
|
- bots
|
|
summary: Set bot's LHS icon image
|
|
description: >
|
|
Set a bot's LHS icon image based on bot_user_id string parameter. Icon
|
|
image must be SVG format, all other formats are rejected.
|
|
|
|
##### Permissions
|
|
|
|
Must have `manage_bots` permission.
|
|
|
|
__Minimum server version__: 5.14
|
|
operationId: SetBotIconImage
|
|
parameters:
|
|
- name: bot_user_id
|
|
in: path
|
|
description: Bot user ID
|
|
required: true
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
content:
|
|
multipart/form-data:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
image:
|
|
description: SVG icon image to be uploaded
|
|
type: string
|
|
format: binary
|
|
required:
|
|
- image
|
|
responses:
|
|
"200":
|
|
description: SVG icon image set successful
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/StatusOK"
|
|
"400":
|
|
$ref: "#/components/responses/BadRequest"
|
|
"401":
|
|
$ref: "#/components/responses/Unauthorized"
|
|
"403":
|
|
$ref: "#/components/responses/Forbidden"
|
|
"413":
|
|
$ref: "#/components/responses/TooLarge"
|
|
"500":
|
|
$ref: "#/components/responses/InternalServerError"
|
|
"501":
|
|
$ref: "#/components/responses/NotImplemented"
|
|
delete:
|
|
tags:
|
|
- bots
|
|
summary: Delete bot's LHS icon image
|
|
description: |
|
|
Delete bot's LHS icon image based on bot_user_id string parameter.
|
|
##### Permissions
|
|
Must have `manage_bots` permission.
|
|
__Minimum server version__: 5.14
|
|
operationId: DeleteBotIconImage
|
|
parameters:
|
|
- name: bot_user_id
|
|
in: path
|
|
description: Bot user ID
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Icon image deletion successful
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/StatusOK"
|
|
"400":
|
|
$ref: "#/components/responses/BadRequest"
|
|
"401":
|
|
$ref: "#/components/responses/Unauthorized"
|
|
"403":
|
|
$ref: "#/components/responses/Forbidden"
|
|
"404":
|
|
$ref: "#/components/responses/NotFound"
|
|
"500":
|
|
$ref: "#/components/responses/InternalServerError"
|
|
"501":
|
|
$ref: "#/components/responses/NotImplemented"
|
|
"/api/v4/bots/{bot_user_id}/convert_to_user":
|
|
post:
|
|
tags:
|
|
- bots
|
|
- users
|
|
summary: Convert a bot into a user
|
|
description: |
|
|
Convert a bot into a user.
|
|
|
|
__Minimum server version__: 5.26
|
|
|
|
##### Permissions
|
|
Must have `manage_system` permission.
|
|
operationId: ConvertBotToUser
|
|
parameters:
|
|
- name: bot_user_id
|
|
in: path
|
|
description: Bot user ID
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: set_system_admin
|
|
in: query
|
|
description: Whether to give the user the system admin role.
|
|
schema:
|
|
type: boolean
|
|
default: false
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
email:
|
|
type: string
|
|
username:
|
|
type: string
|
|
password:
|
|
type: string
|
|
first_name:
|
|
type: string
|
|
last_name:
|
|
type: string
|
|
nickname:
|
|
type: string
|
|
locale:
|
|
type: string
|
|
position:
|
|
type: string
|
|
props:
|
|
type: object
|
|
notify_props:
|
|
$ref: "#/components/schemas/UserNotifyProps"
|
|
description: Data to be used in the user creation
|
|
required: true
|
|
responses:
|
|
"200":
|
|
description: Bot successfully converted
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/StatusOK"
|
|
"400":
|
|
$ref: "#/components/responses/BadRequest"
|
|
"401":
|
|
$ref: "#/components/responses/Unauthorized"
|
|
"403":
|
|
$ref: "#/components/responses/Forbidden"
|
|
"404":
|
|
$ref: "#/components/responses/NotFound"
|