Slack.Web.Pins (SlackKit v0.25.0-alpha.0)

View Source

Summary

Functions

Pins an item to a channel.

Lists items pinned to a channel.

Un-pins an item from a channel.

Functions

add(channel, optional_params \\ %{})

Pins an item to a channel.

Required Params

  • channel - Channel to pin the messsage to. You must also include a timestamp when pinning messages. Both the channel and timestamp arguments are functionally required. The provided channel should be the ID of a public or private channel you want to pin to and the timestamp should be the ts value of a message within that conversation.

Optional Params

  • timestamp - Timestamp of the message to pin. You must also include the channel. Both the channel and timestamp arguments are functionally required. The provided channel should be the ID of a public or private channel you want to pin to and the timestamp should be the ts value of a message within that conversation.

Errors the API can return:

  • no_item_specified - One of file, file_comment, or timestamp was not specified.
  • token_revoked - Authentication token is for a deleted user or workspace or the app has been removed when using a user token.
  • 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.
  • two_factor_setup_required - Two factor setup is required.
  • invalid_form_data - The method was called via a POST request with Content-Type application/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/json application/x-www-form-urlencoded multipart/form-data text/plain.
  • already_pinned - The specified item is already pinned to the channel.
  • restricted_action - The user does not have permission to add pins to the channel.
  • too_many_pins - Too many pins in channel.
  • 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.
  • deprecated_endpoint - The endpoint has been deprecated.
  • ratelimited - The request has been ratelimited. Refer to the Retry-After header for when to retry the request.
  • ekm_access_denied - Administrators have suspended the ability to post a message.
  • service_unavailable - The service is temporarily unavailable
  • not_in_channel - Item is not in channel.
  • team_access_not_granted - The token used is not granted the specific workspace access required to complete this request.
  • bad_timestamp - Value passed for timestamp was invalid.
  • 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.
  • request_timeout - The method was called via a POST request, but the POST data was either missing or truncated.
  • account_inactive - Authentication token is for a deleted user or workspace when using a bot token.
  • channel_not_found - The channel argument was not specified or was invalid
  • external_channel_migrating - Channel is undergoing an active migration.
  • not_authed - No authentication token provided.
  • 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.
  • enterprise_is_restricted - The method cannot be called from an Enterprise.
  • file_not_shared - File specified by file is not public nor shared to the channel.
  • 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.
  • access_denied - Access to a resource specified in the request is denied.
  • 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.
  • message_not_found - Message specified by channel and timestamp does not exist.
  • missing_scope - The token used is not granted the specific scope permissions required to complete this request.
  • 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.
  • accesslimited - Access to this method is limited on the current network
  • token_expired - Authentication token has expired
  • 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-8 iso-8859-1.
  • not_pinnable - This message type is not pinnable.
  • method_deprecated - The method has been deprecated.
  • file_not_found - File not found.
  • not_allowed_token_type - The token type used in this request is not allowed.
  • org_login_required - The workspace is undergoing an enterprise migration and will not be available until migration is complete.
  • 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.

list(channel, optional_params \\ %{})

Lists items pinned to a channel.

Required Params

  • channel - Channel to get pinned items for.

Errors the API can return:

  • 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.
  • channel_not_found - Value passed for channel was invalid.
  • 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-8 iso-8859-1.
  • invalid_form_data - The method was called via a POST request with Content-Type application/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/json application/x-www-form-urlencoded multipart/form-data text/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 - 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.
  • restricted_action - The user does not have permission to view the channel.
  • 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.
  • two_factor_setup_required - Two factor setup is required.

remove(channel, optional_params \\ %{})

Un-pins an item from a channel.

Required Params

  • channel - Channel where the item is pinned to. The channel argument is required and one of file, file_comment, or timestamp must also be specified.

Optional Params

  • timestamp - Timestamp of the message to un-pin. The channel argument is required and one of file, file_comment, or timestamp must also be specified.

Errors the API can return:

  • no_item_specified - One of file, file_comment, or timestamp was not specified.
  • token_revoked - Authentication token is for a deleted user or workspace or the app has been removed when using a user token.
  • 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.
  • two_factor_setup_required - Two factor setup is required.
  • not_pinned - The specified item is not pinned to the channel.
  • invalid_form_data - The method was called via a POST request with Content-Type application/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/json application/x-www-form-urlencoded multipart/form-data text/plain.
  • restricted_action - The user does not have permission to remove pins from the channel.
  • 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.
  • deprecated_endpoint - The endpoint has been deprecated.
  • ratelimited - The request has been ratelimited. Refer to the Retry-After header for when to retry the request.
  • ekm_access_denied - Administrators have suspended the ability to post a message.
  • 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.
  • bad_timestamp - Value passed for timestamp was invalid.
  • invalid_arguments - The method was called with invalid arguments.
  • file_comment_not_found - File comment specified by file_comment does not exist.
  • invalid_array_arg - The method was passed an array as an argument. Please only input valid strings.
  • request_timeout - The method was called via a POST request, but the POST data was either missing or truncated.
  • account_inactive - Authentication token is for a deleted user or workspace when using a bot token.
  • channel_not_found - The channel argument was not specified or was invalid
  • external_channel_migrating - Channel is undergoing an active migration.
  • not_authed - No authentication token provided.
  • 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.
  • enterprise_is_restricted - The method cannot be called from an Enterprise.
  • 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.
  • access_denied - Access to a resource specified in the request is denied.
  • 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.
  • message_not_found - Message specified by channel and timestamp does not exist.
  • missing_scope - The token used is not granted the specific scope permissions required to complete this request.
  • 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.
  • accesslimited - Access to this method is limited on the current network
  • no_pin - The pin could not be found.
  • token_expired - Authentication token has expired
  • 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-8 iso-8859-1.
  • method_deprecated - The method has been deprecated.
  • file_not_found - File specified by file does not exist.
  • not_allowed_token_type - The token type used in this request is not allowed.
  • org_login_required - The workspace is undergoing an enterprise migration and will not be available until migration is complete.
  • 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.