Slack.Web.Users.Profile (SlackKit v0.25.0-alpha.0)

View Source

Summary

Functions

Retrieve a user's profile information, including their custom status.

Set a user's profile information, including custom status.

Functions

get(optional_params \\ %{})

Retrieve a user's profile information, including their custom status.

Optional Params

  • include_labels - Include labels for each ID in custom profile fields. Using this parameter will heavily rate-limit your requests and is not recommended. ex: true
  • user - User to retrieve profile info 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.
  • 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 - You are attempting to call this method too frequently.
  • 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 - The token being used is not valid.
  • two_factor_setup_required - Two factor setup is required.
  • user_not_found - Value passed for user was invalid.

set(optional_params \\ %{})

Set a user's profile information, including custom status.

Optional Params

  • name - Name of a single key to set. Usable only if profile is not passed. Update one field at a time by passing the pair of arguments name and value. ex: first_name
  • profile - Collection of key:value pairs presented as a URL-encoded JSON hash. At most 50 fields may be set. Each field name is limited to 255 characters. You can update any of the following non-custom fields from the profile object within a Slack user object: ex: { first_name: "John", ... }
  • user - ID of user to change. This argument may only be specified by admins on paid teams. You can update any of the following non-custom fields from the profile object within a Slack user object:
  • value - Value to set a single key to. Usable only if profile is not passed. Update one field at a time by passing the pair of arguments name and value. ex: John

Errors the API can return:

  • username_same - Username is the same as the current username.
  • must_clear_both_status_text_and_status_emoji - Clearing the status requires setting both status_text and status_emoji to ''.
  • reserved_name - First or last name are reserved.
  • invalid_ooo_message - Invalid Out of Office message.
  • invalid_starts_with_at - Name cannot start with @.
  • 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.
  • sudo_required - Request requires sudo session.
  • 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.
  • 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.
  • not_admin - Only admins can update the profile of another user. Some fields, like email may only be updated by an admin.
  • 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.
  • not_app_admin - Only team owners and selected members can update the profile of a bot user.
  • invalid_arguments - The method was called with invalid arguments.
  • permission_denied - Permission denied.
  • 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.
  • invalid_profile - Profile object passed in is not valid JSON (make sure it is URL encoded!).
  • too_long - You attempted to set a custom status but it was longer than the maximum allowed, 100.
  • 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.
  • 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
  • email_taken - email taken
  • token_expired - Authentication token has expired
  • name_not_allowed - name cannot contain URL.
  • profile_set_failed - Failed to set user profile.
  • invalid_emoji_not_allowed - Invalid emoji not allowed.
  • 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.
  • cannot_update_admin_user - Only a primary owner can update the profile of an admin.
  • 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.
  • partial_profile_set_failed - Failed to set user profile.
  • 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.