Slack.Web.Openid.Connect (SlackKit v0.25.0-alpha.0)

View Source

Summary

Functions

Exchanges a temporary OAuth verifier code for an access token for Sign in with Slack.

Get the identity of a user who has authorized Sign in with Slack.

Functions

token(optional_params \\ %{})

Exchanges a temporary OAuth verifier code for an access token for Sign in with Slack.

Optional Params

  • client_id - Issued when you created your application. ex: 2141029472.691202649728
  • client_secret - Issued when you created your application. ex: e1b9e11dfcd19c1982d5de12921e17e8c
  • code - The code param returned via the OAuth callback. ex: 4724469134.4644010092847.232b4e6d82c333b475fc30f5f5a341d294feb1a94392c2fd791f7ab7731a443d1a
  • code_verifier - PKCE code verifier (RFC 7636). Required when the authorization request included a code_challenge. ex: dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk
  • grant_type - The grant_type param as described in the OAuth spec.

Acceptable values: authorization_code refresh_token ex: authorization_code

  • redirect_uri - This must match the originally submitted URI (if one was sent). ex: http://example.com
  • refresh_token - The refresh_token param as described in the OAuth spec. ex: xoxe-1-abcdefg

Errors the API can return:

  • 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.
  • 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.
  • invalid_client_id - The value passed for client_id was invalid.
  • oauth_authorization_url_mismatch - The OAuth flow was initiated on an incorrect version of the authorization URL. The flow must be initiated via /openid/connect/authorize .
  • 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.
  • cannot_install_an_org_installed_app - An org-installed app cannot be installed on a workspace.
  • bad_client_secret - The value passed for client_secret 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.
  • invalid_client - Client authentication failed (unknown client_id or bad client_secret).
  • account_inactive - Authentication token is for a deleted user or workspace when using a bot token.
  • bad_redirect_uri - The value passed for redirect_uri did not match the redirect_uri in the original request.
  • 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
  • token_expired - Authentication token has expired
  • unsupported_grant_type - The grant_type is not supported by this endpoint.
  • invalid_code - The value passed for code was invalid.
  • invalid_grant - The authorization code is invalid, expired, revoked, or the PKCE code_verifier does not match.
  • 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.
  • preview_feature_not_available - The API method is not yet available on the team.
  • not_allowed_token_type - The token type used in this request is not allowed.
  • invalid_request - The request is missing a required parameter or includes an invalid parameter value.
  • invalid_refresh_token - The given refresh token is invalid.
  • 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.
  • invalid_grant_type - The value passed for grant_type was invalid.

user_info(optional_params \\ %{})

Get the identity of a user who has authorized Sign in with Slack.

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 - 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.
  • two_factor_setup_required - Two factor setup is required.