=begin PureCloud Platform API With the PureCloud Platform API, you can control all aspects of your PureCloud environment. With the APIs you can access the system configuration, manage conversations and more. OpenAPI spec version: v2 Contact: DeveloperEvangelists@inin.com Generated by: https://github.com/swagger-api/swagger-codegen.git License: ININ http://www.inin.com Terms of Service: https://developer.mypurecloud.com/tos =end require "uri" module PureCloud class OAuthApi attr_accessor :api_client def initialize(api_client = ApiClient.default) @api_client = api_client end # Delete OAuth Client # # @param client_id Client ID # @param [Hash] opts the optional parameters # @return [nil] def delete_clients_client_id(client_id, opts = {}) delete_clients_client_id_with_http_info(client_id, opts) return nil end # Delete OAuth Client # # @param client_id Client ID # @param [Hash] opts the optional parameters # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers def delete_clients_client_id_with_http_info(client_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: OAuthApi#delete_clients_client_id ..." end # verify the required parameter 'client_id' is set fail "Missing the required parameter 'client_id' when calling delete_clients_client_id" if client_id.nil? # resource path local_var_path = "/api/v2/oauth/clients/{clientId}".sub('{format}','json').sub('{' + 'clientId' + '}', client_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) _header_accept = ['application/json'] _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result # HTTP header 'Content-Type' _header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names) if @api_client.config.debugging @api_client.config.logger.debug "API called: OAuthApi#delete_clients_client_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # The list of OAuth clients # # @param [Hash] opts the optional parameters # @return [OAuthClientEntityListing] def get_clients(opts = {}) data, status_code, headers = get_clients_with_http_info(opts) return data end # The list of OAuth clients # # @param [Hash] opts the optional parameters # @return [Array<(OAuthClientEntityListing, Fixnum, Hash)>] OAuthClientEntityListing data, response status code and response headers def get_clients_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: OAuthApi#get_clients ..." end # resource path local_var_path = "/api/v2/oauth/clients".sub('{format}','json') # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) _header_accept = ['application/json'] _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result # HTTP header 'Content-Type' _header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'OAuthClientEntityListing') if @api_client.config.debugging @api_client.config.logger.debug "API called: OAuthApi#get_clients\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get OAuth Client # # @param client_id Client ID # @param [Hash] opts the optional parameters # @return [OAuthClient] def get_clients_client_id(client_id, opts = {}) data, status_code, headers = get_clients_client_id_with_http_info(client_id, opts) return data end # Get OAuth Client # # @param client_id Client ID # @param [Hash] opts the optional parameters # @return [Array<(OAuthClient, Fixnum, Hash)>] OAuthClient data, response status code and response headers def get_clients_client_id_with_http_info(client_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: OAuthApi#get_clients_client_id ..." end # verify the required parameter 'client_id' is set fail "Missing the required parameter 'client_id' when calling get_clients_client_id" if client_id.nil? # resource path local_var_path = "/api/v2/oauth/clients/{clientId}".sub('{format}','json').sub('{' + 'clientId' + '}', client_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) _header_accept = ['application/json'] _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result # HTTP header 'Content-Type' _header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'OAuthClient') if @api_client.config.debugging @api_client.config.logger.debug "API called: OAuthApi#get_clients_client_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Create OAuth client # The OAuth Grant/Client is required in order to create an authentication token and gain access to PureCloud. \nThe preferred authorizedGrantTypes is 'CODE' which requires applications to send a client ID and client secret. This is typically a web server. \nIf the client is unable to secure the client secret then the 'TOKEN' grant type aka IMPLICIT should be used. This is would be for browser or mobile apps. \nIf a client is to be used outside of the context of a user then the 'CLIENT-CREDENTIALS' grant may be used. In this case the client must be granted roles \nvia the 'roleIds' field. # @param [Hash] opts the optional parameters # @option opts [OAuthClient] :body Client # @return [OAuthClient] def post_clients(opts = {}) data, status_code, headers = post_clients_with_http_info(opts) return data end # Create OAuth client # The OAuth Grant/Client is required in order to create an authentication token and gain access to PureCloud. \nThe preferred authorizedGrantTypes is 'CODE' which requires applications to send a client ID and client secret. This is typically a web server. \nIf the client is unable to secure the client secret then the 'TOKEN' grant type aka IMPLICIT should be used. This is would be for browser or mobile apps. \nIf a client is to be used outside of the context of a user then the 'CLIENT-CREDENTIALS' grant may be used. In this case the client must be granted roles \nvia the 'roleIds' field. # @param [Hash] opts the optional parameters # @option opts [OAuthClient] :body Client # @return [Array<(OAuthClient, Fixnum, Hash)>] OAuthClient data, response status code and response headers def post_clients_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: OAuthApi#post_clients ..." end # resource path local_var_path = "/api/v2/oauth/clients".sub('{format}','json') # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) _header_accept = ['application/json'] _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result # HTTP header 'Content-Type' _header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(opts[:'body']) auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:POST, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'OAuthClient') if @api_client.config.debugging @api_client.config.logger.debug "API called: OAuthApi#post_clients\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Regenerate Client Secret # This operation will set the client secret to a randomly generated cryptographically random value. All clients must be updated with the new secret. This operation should be used with caution. # @param client_id Client ID # @param [Hash] opts the optional parameters # @return [nil] def post_clients_client_id_secret(client_id, opts = {}) post_clients_client_id_secret_with_http_info(client_id, opts) return nil end # Regenerate Client Secret # This operation will set the client secret to a randomly generated cryptographically random value. All clients must be updated with the new secret. This operation should be used with caution. # @param client_id Client ID # @param [Hash] opts the optional parameters # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers def post_clients_client_id_secret_with_http_info(client_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: OAuthApi#post_clients_client_id_secret ..." end # verify the required parameter 'client_id' is set fail "Missing the required parameter 'client_id' when calling post_clients_client_id_secret" if client_id.nil? # resource path local_var_path = "/api/v2/oauth/clients/{clientId}/secret".sub('{format}','json').sub('{' + 'clientId' + '}', client_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) _header_accept = ['application/json'] _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result # HTTP header 'Content-Type' _header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:POST, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names) if @api_client.config.debugging @api_client.config.logger.debug "API called: OAuthApi#post_clients_client_id_secret\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Update OAuth Client # # @param client_id Client ID # @param [Hash] opts the optional parameters # @option opts [OAuthClient] :body Client # @return [OAuthClient] def put_clients_client_id(client_id, opts = {}) data, status_code, headers = put_clients_client_id_with_http_info(client_id, opts) return data end # Update OAuth Client # # @param client_id Client ID # @param [Hash] opts the optional parameters # @option opts [OAuthClient] :body Client # @return [Array<(OAuthClient, Fixnum, Hash)>] OAuthClient data, response status code and response headers def put_clients_client_id_with_http_info(client_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: OAuthApi#put_clients_client_id ..." end # verify the required parameter 'client_id' is set fail "Missing the required parameter 'client_id' when calling put_clients_client_id" if client_id.nil? # resource path local_var_path = "/api/v2/oauth/clients/{clientId}".sub('{format}','json').sub('{' + 'clientId' + '}', client_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) _header_accept = ['application/json'] _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result # HTTP header 'Content-Type' _header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(opts[:'body']) auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:PUT, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'OAuthClient') if @api_client.config.debugging @api_client.config.logger.debug "API called: OAuthApi#put_clients_client_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end end end