openapi: 3.1.0 info: title: Slack Chat API description: >- The Slack Chat API is the set of chat.* methods in the Slack Web API that lets apps and bots create and manage messages in Slack workspaces. It enables posting messages to channels and DMs with Block Kit formatting, sending ephemeral messages visible only to a specific user, replying in threads, scheduling messages for later delivery, updating or deleting existing messages, retrieving permalinks, and providing custom link unfurls. These methods work over HTTP with JSON payloads, use bot/user tokens with scopes like chat:write and chat:write.public, and return metadata such as channel, ts, and thread_ts. Teams use the Chat API to automate notifications, power interactive workflows, and deliver rich conversational experiences inside Slack. paths: /chat.delete: post: tags: - Chat - Deletes - Post description: Deletes a message. externalDocs: description: API method documentation url: https://api.slack.com/methods/chat.delete operationId: postChatDelete parameters: - name: token in: header description: 'Authentication token. Requires scope: `chat:write`' schema: type: string requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: ts: type: number description: Timestamp of the message to be deleted. channel: type: string description: Channel containing the message to be deleted. as_user: type: boolean description: >- Pass true to delete the message as the authed user with `chat:write:user` scope. [Bot users](/bot-users) in this context are considered authed users. If unused or false, the message will be deleted with `chat:write:bot` scope. application/json: schema: type: object properties: ts: type: number description: Timestamp of the message to be deleted. channel: type: string description: Channel containing the message to be deleted. as_user: type: boolean description: >- Pass true to delete the message as the authed user with `chat:write:user` scope. [Bot users](/bot-users) in this context are considered authed users. If unused or false, the message will be deleted with `chat:write:bot` scope. responses: '200': description: Typical success response content: application/json: schema: title: chat.delete success schema required: - channel - ok - ts type: object properties: channel: $ref: '#/components/schemas/defs_channel' ok: $ref: '#/components/schemas/defs_ok_true' ts: $ref: '#/components/schemas/defs_ts' additionalProperties: false description: Schema for successful response of chat.delete method example: channel: C024BE91L ok: true ts: '1401383885.000061' default: description: Typical error response content: application/json: schema: title: chat.delete error schema required: - error - ok type: object properties: callstack: type: string description: 'Note: PHP callstack is only visible in dev/qa' error: type: string enum: - message_not_found - channel_not_found - cant_delete_message - compliance_exports_prevent_deletion - not_authed - invalid_auth - account_inactive - token_revoked - no_permission - invalid_arg_name - invalid_array_arg - invalid_charset - invalid_form_data - invalid_post_type - missing_post_type - team_added_to_org - invalid_json - json_not_object - request_timeout - upgrade_required - fatal_error ok: $ref: '#/components/schemas/defs_ok_false' additionalProperties: false description: Schema for error response from chat.delete method example: error: message_not_found ok: false security: - slackAuth: - chat:write:user - chat:write:bot summary: Slack Post Chat Delete x-api-evangelist-processing: GenerateOperationSummariesFromPath: true PascalCaseOperationSummaries: true CaselCaseOperationIds: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /chat.deleteScheduledMessage: post: tags: - Chat - Post description: Deletes a pending scheduled message from the queue. externalDocs: description: API method documentation url: https://api.slack.com/methods/chat.deleteScheduledMessage operationId: postChatDeletescheduledmessage parameters: - name: token in: header description: 'Authentication token. Requires scope: `chat:write`' required: true schema: type: string requestBody: content: application/x-www-form-urlencoded: schema: required: - channel - scheduled_message_id type: object properties: as_user: type: boolean description: >- Pass true to delete the message as the authed user with `chat:write:user` scope. [Bot users](/bot-users) in this context are considered authed users. If unused or false, the message will be deleted with `chat:write:bot` scope. channel: type: string description: The channel the scheduled_message is posting to scheduled_message_id: type: string description: >- `scheduled_message_id` returned from call to chat.scheduleMessage application/json: schema: required: - channel - scheduled_message_id type: object properties: as_user: type: boolean description: >- Pass true to delete the message as the authed user with `chat:write:user` scope. [Bot users](/bot-users) in this context are considered authed users. If unused or false, the message will be deleted with `chat:write:bot` scope. channel: type: string description: The channel the scheduled_message is posting to scheduled_message_id: type: string description: >- `scheduled_message_id` returned from call to chat.scheduleMessage required: true responses: '200': description: Typical success response content: application/json: schema: title: chat.deleteScheduledMessage schema required: - ok type: object properties: ok: $ref: '#/components/schemas/defs_ok_true' additionalProperties: false description: >- Schema for successful response from chat.deleteScheduledMessage method example: ok: true default: description: Typical error response if no message is found content: application/json: schema: title: chat.deleteScheduledMessage error schema required: - error - ok type: object properties: callstack: type: string description: 'Note: PHP callstack is only visible in dev/qa' error: type: string enum: - invalid_scheduled_message_id - channel_not_found - bad_token - not_authed - invalid_auth - account_inactive - token_revoked - no_permission - org_login_required - ekm_access_denied - missing_scope - invalid_arguments - invalid_arg_name - invalid_charset - invalid_form_data - invalid_post_type - missing_post_type - team_added_to_org - invalid_json - json_not_object - request_timeout - upgrade_required - fatal_error ok: $ref: '#/components/schemas/defs_ok_false' additionalProperties: false description: >- Schema for error response from chat.deleteScheduledMessage method example: error: invalid_scheduled_message_id ok: false security: - slackAuth: - chat:write:user - chat:write:bot summary: Slack Post Chat Deletescheduledmessage x-api-evangelist-processing: GenerateOperationSummariesFromPath: true PascalCaseOperationSummaries: true CaselCaseOperationIds: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /chat.getPermalink: get: tags: - Chat - Get description: Retrieve a permalink URL for a specific extant message externalDocs: description: API method documentation url: https://api.slack.com/methods/chat.getPermalink operationId: getChatGetpermalink parameters: - name: token in: query description: 'Authentication token. Requires scope: `none`' required: true schema: type: string - name: channel in: query description: The ID of the conversation or channel containing the message required: true schema: type: string - name: message_ts in: query description: A message's `ts` value, uniquely identifying it within a channel required: true schema: type: string responses: '200': description: Standard success response content: application/json: schema: title: chat.getPermalink success schema required: - channel - ok - permalink type: object properties: channel: $ref: '#/components/schemas/defs_channel' ok: $ref: '#/components/schemas/defs_ok_true' permalink: type: string format: uri additionalProperties: false description: Schema for successful response chat.getPermalink example: channel: C1H9RESGA ok: true permalink: >- https://ghostbusters.slack.com/archives/C1H9RESGA/p135854651500008 default: description: Error response when channel cannot be found content: application/json: schema: title: chat.getPermalink error schema required: - error - ok type: object properties: callstack: type: string description: 'Note: PHP callstack is only visible in dev/qa' error: type: string enum: - channel_not_found - message_not_found - not_authed - invalid_auth - account_inactive - token_revoked - no_permission - org_login_required - invalid_arg_name - invalid_array_arg - invalid_charset - invalid_form_data - invalid_post_type - missing_post_type - team_added_to_org - invalid_json - json_not_object - request_timeout - upgrade_required - fatal_error ok: $ref: '#/components/schemas/defs_ok_false' additionalProperties: false description: Schema for error response from chat.getPermalink method example: error: channel_not_found ok: false security: - slackAuth: - none summary: Slack Get Chat Getpermalink x-api-evangelist-processing: GenerateOperationSummariesFromPath: true PascalCaseOperationSummaries: true CaselCaseOperationIds: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /chat.meMessage: post: tags: - Chat - Post description: Share a me message into a channel. externalDocs: description: API method documentation url: https://api.slack.com/methods/chat.meMessage operationId: postChatMemessage parameters: - name: token in: header description: 'Authentication token. Requires scope: `chat:write`' schema: type: string requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: channel: type: string description: >- Channel to send message to. Can be a public channel, private group or IM channel. Can be an encoded ID, or a name. text: type: string description: Text of the message to send. application/json: schema: type: object properties: channel: type: string description: >- Channel to send message to. Can be a public channel, private group or IM channel. Can be an encoded ID, or a name. text: type: string description: Text of the message to send. responses: '200': description: Typical success response content: application/json: schema: title: chat.meMessage schema required: - ok type: object properties: channel: $ref: '#/components/schemas/defs_channel' ok: $ref: '#/components/schemas/defs_ok_true' ts: $ref: '#/components/schemas/defs_ts' additionalProperties: false description: Schema for successful response from chat.meMessage method example: channel: C024BE7LR ok: true ts: '1417671948.000006' default: description: Typical error response content: application/json: schema: title: chat.meMessage error schema required: - error - ok type: object properties: callstack: type: string description: 'Note: PHP callstack is only visible in dev/qa' error: type: string enum: - channel_not_found - not_in_channel - is_archived - msg_too_long - no_text - rate_limited - not_authed - invalid_auth - account_inactive - token_revoked - no_permission - org_login_required - invalid_arg_name - invalid_array_arg - invalid_charset - invalid_form_data - invalid_post_type - missing_post_type - team_added_to_org - invalid_json - json_not_object - request_timeout - upgrade_required - fatal_error ok: $ref: '#/components/schemas/defs_ok_false' additionalProperties: false description: Schema for error response from chat.meMessage method example: error: invalid_auth ok: false security: - slackAuth: - chat:write:user - chat:write:bot summary: Slack Post Chat Memessage x-api-evangelist-processing: GenerateOperationSummariesFromPath: true PascalCaseOperationSummaries: true CaselCaseOperationIds: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /chat.postEphemeral: post: tags: - Chat - Post description: Sends an ephemeral message to a user in a channel. externalDocs: description: API method documentation url: https://api.slack.com/methods/chat.postEphemeral operationId: postChatPostephemeral parameters: - name: token in: header description: 'Authentication token. Requires scope: `chat:write`' required: true schema: type: string requestBody: content: application/x-www-form-urlencoded: schema: required: - channel - user type: object properties: as_user: type: boolean description: >- Pass true to post the message as the authed user. Defaults to true if the chat:write:bot scope is not included. Otherwise, defaults to false. attachments: type: string description: >- A JSON-based array of structured attachments, presented as a URL-encoded string. blocks: type: string description: >- A JSON-based array of structured blocks, presented as a URL-encoded string. channel: type: string description: >- Channel, private group, or IM channel to send message to. Can be an encoded ID, or a name. icon_emoji: type: string description: >- Emoji to use as the icon for this message. Overrides `icon_url`. Must be used in conjunction with `as_user` set to `false`, otherwise ignored. See [authorship](#authorship) below. icon_url: type: string description: >- URL to an image to use as the icon for this message. Must be used in conjunction with `as_user` set to false, otherwise ignored. See [authorship](#authorship) below. link_names: type: boolean description: Find and link channel names and usernames. parse: type: string description: >- Change how messages are treated. Defaults to `none`. See [below](#formatting). text: type: string description: >- How this field works and whether it is required depends on other fields you use in your API call. [See below](#text_usage) for more detail. thread_ts: type: string description: >- Provide another message's `ts` value to post this message in a thread. Avoid using a reply's `ts` value; use its parent's value instead. Ephemeral messages in threads are only shown if there is already an active thread. user: type: string description: >- `id` of the user who will receive the ephemeral message. The user should be in the channel specified by the `channel` argument. username: type: string description: >- Set your bot's user name. Must be used in conjunction with `as_user` set to false, otherwise ignored. See [authorship](#authorship) below. application/json: schema: required: - channel - user type: object properties: as_user: type: boolean description: >- Pass true to post the message as the authed user. Defaults to true if the chat:write:bot scope is not included. Otherwise, defaults to false. attachments: type: string description: >- A JSON-based array of structured attachments, presented as a URL-encoded string. blocks: type: string description: >- A JSON-based array of structured blocks, presented as a URL-encoded string. channel: type: string description: >- Channel, private group, or IM channel to send message to. Can be an encoded ID, or a name. icon_emoji: type: string description: >- Emoji to use as the icon for this message. Overrides `icon_url`. Must be used in conjunction with `as_user` set to `false`, otherwise ignored. See [authorship](#authorship) below. icon_url: type: string description: >- URL to an image to use as the icon for this message. Must be used in conjunction with `as_user` set to false, otherwise ignored. See [authorship](#authorship) below. link_names: type: boolean description: Find and link channel names and usernames. parse: type: string description: >- Change how messages are treated. Defaults to `none`. See [below](#formatting). text: type: string description: >- How this field works and whether it is required depends on other fields you use in your API call. [See below](#text_usage) for more detail. thread_ts: type: string description: >- Provide another message's `ts` value to post this message in a thread. Avoid using a reply's `ts` value; use its parent's value instead. Ephemeral messages in threads are only shown if there is already an active thread. user: type: string description: >- `id` of the user who will receive the ephemeral message. The user should be in the channel specified by the `channel` argument. username: type: string description: >- Set your bot's user name. Must be used in conjunction with `as_user` set to false, otherwise ignored. See [authorship](#authorship) below. required: true responses: '200': description: Typical success response content: application/json: schema: title: chat.postEphemeral success schema required: - message_ts - ok type: object properties: message_ts: $ref: '#/components/schemas/defs_ts' ok: $ref: '#/components/schemas/defs_ok_true' additionalProperties: false description: Schema for successful response from chat.postEphemeral method example: message_ts: '1502210682.580145' ok: true default: description: Typical error response content: application/json: schema: title: chat.postEphemeral error schema required: - error - ok type: object properties: callstack: type: string description: 'Note: PHP callstack is only visible in dev/qa' error: type: string enum: - channel_not_found - is_archived - msg_too_long - no_text - restricted_action - too_many_attachments - user_not_in_channel - not_authed - invalid_auth - account_inactive - token_revoked - no_permission - org_login_required - invalid_arg_name - invalid_array_arg - invalid_charset - invalid_form_data - invalid_post_type - missing_post_type - team_added_to_org - invalid_json - json_not_object - request_timeout - upgrade_required - fatal_error ok: $ref: '#/components/schemas/defs_ok_false' additionalProperties: false description: Schema for error response from chat.postEphemeral method example: error: user_not_in_channel ok: false security: - slackAuth: - chat:write:user - chat:write:bot summary: Slack Post Chat Postephemeral x-api-evangelist-processing: GenerateOperationSummariesFromPath: true PascalCaseOperationSummaries: true CaselCaseOperationIds: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /chat.postMessage: post: tags: - Chat - Post description: Sends a message to a channel. externalDocs: description: API method documentation url: https://api.slack.com/methods/chat.postMessage operationId: postChatPostmessage parameters: - name: token in: header description: 'Authentication token. Requires scope: `chat:write`' required: true schema: type: string requestBody: content: application/x-www-form-urlencoded: schema: required: - channel type: object properties: as_user: type: string description: >- Pass true to post the message as the authed user, instead of as a bot. Defaults to false. See [authorship](#authorship) below. attachments: type: string description: >- A JSON-based array of structured attachments, presented as a URL-encoded string. blocks: type: string description: >- A JSON-based array of structured blocks, presented as a URL-encoded string. channel: type: string description: >- Channel, private group, or IM channel to send message to. Can be an encoded ID, or a name. See [below](#channels) for more details. icon_emoji: type: string description: >- Emoji to use as the icon for this message. Overrides `icon_url`. Must be used in conjunction with `as_user` set to `false`, otherwise ignored. See [authorship](#authorship) below. icon_url: type: string description: >- URL to an image to use as the icon for this message. Must be used in conjunction with `as_user` set to false, otherwise ignored. See [authorship](#authorship) below. link_names: type: boolean description: Find and link channel names and usernames. mrkdwn: type: boolean description: >- Disable Slack markup parsing by setting to `false`. Enabled by default. parse: type: string description: >- Change how messages are treated. Defaults to `none`. See [below](#formatting). reply_broadcast: type: boolean description: >- Used in conjunction with `thread_ts` and indicates whether reply should be made visible to everyone in the channel or conversation. Defaults to `false`. text: type: string description: >- How this field works and whether it is required depends on other fields you use in your API call. [See below](#text_usage) for more detail. thread_ts: type: string description: >- Provide another message's `ts` value to make this message a reply. Avoid using a reply's `ts` value; use its parent instead. unfurl_links: type: boolean description: >- Pass true to enable unfurling of primarily text-based content. unfurl_media: type: boolean description: Pass false to disable unfurling of media content. username: type: string description: >- Set your bot's user name. Must be used in conjunction with `as_user` set to false, otherwise ignored. See [authorship](#authorship) below. application/json: schema: required: - channel type: object properties: as_user: type: string description: >- Pass true to post the message as the authed user, instead of as a bot. Defaults to false. See [authorship](#authorship) below. attachments: type: string description: >- A JSON-based array of structured attachments, presented as a URL-encoded string. blocks: type: string description: >- A JSON-based array of structured blocks, presented as a URL-encoded string. channel: type: string description: >- Channel, private group, or IM channel to send message to. Can be an encoded ID, or a name. See [below](#channels) for more details. icon_emoji: type: string description: >- Emoji to use as the icon for this message. Overrides `icon_url`. Must be used in conjunction with `as_user` set to `false`, otherwise ignored. See [authorship](#authorship) below. icon_url: type: string description: >- URL to an image to use as the icon for this message. Must be used in conjunction with `as_user` set to false, otherwise ignored. See [authorship](#authorship) below. link_names: type: boolean description: Find and link channel names and usernames. mrkdwn: type: boolean description: >- Disable Slack markup parsing by setting to `false`. Enabled by default. parse: type: string description: >- Change how messages are treated. Defaults to `none`. See [below](#formatting). reply_broadcast: type: boolean description: >- Used in conjunction with `thread_ts` and indicates whether reply should be made visible to everyone in the channel or conversation. Defaults to `false`. text: type: string description: >- How this field works and whether it is required depends on other fields you use in your API call. [See below](#text_usage) for more detail. thread_ts: type: string description: >- Provide another message's `ts` value to make this message a reply. Avoid using a reply's `ts` value; use its parent instead. unfurl_links: type: boolean description: >- Pass true to enable unfurling of primarily text-based content. unfurl_media: type: boolean description: Pass false to disable unfurling of media content. username: type: string description: >- Set your bot's user name. Must be used in conjunction with `as_user` set to false, otherwise ignored. See [authorship](#authorship) below. required: true responses: '200': description: Typical success response content: application/json: schema: title: chat.postMessage success schema required: - channel - message - ok - ts type: object properties: channel: $ref: '#/components/schemas/defs_channel' message: $ref: '#/components/schemas/objs_message' ok: $ref: '#/components/schemas/defs_ok_true' ts: $ref: '#/components/schemas/defs_ts' additionalProperties: false description: Schema for successful response of chat.postMessage method example: channel: C1H9RESGL message: attachments: - fallback: This is an attachment's fallback id: 1 text: This is an attachment bot_id: B19LU7CSY subtype: bot_message text: Here's a message for you ts: '1503435956.000247' type: message username: ecto1 ok: true ts: '1503435956.000247' default: description: Typical error response if too many attachments are included content: application/json: schema: title: chat.postMessage error schema required: - error - ok type: object properties: callstack: type: string description: 'Note: PHP callstack is only visible in dev/qa' error: type: string enum: - channel_not_found - not_in_channel - is_archived - msg_too_long - no_text - too_many_attachments - rate_limited - not_authed - invalid_auth - account_inactive - invalid_arg_name - invalid_array_arg - invalid_charset - invalid_form_data - invalid_post_type - missing_post_type ok: $ref: '#/components/schemas/defs_ok_false' additionalProperties: false description: Schema for error response chat.postMessage method example: error: too_many_attachments ok: false security: - slackAuth: - chat:write:user - chat:write:bot summary: Slack Post Chat Postmessage x-api-evangelist-processing: GenerateOperationSummariesFromPath: true PascalCaseOperationSummaries: true CaselCaseOperationIds: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /chat.scheduleMessage: post: tags: - Chat - Post description: Schedules a message to be sent to a channel. externalDocs: description: API method documentation url: https://api.slack.com/methods/chat.scheduleMessage operationId: postChatSchedulemessage parameters: - name: token in: header description: 'Authentication token. Requires scope: `chat:write`' schema: type: string requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: channel: type: string description: >- Channel, private group, or DM channel to send message to. Can be an encoded ID, or a name. See [below](#channels) for more details. text: type: string description: >- How this field works and whether it is required depends on other fields you use in your API call. [See below](#text_usage) for more detail. post_at: type: string description: Unix EPOCH timestamp of time in future to send the message. parse: type: string description: >- Change how messages are treated. Defaults to `none`. See [chat.postMessage](chat.postMessage#formatting). as_user: type: boolean description: >- Pass true to post the message as the authed user, instead of as a bot. Defaults to false. See [chat.postMessage](chat.postMessage#authorship). link_names: type: boolean description: Find and link channel names and usernames. attachments: type: string description: >- A JSON-based array of structured attachments, presented as a URL-encoded string. blocks: type: string description: >- A JSON-based array of structured blocks, presented as a URL-encoded string. unfurl_links: type: boolean description: >- Pass true to enable unfurling of primarily text-based content. unfurl_media: type: boolean description: Pass false to disable unfurling of media content. thread_ts: type: number description: >- Provide another message's `ts` value to make this message a reply. Avoid using a reply's `ts` value; use its parent instead. reply_broadcast: type: boolean description: >- Used in conjunction with `thread_ts` and indicates whether reply should be made visible to everyone in the channel or conversation. Defaults to `false`. application/json: schema: type: object properties: channel: type: string description: >- Channel, private group, or DM channel to send message to. Can be an encoded ID, or a name. See [below](#channels) for more details. text: type: string description: >- How this field works and whether it is required depends on other fields you use in your API call. [See below](#text_usage) for more detail. post_at: type: string description: Unix EPOCH timestamp of time in future to send the message. parse: type: string description: >- Change how messages are treated. Defaults to `none`. See [chat.postMessage](chat.postMessage#formatting). as_user: type: boolean description: >- Pass true to post the message as the authed user, instead of as a bot. Defaults to false. See [chat.postMessage](chat.postMessage#authorship). link_names: type: boolean description: Find and link channel names and usernames. attachments: type: string description: >- A JSON-based array of structured attachments, presented as a URL-encoded string. blocks: type: string description: >- A JSON-based array of structured blocks, presented as a URL-encoded string. unfurl_links: type: boolean description: >- Pass true to enable unfurling of primarily text-based content. unfurl_media: type: boolean description: Pass false to disable unfurling of media content. thread_ts: type: number description: >- Provide another message's `ts` value to make this message a reply. Avoid using a reply's `ts` value; use its parent instead. reply_broadcast: type: boolean description: >- Used in conjunction with `thread_ts` and indicates whether reply should be made visible to everyone in the channel or conversation. Defaults to `false`. responses: '200': description: Typical success response content: application/json: schema: title: chat.scheduleMessage success schema required: - channel - message - ok - post_at - scheduled_message_id type: object properties: channel: $ref: '#/components/schemas/defs_channel' message: type: object additionalProperties: false ok: $ref: '#/components/schemas/defs_ok_true' post_at: type: integer scheduled_message_id: title: Scheduled Message ID pattern: ^[Q][A-Z0-9]{8,}$ type: string additionalProperties: false description: Schema for successful response of chat.scheduleMessage method example: channel: C1H9RESGL message: attachments: - fallback: This is an attachment's fallback id: 1 text: This is an attachment bot_id: B19LU7CSY subtype: bot_message text: Here's a message for you in the future type: delayed_message username: ecto1 ok: true post_at: '1562180400' scheduled_message_id: Q1298393284 default: description: >- Typical error response if the `post_at` is invalid (ex. in the past or too far into the future) content: application/json: schema: title: chat.scheduleMessage error schema required: - error - ok type: object properties: callstack: type: string description: 'Note: PHP callstack is only visible in dev/qa' error: type: string enum: - invalid_time - time_in_past - time_too_far - channel_not_found - not_in_channel - is_archived - msg_too_long - no_text - restricted_action - restricted_action_read_only_channel - restricted_action_thread_only_channel - restricted_action_non_threadable_channel - too_many_attachments - rate_limited - not_authed - invalid_auth - account_inactive - token_revoked - no_permission - org_login_required - ekm_access_denied - missing_scope - invalid_arguments - invalid_arg_name - invalid_charset - invalid_form_data - invalid_post_type - missing_post_type - team_added_to_org - invalid_json - json_not_object - request_timeout - upgrade_required - fatal_error ok: $ref: '#/components/schemas/defs_ok_false' additionalProperties: false description: Schema for error response chat.scheduleMessage method example: error: time_in_past ok: false security: - slackAuth: - chat:write:user - chat:write:bot summary: Slack Post Chat Schedulemessage x-api-evangelist-processing: GenerateOperationSummariesFromPath: true PascalCaseOperationSummaries: true CaselCaseOperationIds: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /chat.scheduledMessages.list: get: tags: - Chat - Get - Lists description: Returns a list of scheduled messages. externalDocs: description: API method documentation url: https://api.slack.com/methods/chat.scheduledMessages.list operationId: getChatScheduledmessagesList parameters: - name: token in: header description: 'Authentication token. Requires scope: `none`' schema: type: string - name: channel in: query description: The channel of the scheduled messages schema: type: string - name: latest in: query description: A UNIX timestamp of the latest value in the time range schema: type: number - name: oldest in: query description: A UNIX timestamp of the oldest value in the time range schema: type: number - name: limit in: query description: Maximum number of original entries to return. schema: type: integer - name: cursor in: query description: >- For pagination purposes, this is the `cursor` value returned from a previous call to `chat.scheduledmessages.list` indicating where you want to start this call from. schema: type: string responses: '200': description: Typical success response content: application/json: schema: title: chat.scheduledMessages.list schema required: - ok - response_metadata - scheduled_messages type: object properties: ok: $ref: '#/components/schemas/defs_ok_true' response_metadata: type: object additionalProperties: false scheduled_messages: type: array items: type: object additionalProperties: false additionalProperties: false description: >- Schema for successful response from chat.scheduledMessages.list method example: ok: true response_metadata: next_cursor: '' scheduled_messages: - channel_id: C1H9RESGL date_created: 1551891734 id: 1298393284 post_at: 1551991428 text: Here's a message for you in the future default: description: Typical error response if the channel passed is invalid content: application/json: schema: title: chat.scheduledMessages.list error schema required: - error - ok type: object properties: callstack: type: string description: 'Note: PHP callstack is only visible in dev/qa' error: type: string enum: - invalid_channel - not_authed - invalid_auth - account_inactive - token_revoked - no_permission - org_login_required - ekm_access_denied - missing_scope - invalid_arguments - invalid_arg_name - invalid_charset - invalid_form_data - invalid_post_type - missing_post_type - team_added_to_org - invalid_json - json_not_object - request_timeout - upgrade_required - fatal_error ok: $ref: '#/components/schemas/defs_ok_false' additionalProperties: false description: >- Schema for error response from chat.scheduledMessages.list method example: error: invalid_channel ok: false security: - slackAuth: - none summary: Slack Get Chat Scheduledmessages List x-api-evangelist-processing: GenerateOperationSummariesFromPath: true PascalCaseOperationSummaries: true CaselCaseOperationIds: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /chat.unfurl: post: tags: - Chat - Post - Unfurl description: Provide custom unfurl behavior for user-posted URLs externalDocs: description: API method documentation url: https://api.slack.com/methods/chat.unfurl operationId: postChatUnfurl parameters: - name: token in: header description: 'Authentication token. Requires scope: `links:write`' required: true schema: type: string requestBody: content: application/x-www-form-urlencoded: schema: required: - channel - ts type: object properties: channel: type: string description: Channel ID of the message ts: type: string description: Timestamp of the message to add unfurl behavior to. unfurls: type: string description: >- URL-encoded JSON map with keys set to URLs featured in the the message, pointing to their unfurl blocks or message attachments. user_auth_message: type: string description: >- Provide a simply-formatted string to send as an ephemeral message to the user as invitation to authenticate further and enable full unfurling behavior user_auth_required: type: boolean description: >- Set to `true` or `1` to indicate the user must install your Slack app to trigger unfurls for this domain user_auth_url: type: string description: >- Send users to this custom URL where they will complete authentication in your app to fully trigger unfurling. Value should be properly URL-encoded. application/json: schema: required: - channel - ts type: object properties: channel: type: string description: Channel ID of the message ts: type: string description: Timestamp of the message to add unfurl behavior to. unfurls: type: string description: >- URL-encoded JSON map with keys set to URLs featured in the the message, pointing to their unfurl blocks or message attachments. user_auth_message: type: string description: >- Provide a simply-formatted string to send as an ephemeral message to the user as invitation to authenticate further and enable full unfurling behavior user_auth_required: type: boolean description: >- Set to `true` or `1` to indicate the user must install your Slack app to trigger unfurls for this domain user_auth_url: type: string description: >- Send users to this custom URL where they will complete authentication in your app to fully trigger unfurling. Value should be properly URL-encoded. required: true responses: '200': description: Typical, minimal success response content: application/json: schema: title: chat.unfurl success schema required: - ok type: object properties: ok: $ref: '#/components/schemas/defs_ok_true' additionalProperties: false description: Schema for successful response from chat.unfurl method example: ok: true default: description: Typical error response content: application/json: schema: title: chat.unfurl error schema required: - error - ok type: object properties: callstack: type: string description: 'Note: PHP callstack is only visible in dev/qa' error: type: string enum: - cannot_unfurl_url - cannot_find_service - missing_unfurls - cannot_prompt - not_authed - invalid_auth - account_inactive - token_revoked - no_permission - org_login_required - user_is_bot - invalid_arg_name - invalid_array_arg - invalid_charset - invalid_form_data - invalid_post_type - missing_post_type - team_added_to_org - invalid_json - json_not_object - request_timeout - upgrade_required - fatal_error ok: $ref: '#/components/schemas/defs_ok_false' additionalProperties: false description: Schema for error response from chat.unfurl method example: error: cannot_unfurl_url ok: false security: - slackAuth: - links:write summary: Slack Post Chat Unfurl x-api-evangelist-processing: GenerateOperationSummariesFromPath: true PascalCaseOperationSummaries: true CaselCaseOperationIds: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /chat.update: post: tags: - Chat - Post - Update description: Updates a message. externalDocs: description: API method documentation url: https://api.slack.com/methods/chat.update operationId: postChatUpdate parameters: - name: token in: header description: 'Authentication token. Requires scope: `chat:write`' required: true schema: type: string requestBody: content: application/x-www-form-urlencoded: schema: required: - channel - ts type: object properties: as_user: type: string description: >- Pass true to update the message as the authed user. [Bot users](/bot-users) in this context are considered authed users. attachments: type: string description: >- A JSON-based array of structured attachments, presented as a URL-encoded string. This field is required when not presenting `text`. If you don't include this field, the message's previous `attachments` will be retained. To remove previous `attachments`, include an empty array for this field. blocks: type: string description: >- A JSON-based array of [structured blocks](/block-kit/building), presented as a URL-encoded string. If you don't include this field, the message's previous `blocks` will be retained. To remove previous `blocks`, include an empty array for this field. channel: type: string description: Channel containing the message to be updated. link_names: type: string description: >- Find and link channel names and usernames. Defaults to `none`. If you do not specify a value for this field, the original value set for the message will be overwritten with the default, `none`. parse: type: string description: >- Change how messages are treated. Defaults to `client`, unlike `chat.postMessage`. Accepts either `none` or `full`. If you do not specify a value for this field, the original value set for the message will be overwritten with the default, `client`. text: type: string description: >- New text for the message, using the [default formatting rules](/reference/surfaces/formatting). It's not required when presenting `blocks` or `attachments`. ts: type: string description: Timestamp of the message to be updated. application/json: schema: required: - channel - ts type: object properties: as_user: type: string description: >- Pass true to update the message as the authed user. [Bot users](/bot-users) in this context are considered authed users. attachments: type: string description: >- A JSON-based array of structured attachments, presented as a URL-encoded string. This field is required when not presenting `text`. If you don't include this field, the message's previous `attachments` will be retained. To remove previous `attachments`, include an empty array for this field. blocks: type: string description: >- A JSON-based array of [structured blocks](/block-kit/building), presented as a URL-encoded string. If you don't include this field, the message's previous `blocks` will be retained. To remove previous `blocks`, include an empty array for this field. channel: type: string description: Channel containing the message to be updated. link_names: type: string description: >- Find and link channel names and usernames. Defaults to `none`. If you do not specify a value for this field, the original value set for the message will be overwritten with the default, `none`. parse: type: string description: >- Change how messages are treated. Defaults to `client`, unlike `chat.postMessage`. Accepts either `none` or `full`. If you do not specify a value for this field, the original value set for the message will be overwritten with the default, `client`. text: type: string description: >- New text for the message, using the [default formatting rules](/reference/surfaces/formatting). It's not required when presenting `blocks` or `attachments`. ts: type: string description: Timestamp of the message to be updated. required: true responses: '200': description: Typical success response content: application/json: schema: title: chat.update success schema required: - channel - message - ok - text - ts type: object properties: channel: type: string message: title: Message object required: - text type: object properties: attachments: type: array items: type: object properties: {} blocks: type: object properties: {} text: type: string ok: $ref: '#/components/schemas/defs_ok_true' text: type: string ts: type: string additionalProperties: false description: Schema for successful response of chat.update method example: channel: C024BE91L message: text: Updated text you carefully authored user: U34567890 ok: true text: Updated text you carefully authored ts: '1401383885.000061' default: description: Typical error response content: application/json: schema: title: chat.update error schema required: - error - ok type: object properties: callstack: type: string description: 'Note: PHP callstack is only visible in dev/qa' error: type: string enum: - message_not_found - cant_update_message - channel_not_found - edit_window_closed - msg_too_long - too_many_attachments - rate_limited - no_text - not_authed - invalid_auth - account_inactive - token_revoked - no_permission - invalid_arg_name - invalid_array_arg - invalid_charset - invalid_form_data - invalid_post_type - missing_post_type - request_timeout - invalid_json - json_not_object - upgrade_required - fatal_error - is_inactive ok: $ref: '#/components/schemas/defs_ok_false' additionalProperties: false description: Schema for error response chat.update method example: error: cant_update_message ok: false security: - slackAuth: - chat:write:user - chat:write:bot summary: Slack Post Chat Update x-api-evangelist-processing: GenerateOperationSummariesFromPath: true PascalCaseOperationSummaries: true CaselCaseOperationIds: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: {} tags: - name: Chat - name: Deletes - name: Get - name: Lists - name: Post - name: Unfurl - name: Update