An Organization Owner can contact our team at exports@slack.com to request access to the Oversight API.
The Admin Oversight API provides near real-time oversight information for customer administrators in an Enterprise org. This API introduces a new collection of API methods for accessing channel info, channel membership, and specific messages.
Org owners can install Admin Oversight API applications via the typical OAuth process.
This API is not intended for bulk message collection. While you may collect messages with these API methods, they're rate-limited to 100 messages per hour, returning many fewer messages than the conversations.history and conversations.replies Web API methods (which allow 900 messages per hour with 60 calls at 15 messages per call) and equivalent Discovery API methods.
This API is designed to support the admin management use cases such as:
The Admin Oversight API methods rely on combinations of the following scopes. Read a method's Facts to determine which ones that method specifically requires.
Use these methods to gather information about and message data from public channels (channels), private channels (channels?private=true), multiparty DMs (groups), and direct messages (dms).
This table lists the expected errors that this method could return. However, other errors can be returned in the case where the service is down or other unexpected factors affect processing. Callers should always check the value of the ok parameter in the response.
Error
Description
access_denied
Access to a resource specified in the request is denied.
accesslimited
Access to this method is limited on the current network
account_inactive
Authentication token is for a deleted user or workspace when using a bot token.
deprecated_endpoint
The endpoint has been deprecated.
ekm_access_denied
Administrators have suspended the ability to post a message.
enterprise_is_restricted
The method cannot be called from an Enterprise.
fatal_error
The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.
internal_error
The server could not complete your operation(s) without encountering an error, likely due to a transient issue on our end. It's possible some aspect of the operation succeeded before the error was raised.
invalid_arg_name
The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than _. If you get this error, it is typically an indication that you have made a very malformed API call.
invalid_arguments
The method was called with invalid arguments.
invalid_array_arg
The method was passed an array as an argument. Please only input valid strings.
invalid_auth
Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
invalid_charset
The method was called via a POST request, but the charset specified in the Content-Type header was invalid. Valid charset names are: utf-8iso-8859-1.
invalid_cursor
invalid_form_data
The method was called via a POST request with Content-Typeapplication/x-www-form-urlencoded or multipart/form-data, but the form data was either missing or syntactically invalid.
invalid_post_type
The method was called via a POST request, but the specified Content-Type was invalid. Valid types are: application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.
method_deprecated
The method has been deprecated.
missing_post_type
The method was called via a POST request and included a data payload, but the request did not include a Content-Type header.
missing_scope
The token used is not granted the specific scope permissions required to complete this request.
no_permission
The workspace token used in this request does not have the permissions necessary to complete the request. Make sure your app is a member of the conversation it's attempting to post a message to.
not_allowed_token_type
The token type used in this request is not allowed.
not_an_enterprise
not_authed
No authentication token provided.
org_login_required
The workspace is undergoing an enterprise migration and will not be available until migration is complete.
ratelimited
The request has been ratelimited. Refer to the Retry-After header for when to retry the request.
request_timeout
The method was called via a POST request, but the POST data was either missing or truncated.
service_unavailable
The service is temporarily unavailable
team_access_not_granted
The token used is not granted the specific workspace access required to complete this request.
team_added_to_org
The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.
token_expired
Authentication token has expired
token_revoked
Authentication token is for a deleted user or workspace or the app has been removed when using a user token.
This table lists the expected errors that this method could return. However, other errors can be returned in the case where the service is down or other unexpected factors affect processing. Callers should always check the value of the ok parameter in the response.
Error
Description
access_denied
Access to a resource specified in the request is denied.
accesslimited
Access to this method is limited on the current network
account_inactive
account_inactive
Authentication token is for a deleted user or workspace when using a bot token.
channel_not_found
deprecated_endpoint
The endpoint has been deprecated.
ekm_access_denied
Administrators have suspended the ability to post a message.
enterprise_is_restricted
The method cannot be called from an Enterprise.
fatal_error
The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.
internal_error
The server could not complete your operation(s) without encountering an error, likely due to a transient issue on our end. It's possible some aspect of the operation succeeded before the error was raised.
invalid_arg_name
The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than _. If you get this error, it is typically an indication that you have made a very malformed API call.
invalid_arguments
The method was called with invalid arguments.
invalid_array_arg
The method was passed an array as an argument. Please only input valid strings.
invalid_auth
invalid_auth
Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
invalid_charset
The method was called via a POST request, but the charset specified in the Content-Type header was invalid. Valid charset names are: utf-8iso-8859-1.
invalid_form_data
The method was called via a POST request with Content-Typeapplication/x-www-form-urlencoded or multipart/form-data, but the form data was either missing or syntactically invalid.
invalid_post_type
The method was called via a POST request, but the specified Content-Type was invalid. Valid types are: application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.
method_deprecated
The method has been deprecated.
missing_post_type
The method was called via a POST request and included a data payload, but the request did not include a Content-Type header.
missing_scope
The token used is not granted the specific scope permissions required to complete this request.
no_permission
The workspace token used in this request does not have the permissions necessary to complete the request. Make sure your app is a member of the conversation it's attempting to post a message to.
not_allowed_token_type
The token type used in this request is not allowed.
not_authed
not_authed
No authentication token provided.
org_login_required
The workspace is undergoing an enterprise migration and will not be available until migration is complete.
ratelimited
The request has been ratelimited. Refer to the Retry-After header for when to retry the request.
request_timeout
The method was called via a POST request, but the POST data was either missing or truncated.
service_unavailable
The service is temporarily unavailable
team_access_not_granted
The token used is not granted the specific workspace access required to complete this request.
team_added_to_org
The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.
team_not_found
token_expired
Authentication token has expired
token_revoked
Authentication token is for a deleted user or workspace or the app has been removed when using a user token.
The response will include an array of workspace IDs that the user belongs to in an Enterprise organization (teams). You may search by either user ID (user) or email address (email), but you must include one of those.
This table lists the expected errors that this method could return. However, other errors can be returned in the case where the service is down or other unexpected factors affect processing. Callers should always check the value of the ok parameter in the response.
Error
Description
access_denied
Access to a resource specified in the request is denied.
accesslimited
Access to this method is limited on the current network
account_inactive
Authentication token is for a deleted user or workspace when using a bot token.
deprecated_endpoint
The endpoint has been deprecated.
ekm_access_denied
Administrators have suspended the ability to post a message.
enterprise_is_restricted
The method cannot be called from an Enterprise.
fatal_error
The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.
internal_error
The server could not complete your operation(s) without encountering an error, likely due to a transient issue on our end. It's possible some aspect of the operation succeeded before the error was raised.
invalid_arg_name
The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than _. If you get this error, it is typically an indication that you have made a very malformed API call.
invalid_args
invalid_arguments
The method was called with invalid arguments.
invalid_array_arg
The method was passed an array as an argument. Please only input valid strings.
invalid_auth
Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
invalid_charset
The method was called via a POST request, but the charset specified in the Content-Type header was invalid. Valid charset names are: utf-8iso-8859-1.
invalid_email
invalid_form_data
The method was called via a POST request with Content-Typeapplication/x-www-form-urlencoded or multipart/form-data, but the form data was either missing or syntactically invalid.
invalid_post_type
The method was called via a POST request, but the specified Content-Type was invalid. Valid types are: application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.
method_deprecated
The method has been deprecated.
missing_channel
missing_post_type
The method was called via a POST request and included a data payload, but the request did not include a Content-Type header.
missing_scope
The token used is not granted the specific scope permissions required to complete this request.
missing_team
no_permission
The workspace token used in this request does not have the permissions necessary to complete the request. Make sure your app is a member of the conversation it's attempting to post a message to.
not_allowed_token_type
The token type used in this request is not allowed.
not_authed
No authentication token provided.
org_login_required
The workspace is undergoing an enterprise migration and will not be available until migration is complete.
ratelimited
The request has been ratelimited. Refer to the Retry-After header for when to retry the request.
request_timeout
The method was called via a POST request, but the POST data was either missing or truncated.
service_unavailable
The service is temporarily unavailable
team_access_not_granted
The token used is not granted the specific workspace access required to complete this request.
team_added_to_org
The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.
token_expired
Authentication token has expired
token_revoked
Authentication token is for a deleted user or workspace or the app has been removed when using a user token.
This method lists IDs for all conversations (channels and DMs, including public, private, organization-wide, and shared) a user is in, based upon the scopes that your app currently has.
With the optional include_historical argument, it will also return any conversation this user was in at some point and left.
Slack only stores and returns the most recent date and time that the user joined or left a conversation.
This method can also be filtered by conversation type: public, private, DM, MPDM. These filters are exclusive and can only be used one at a time.
Since channels like DMs and MPDMs are org-shared channels and are accessible globally within an Enterprise org, the team_id field will return the ID associated with the Enterprise ID instead of an individual team.
This table lists the expected errors that this method could return. However, other errors can be returned in the case where the service is down or other unexpected factors affect processing. Callers should always check the value of the ok parameter in the response.
Error
Description
access_denied
Access to a resource specified in the request is denied.
accesslimited
Access to this method is limited on the current network
account_inactive
account_inactive
Authentication token is for a deleted user or workspace when using a bot token.
deprecated_endpoint
The endpoint has been deprecated.
ekm_access_denied
Administrators have suspended the ability to post a message.
enterprise_is_restricted
The method cannot be called from an Enterprise.
fatal_error
The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.
internal_error
The server could not complete your operation(s) without encountering an error, likely due to a transient issue on our end. It's possible some aspect of the operation succeeded before the error was raised.
invalid_arg_name
The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than _. If you get this error, it is typically an indication that you have made a very malformed API call.
invalid_args
invalid_arguments
The method was called with invalid arguments.
invalid_array_arg
The method was passed an array as an argument. Please only input valid strings.
invalid_auth
invalid_auth
Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
invalid_charset
The method was called via a POST request, but the charset specified in the Content-Type header was invalid. Valid charset names are: utf-8iso-8859-1.
invalid_form_data
The method was called via a POST request with Content-Typeapplication/x-www-form-urlencoded or multipart/form-data, but the form data was either missing or syntactically invalid.
invalid_post_type
The method was called via a POST request, but the specified Content-Type was invalid. Valid types are: application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.
method_deprecated
The method has been deprecated.
missing_post_type
The method was called via a POST request and included a data payload, but the request did not include a Content-Type header.
missing_scope
The token used is not granted the specific scope permissions required to complete this request.
no_permission
The workspace token used in this request does not have the permissions necessary to complete the request. Make sure your app is a member of the conversation it's attempting to post a message to.
not_allowed_token_type
The token type used in this request is not allowed.
not_authed
not_authed
No authentication token provided.
org_login_required
The workspace is undergoing an enterprise migration and will not be available until migration is complete.
ratelimited
The request has been ratelimited. Refer to the Retry-After header for when to retry the request.
request_timeout
The method was called via a POST request, but the POST data was either missing or truncated.
service_unavailable
The service is temporarily unavailable
team_access_not_granted
The token used is not granted the specific workspace access required to complete this request.
team_added_to_org
The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.
token_expired
Authentication token has expired
token_revoked
Authentication token is for a deleted user or workspace or the app has been removed when using a user token.
This method provides a paginated list of all conversations, depending on the token scopes, and the team ID. The endpoint provides a truncated version of the channel metadata.
Because both direct messages and multi-party direct messages are automatically organization-wide in an Enterprise org, they will only be returned when an Enterprise ID is passed as the team parameter, or is omitted entirely.
Org-shared and multi-workspace channels will also only be returned when the Enterprise ID is passed as the team parameter, or is omitted entirely. Channels that belong to a single workspace will only be returned when that workspace ID is passed into the team parameter.
Channel names are included in this method to make it easier to build a browsable list of conversations. Depending on the conversation type, you can expect a different name format. The name field will return the channel name for channels, the channel ID for DMs, and a string of participants prefixed by mpdm for MPDMs. Please see the Example response for more information.
This table lists the expected errors that this method could return. However, other errors can be returned in the case where the service is down or other unexpected factors affect processing. Callers should always check the value of the ok parameter in the response.
Error
Description
access_denied
Access to a resource specified in the request is denied.
accesslimited
Access to this method is limited on the current network
account_inactive
account_inactive
Authentication token is for a deleted user or workspace when using a bot token.
deprecated_endpoint
The endpoint has been deprecated.
ekm_access_denied
Administrators have suspended the ability to post a message.
enterprise_is_restricted
The method cannot be called from an Enterprise.
fatal_error
The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.
internal_error
The server could not complete your operation(s) without encountering an error, likely due to a transient issue on our end. It's possible some aspect of the operation succeeded before the error was raised.
invalid_arg_name
The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than _. If you get this error, it is typically an indication that you have made a very malformed API call.
invalid_args
invalid_arguments
The method was called with invalid arguments.
invalid_array_arg
The method was passed an array as an argument. Please only input valid strings.
invalid_auth
invalid_auth
Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
invalid_charset
The method was called via a POST request, but the charset specified in the Content-Type header was invalid. Valid charset names are: utf-8iso-8859-1.
invalid_form_data
The method was called via a POST request with Content-Typeapplication/x-www-form-urlencoded or multipart/form-data, but the form data was either missing or syntactically invalid.
invalid_post_type
The method was called via a POST request, but the specified Content-Type was invalid. Valid types are: application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.
method_deprecated
The method has been deprecated.
missing_post_type
The method was called via a POST request and included a data payload, but the request did not include a Content-Type header.
missing_scope
The token used is not granted the specific scope permissions required to complete this request.
no_permission
The workspace token used in this request does not have the permissions necessary to complete the request. Make sure your app is a member of the conversation it's attempting to post a message to.
not_allowed_token_type
The token type used in this request is not allowed.
not_authed
not_authed
No authentication token provided.
org_login_required
The workspace is undergoing an enterprise migration and will not be available until migration is complete.
ratelimited
The request has been ratelimited. Refer to the Retry-After header for when to retry the request.
request_timeout
The method was called via a POST request, but the POST data was either missing or truncated.
service_unavailable
The service is temporarily unavailable
team_access_not_granted
The token used is not granted the specific workspace access required to complete this request.
team_added_to_org
The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.
team_not_found
token_expired
Authentication token has expired
token_revoked
Authentication token is for a deleted user or workspace or the app has been removed when using a user token.
This method provides a comprehensive overview of a single channel's metadata.
The response includes details about channel retention. The retention object includes the type and duration. Retention type is either custom or default. Retention duration is the period of time content is retained in a channel in days.
Deleted channels take about 24 hours to be expunged from our databases. If a channel is deleted but has not yet been pruned, the is_deleted field will return true. When the channel has been fully removed from the databases, you should expect to see a channel_not_found error.
This table lists the expected errors that this method could return. However, other errors can be returned in the case where the service is down or other unexpected factors affect processing. Callers should always check the value of the ok parameter in the response.
Error
Description
access_denied
Access to a resource specified in the request is denied.
accesslimited
Access to this method is limited on the current network
account_inactive
account_inactive
Authentication token is for a deleted user or workspace when using a bot token.
channel_not_found
deprecated_endpoint
The endpoint has been deprecated.
ekm_access_denied
Administrators have suspended the ability to post a message.
enterprise_is_restricted
The method cannot be called from an Enterprise.
fatal_error
The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.
internal_error
The server could not complete your operation(s) without encountering an error, likely due to a transient issue on our end. It's possible some aspect of the operation succeeded before the error was raised.
invalid_arg_name
The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than _. If you get this error, it is typically an indication that you have made a very malformed API call.
invalid_arguments
The method was called with invalid arguments.
invalid_array_arg
The method was passed an array as an argument. Please only input valid strings.
invalid_auth
invalid_auth
Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
invalid_charset
The method was called via a POST request, but the charset specified in the Content-Type header was invalid. Valid charset names are: utf-8iso-8859-1.
invalid_form_data
The method was called via a POST request with Content-Typeapplication/x-www-form-urlencoded or multipart/form-data, but the form data was either missing or syntactically invalid.
invalid_post_type
The method was called via a POST request, but the specified Content-Type was invalid. Valid types are: application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.
method_deprecated
The method has been deprecated.
missing_post_type
The method was called via a POST request and included a data payload, but the request did not include a Content-Type header.
missing_scope
The token used is not granted the specific scope permissions required to complete this request.
no_permission
The workspace token used in this request does not have the permissions necessary to complete the request. Make sure your app is a member of the conversation it's attempting to post a message to.
not_allowed_token_type
The token type used in this request is not allowed.
not_authed
not_authed
No authentication token provided.
org_login_required
The workspace is undergoing an enterprise migration and will not be available until migration is complete.
ratelimited
The request has been ratelimited. Refer to the Retry-After header for when to retry the request.
request_timeout
The method was called via a POST request, but the POST data was either missing or truncated.
service_unavailable
The service is temporarily unavailable
team_access_not_granted
The token used is not granted the specific workspace access required to complete this request.
team_added_to_org
The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.
team_not_found
token_expired
Authentication token has expired
token_revoked
Authentication token is for a deleted user or workspace or the app has been removed when using a user token.
This method provides a list of everyone in a given channel, private channel, MDPM, or DM.
Like our other .list API methods, its payload is purposely small so that the list itself can be pulled quickly, which is especially important on very large orgs with multiple default channels.
If you want to include members that have left the channel, set the include_member_left argument to true. Otherwise, only members currently in the conversation are returned in the response (for these users, the date_left property is set to 0). Slack does not store every instance of a user joining or leaving a channel, so those records will only reflect the most recent activity. If someone leaves a channel and then rejoins, we update the date_joined field and set the date_left field back to 0.
This table lists the expected errors that this method could return. However, other errors can be returned in the case where the service is down or other unexpected factors affect processing. Callers should always check the value of the ok parameter in the response.
Error
Description
access_denied
Access to a resource specified in the request is denied.
accesslimited
Access to this method is limited on the current network
account_inactive
account_inactive
Authentication token is for a deleted user or workspace when using a bot token.
channel_not_found
deprecated_endpoint
The endpoint has been deprecated.
ekm_access_denied
Administrators have suspended the ability to post a message.
enterprise_is_restricted
The method cannot be called from an Enterprise.
fatal_error
The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.
internal_error
The server could not complete your operation(s) without encountering an error, likely due to a transient issue on our end. It's possible some aspect of the operation succeeded before the error was raised.
invalid_arg_name
The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than _. If you get this error, it is typically an indication that you have made a very malformed API call.
invalid_args
invalid_arguments
The method was called with invalid arguments.
invalid_array_arg
The method was passed an array as an argument. Please only input valid strings.
invalid_auth
invalid_auth
Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
invalid_charset
The method was called via a POST request, but the charset specified in the Content-Type header was invalid. Valid charset names are: utf-8iso-8859-1.
invalid_form_data
The method was called via a POST request with Content-Typeapplication/x-www-form-urlencoded or multipart/form-data, but the form data was either missing or syntactically invalid.
invalid_post_type
The method was called via a POST request, but the specified Content-Type was invalid. Valid types are: application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.
method_deprecated
The method has been deprecated.
missing_post_type
The method was called via a POST request and included a data payload, but the request did not include a Content-Type header.
missing_scope
The token used is not granted the specific scope permissions required to complete this request.
no_permission
The workspace token used in this request does not have the permissions necessary to complete the request. Make sure your app is a member of the conversation it's attempting to post a message to.
not_allowed_token_type
The token type used in this request is not allowed.
not_authed
not_authed
No authentication token provided.
org_login_required
The workspace is undergoing an enterprise migration and will not be available until migration is complete.
ratelimited
The request has been ratelimited. Refer to the Retry-After header for when to retry the request.
request_timeout
The method was called via a POST request, but the POST data was either missing or truncated.
service_unavailable
The service is temporarily unavailable
team_access_not_granted
The token used is not granted the specific workspace access required to complete this request.
team_added_to_org
The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.
team_not_found
token_expired
Authentication token has expired
token_revoked
Authentication token is for a deleted user or workspace or the app has been removed when using a user token.
This method returns a single message. This endpoint will be limited to 100 requests per hour.
If the message has been edited (or deleted), this method returns the current edited (or deleted) message. If an Enterprise org customer has their retention set to keep edits and deletes, it will also return all of those edits or the deletion. See below for examples.
For an edited message, the root message object is identical to the one in the relevant .history call: The text field shows the current message content as seen in the client, and the edited object shows who made the most recent edit and when they made it.
The edits array will list each edit as a separate object in ascending order. Each object will contain a text field that shows the message content after the edit was made, as well as a previous object that shows what the message content was immediately prior to this edit.
Original message with a single edit
{ "ok":true, "message":{ "client_msg_id":"6b6239f9-9a22-4759-ac01-7e9c48658092", "type":"message", "text":"Can we reschedule today's meeting? I have a conflict.", "user":"W123ABC456", "ts":"1569520591.000500", "team":"T123ABC456", "edited":{ "user":"W123ABC456", "ts":"1569521123.000000" } }, "edits":[ { "type":"message", "user":"W123ABC456", "upload":false, "ts":"1569521123.000000", "text":"Can we reschedule today's meeting? I have a conflict.", "previous":{ "text":"Can we reschedule today's meeting?" }, "original_ts":"1569520591.000500", "subtype":"message_changed", "editor_id":"W123ABC456" } ] }
Same message edited a second time
{ "ok":true, "message":{ "client_msg_id":"6b6239f9-9a22-4759-ac01-7e9c48658092", "type":"message", "text":"Never mind, I was able to move my other meeting. See you soon.", "user":"W123ABC456", "ts":"1569520591.000500", "team":"T123ABC456", "edited":{ "user":"W123ABC456", "ts":"1569521616.000000" } }, "edits":[ { "type":"message", "user":"W123ABC456", "upload":false, "ts":"1569521123.000000", "text":"Can we reschedule today's meeting? I have a conflict.", "previous":{ "text":"Can we reschedule today's meeting?" }, "original_ts":"1569520591.000500", "subtype":"message_changed", "editor_id":"W123ABC456" }, { "type":"message", "user":"W123ABC456", "upload":false, "ts":"1569521616.000000", "text":"Never mind, I was able to move my other meeting. See you soon.", "previous":{ "text":"Can we reschedule today's meeting? I have a conflict." }, "original_ts":"1569520591.000500", "subtype":"message_changed", "editor_id":"W123ABC456" } ] }
When a message has been deleted, the root message object will only show "type": "deleted", not any version of the message content. The message content at the time of deletion can be found in the edits array in a message object with a subtype of message_deleted. It will be the last item in the list. If you would like to see the original message content as it was first posted, it can be found in the previous object of the message's earliest edit.
{ "ok":true, "message":{ "type":"deleted" }, "edits":[ { "type":"message", "user":"W123ABC456", "upload":false, "ts":"1569521123.000000", "text":"Can we reschedule today's meeting? I have a conflict.", "previous":{ "text":"Can we reschedule today's meeting?" }, "original_ts":"1569520591.000500", "subtype":"message_changed", "editor_id":"W123ABC456" }, { "type":"message", "user":"W123ABC456", "upload":false, "ts":"1569521616.000000", "text":"Never mind, I was able to move my other meeting. See you soon.", "previous":{ "text":"Can we reschedule today's meeting? I have a conflict." }, "original_ts":"1569520591.000500", "subtype":"message_changed", "editor_id":"W123ABC456" }, { "type":"message", "user":"W123ABC456", "upload":false, "ts":"1569521860.000000", "text":"", "previous":{ "text":"Never mind, I was able to move my other meeting. See you soon." }, "original_ts":"1569520591.000500", "subtype":"message_deleted", "editor_id":"W123ABC456" } ] }
This table lists the expected errors that this method could return. However, other errors can be returned in the case where the service is down or other unexpected factors affect processing. Callers should always check the value of the ok parameter in the response.
Error
Description
access_denied
Access to a resource specified in the request is denied.
accesslimited
Access to this method is limited on the current network
account_inactive
account_inactive
Authentication token is for a deleted user or workspace when using a bot token.
channel_not_found
deprecated_endpoint
The endpoint has been deprecated.
ekm_access_denied
Administrators have suspended the ability to post a message.
enterprise_is_restricted
The method cannot be called from an Enterprise.
fatal_error
The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.
internal_error
The server could not complete your operation(s) without encountering an error, likely due to a transient issue on our end. It's possible some aspect of the operation succeeded before the error was raised.
invalid_arg_name
The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than _. If you get this error, it is typically an indication that you have made a very malformed API call.
invalid_arguments
The method was called with invalid arguments.
invalid_array_arg
The method was passed an array as an argument. Please only input valid strings.
invalid_auth
invalid_auth
Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
invalid_charset
The method was called via a POST request, but the charset specified in the Content-Type header was invalid. Valid charset names are: utf-8iso-8859-1.
invalid_form_data
The method was called via a POST request with Content-Typeapplication/x-www-form-urlencoded or multipart/form-data, but the form data was either missing or syntactically invalid.
invalid_post_type
The method was called via a POST request, but the specified Content-Type was invalid. Valid types are: application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.
message_not_found
method_deprecated
The method has been deprecated.
missing_post_type
The method was called via a POST request and included a data payload, but the request did not include a Content-Type header.
missing_scope
The token used is not granted the specific scope permissions required to complete this request.
no_permission
The workspace token used in this request does not have the permissions necessary to complete the request. Make sure your app is a member of the conversation it's attempting to post a message to.
not_allowed_token_type
The token type used in this request is not allowed.
not_authed
not_authed
No authentication token provided.
org_login_required
The workspace is undergoing an enterprise migration and will not be available until migration is complete.
ratelimited
The request has been ratelimited. Refer to the Retry-After header for when to retry the request.
request_timeout
The method was called via a POST request, but the POST data was either missing or truncated.
service_unavailable
The service is temporarily unavailable
team_access_not_granted
The token used is not granted the specific workspace access required to complete this request.
team_added_to_org
The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.
team_not_found
token_expired
Authentication token has expired
token_revoked
Authentication token is for a deleted user or workspace or the app has been removed when using a user token.
This table lists the expected errors that this method could return. However, other errors can be returned in the case where the service is down or other unexpected factors affect processing. Callers should always check the value of the ok parameter in the response.
Error
Description
access_denied
Access to a resource specified in the request is denied.
accesslimited
Access to this method is limited on the current network
account_inactive
Authentication token is for a deleted user or workspace when using a bot token.
deprecated_endpoint
The endpoint has been deprecated.
ekm_access_denied
Administrators have suspended the ability to post a message.
enterprise_is_restricted
The method cannot be called from an Enterprise.
external_update_not_allowed
fatal_error
The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.
internal_error
The server could not complete your operation(s) without encountering an error, likely due to a transient issue on our end. It's possible some aspect of the operation succeeded before the error was raised.
invalid_arg_name
The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than _. If you get this error, it is typically an indication that you have made a very malformed API call.
invalid_arguments
The method was called with invalid arguments.
invalid_array_arg
The method was passed an array as an argument. Please only input valid strings.
invalid_auth
invalid_auth
Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
invalid_charset
The method was called via a POST request, but the charset specified in the Content-Type header was invalid. Valid charset names are: utf-8iso-8859-1.
invalid_form_data
The method was called via a POST request with Content-Typeapplication/x-www-form-urlencoded or multipart/form-data, but the form data was either missing or syntactically invalid.
invalid_post_type
The method was called via a POST request, but the specified Content-Type was invalid. Valid types are: application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.
message_not_found
method_deprecated
The method has been deprecated.
missing_post_type
The method was called via a POST request and included a data payload, but the request did not include a Content-Type header.
missing_scope
The token used is not granted the specific scope permissions required to complete this request.
no_permission
The workspace token used in this request does not have the permissions necessary to complete the request. Make sure your app is a member of the conversation it's attempting to post a message to.
not_allowed_token_type
The token type used in this request is not allowed.
not_authed
not_authed
No authentication token provided.
org_login_required
The workspace is undergoing an enterprise migration and will not be available until migration is complete.
ratelimited
The request has been ratelimited. Refer to the Retry-After header for when to retry the request.
request_timeout
The method was called via a POST request, but the POST data was either missing or truncated.
service_unavailable
The service is temporarily unavailable
team_access_not_granted
The token used is not granted the specific workspace access required to complete this request.
team_added_to_org
The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.
team_not_found
token_expired
Authentication token has expired
token_revoked
Authentication token is for a deleted user or workspace or the app has been removed when using a user token.
This method tombstones a single message, removing the message content but preserving the message's existence. The tombstone message can be customized with the content argument.
{ "token":"xxxx-xxxxxxxxx-xxxx", "ts":"1569520591.000500", "channel":"C0123ABC456", "team":"T123ABC456", "content":"This message is currently being reviewed by XYZ Company" }
This table lists the expected errors that this method could return. However, other errors can be returned in the case where the service is down or other unexpected factors affect processing. Callers should always check the value of the ok parameter in the response.
Error
Description
access_denied
Access to a resource specified in the request is denied.
accesslimited
Access to this method is limited on the current network
account_inactive
Authentication token is for a deleted user or workspace when using a bot token.
deprecated_endpoint
The endpoint has been deprecated.
ekm_access_denied
Administrators have suspended the ability to post a message.
enterprise_is_restricted
The method cannot be called from an Enterprise.
external_update_not_allowed
fatal_error
The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.
internal_error
The server could not complete your operation(s) without encountering an error, likely due to a transient issue on our end. It's possible some aspect of the operation succeeded before the error was raised.
invalid_arg_name
The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than _. If you get this error, it is typically an indication that you have made a very malformed API call.
invalid_arguments
The method was called with invalid arguments.
invalid_array_arg
The method was passed an array as an argument. Please only input valid strings.
invalid_auth
invalid_auth
Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
invalid_charset
The method was called via a POST request, but the charset specified in the Content-Type header was invalid. Valid charset names are: utf-8iso-8859-1.
invalid_form_data
The method was called via a POST request with Content-Typeapplication/x-www-form-urlencoded or multipart/form-data, but the form data was either missing or syntactically invalid.
invalid_post_type
The method was called via a POST request, but the specified Content-Type was invalid. Valid types are: application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.
message_not_found
method_deprecated
The method has been deprecated.
missing_post_type
The method was called via a POST request and included a data payload, but the request did not include a Content-Type header.
missing_scope
The token used is not granted the specific scope permissions required to complete this request.
no_permission
The workspace token used in this request does not have the permissions necessary to complete the request. Make sure your app is a member of the conversation it's attempting to post a message to.
not_allowed_token_type
The token type used in this request is not allowed.
not_authed
not_authed
No authentication token provided.
org_login_required
The workspace is undergoing an enterprise migration and will not be available until migration is complete.
ratelimited
The request has been ratelimited. Refer to the Retry-After header for when to retry the request.
request_timeout
The method was called via a POST request, but the POST data was either missing or truncated.
service_unavailable
The service is temporarily unavailable
team_access_not_granted
The token used is not granted the specific workspace access required to complete this request.
team_added_to_org
The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.
team_not_found
token_expired
Authentication token has expired
token_revoked
Authentication token is for a deleted user or workspace or the app has been removed when using a user token.
This table lists the expected errors that this method could return. However, other errors can be returned in the case where the service is down or other unexpected factors affect processing. Callers should always check the value of the ok parameter in the response.
Error
Description
access_denied
Access to a resource specified in the request is denied.
accesslimited
Access to this method is limited on the current network
account_inactive
Authentication token is for a deleted user or workspace when using a bot token.
deprecated_endpoint
The endpoint has been deprecated.
ekm_access_denied
Administrators have suspended the ability to post a message.
enterprise_is_restricted
The method cannot be called from an Enterprise.
external_update_not_allowed
fatal_error
The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.
internal_error
The server could not complete your operation(s) without encountering an error, likely due to a transient issue on our end. It's possible some aspect of the operation succeeded before the error was raised.
invalid_arg_name
The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than _. If you get this error, it is typically an indication that you have made a very malformed API call.
invalid_arguments
The method was called with invalid arguments.
invalid_array_arg
The method was passed an array as an argument. Please only input valid strings.
invalid_auth
invalid_auth
Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
invalid_charset
The method was called via a POST request, but the charset specified in the Content-Type header was invalid. Valid charset names are: utf-8iso-8859-1.
invalid_form_data
The method was called via a POST request with Content-Typeapplication/x-www-form-urlencoded or multipart/form-data, but the form data was either missing or syntactically invalid.
invalid_post_type
The method was called via a POST request, but the specified Content-Type was invalid. Valid types are: application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.
message_not_found
method_deprecated
The method has been deprecated.
missing_post_type
The method was called via a POST request and included a data payload, but the request did not include a Content-Type header.
missing_scope
The token used is not granted the specific scope permissions required to complete this request.
no_permission
The workspace token used in this request does not have the permissions necessary to complete the request. Make sure your app is a member of the conversation it's attempting to post a message to.
non_tombstoned_message_not_allowed
not_allowed_token_type
The token type used in this request is not allowed.
not_authed
not_authed
No authentication token provided.
org_login_required
The workspace is undergoing an enterprise migration and will not be available until migration is complete.
ratelimited
The request has been ratelimited. Refer to the Retry-After header for when to retry the request.
request_timeout
The method was called via a POST request, but the POST data was either missing or truncated.
service_unavailable
The service is temporarily unavailable
team_access_not_granted
The token used is not granted the specific workspace access required to complete this request.
team_added_to_org
The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.
team_not_found
token_expired
Authentication token has expired
token_revoked
Authentication token is for a deleted user or workspace or the app has been removed when using a user token.
This method allows a message to be updated. This method specifies text or attachments that should be included in place of the message. Parse mode: full. Use this method for quarantine and restoration. Present your key/value pairs according to RFC-3986.
This table lists the expected errors that this method could return. However, other errors can be returned in the case where the service is down or other unexpected factors affect processing. Callers should always check the value of the ok parameter in the response.
Error
Description
access_denied
Access to a resource specified in the request is denied.
accesslimited
Access to this method is limited on the current network
account_inactive
Authentication token is for a deleted user or workspace when using a bot token.
deprecated_endpoint
The endpoint has been deprecated.
ekm_access_denied
Administrators have suspended the ability to post a message.
enterprise_is_restricted
The method cannot be called from an Enterprise.
external_update_not_allowed
fatal_error
The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.
internal_error
The server could not complete your operation(s) without encountering an error, likely due to a transient issue on our end. It's possible some aspect of the operation succeeded before the error was raised.
invalid_arg_name
The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than _. If you get this error, it is typically an indication that you have made a very malformed API call.
invalid_arguments
The method was called with invalid arguments.
invalid_array_arg
The method was passed an array as an argument. Please only input valid strings.
invalid_auth
invalid_auth
Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
invalid_charset
The method was called via a POST request, but the charset specified in the Content-Type header was invalid. Valid charset names are: utf-8iso-8859-1.
invalid_form_data
The method was called via a POST request with Content-Typeapplication/x-www-form-urlencoded or multipart/form-data, but the form data was either missing or syntactically invalid.
invalid_post_type
The method was called via a POST request, but the specified Content-Type was invalid. Valid types are: application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.
message_not_found
method_deprecated
The method has been deprecated.
missing_post_type
The method was called via a POST request and included a data payload, but the request did not include a Content-Type header.
missing_scope
The token used is not granted the specific scope permissions required to complete this request.
no_permission
The workspace token used in this request does not have the permissions necessary to complete the request. Make sure your app is a member of the conversation it's attempting to post a message to.
non_tombstoned_message_not_allowed
not_allowed_token_type
The token type used in this request is not allowed.
not_authed
not_authed
No authentication token provided.
org_login_required
The workspace is undergoing an enterprise migration and will not be available until migration is complete.
ratelimited
The request has been ratelimited. Refer to the Retry-After header for when to retry the request.
request_timeout
The method was called via a POST request, but the POST data was either missing or truncated.
service_unavailable
The service is temporarily unavailable
team_access_not_granted
The token used is not granted the specific workspace access required to complete this request.
team_added_to_org
The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.
team_not_found
token_expired
Authentication token has expired
token_revoked
Authentication token is for a deleted user or workspace or the app has been removed when using a user token.