Class: SlackWebApi::OauthAuthorizationController
- Inherits:
-
BaseController
- Object
- BaseController
- SlackWebApi::OauthAuthorizationController
- Defined in:
- lib/slack_web_api/controllers/oauth_authorization_controller.rb
Overview
OauthAuthorizationController
Constant Summary
Constants inherited from BaseController
Instance Attribute Summary
Attributes inherited from BaseController
Instance Method Summary collapse
-
#refresh_token(authorization, refresh_token, scope: nil, _field_parameters: nil) ⇒ ApiResponse
Obtain a new access token using a refresh token Basic auth format space-delimited list.
-
#request_token(authorization, code, redirect_uri, _field_parameters: nil) ⇒ ApiResponse
Create a new OAuth 2 token.
Methods inherited from BaseController
#initialize, #new_parameter, #new_request_builder, #new_response_handler, user_agent, user_agent_parameters
Constructor Details
This class inherits a constructor from SlackWebApi::BaseController
Instance Method Details
#refresh_token(authorization, refresh_token, scope: nil, _field_parameters: nil) ⇒ ApiResponse
Obtain a new access token using a refresh token Basic auth format space-delimited list. supported by this endpoint.
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
# File 'lib/slack_web_api/controllers/oauth_authorization_controller.rb', line 57 def refresh_token(, refresh_token, scope: nil, _field_parameters: nil) @api_call .request(new_request_builder(HttpMethodEnum::POST, '/oauth.access', Server::DEFAULT) .form_param(new_parameter('refresh_token', key: 'grant_type')) .header_param(new_parameter(, key: 'Authorization') .is_required(true)) .form_param(new_parameter(refresh_token, key: 'refresh_token') .is_required(true)) .form_param(new_parameter(scope, key: 'scope')) .header_param(new_parameter('application/x-www-form-urlencoded', key: 'content-type')) .header_param(new_parameter('application/json', key: 'accept')) .additional_form_params(_field_parameters)) .response(new_response_handler .deserializer(APIHelper.method(:custom_type_deserializer)) .deserialize_into(OauthToken.method(:from_hash)) .is_api_response(true) .local_error('400', 'OAuth 2 provider returned an error.', OauthProviderException) .local_error('401', 'OAuth 2 provider says client authentication failed.', OauthProviderException)) .execute end |
#request_token(authorization, code, redirect_uri, _field_parameters: nil) ⇒ ApiResponse
Create a new OAuth 2 token. Basic auth format supported by this endpoint.
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/slack_web_api/controllers/oauth_authorization_controller.rb', line 17 def request_token(, code, redirect_uri, _field_parameters: nil) @api_call .request(new_request_builder(HttpMethodEnum::POST, '/oauth.access', Server::DEFAULT) .form_param(new_parameter('authorization_code', key: 'grant_type')) .header_param(new_parameter(, key: 'Authorization') .is_required(true)) .form_param(new_parameter(code, key: 'code') .is_required(true)) .form_param(new_parameter(redirect_uri, key: 'redirect_uri') .is_required(true)) .header_param(new_parameter('application/x-www-form-urlencoded', key: 'content-type')) .header_param(new_parameter('application/json', key: 'accept')) .additional_form_params(_field_parameters)) .response(new_response_handler .deserializer(APIHelper.method(:custom_type_deserializer)) .deserialize_into(OauthToken.method(:from_hash)) .is_api_response(true) .local_error('400', 'OAuth 2 provider returned an error.', OauthProviderException) .local_error('401', 'OAuth 2 provider says client authentication failed.', OauthProviderException)) .execute end |