=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@genesys.com Generated by: https://github.com/swagger-api/swagger-codegen.git License: UNLICENSED https://help.mypurecloud.com/articles/terms-and-conditions/ Terms of Service: https://help.mypurecloud.com/articles/terms-and-conditions/ =end require "uri" module PureCloud class AuthorizationApi attr_accessor :api_client def initialize(api_client = ApiClient.default) @api_client = api_client end # Delete a division. # # @param division_id Division ID # @param [Hash] opts the optional parameters # @option opts [BOOLEAN] :force Force delete this division as well as the grants and objects associated with it (default to false) # @return [nil] def delete_authorization_division(division_id, opts = {}) delete_authorization_division_with_http_info(division_id, opts) return nil end # Delete a division. # # @param division_id Division ID # @param [Hash] opts the optional parameters # @option opts [BOOLEAN] :force Force delete this division as well as the grants and objects associated with it # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers def delete_authorization_division_with_http_info(division_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.delete_authorization_division ..." end # verify the required parameter 'division_id' is set fail ArgumentError, "Missing the required parameter 'division_id' when calling AuthorizationApi.delete_authorization_division" if division_id.nil? # resource path local_var_path = "/api/v2/authorization/divisions/{divisionId}".sub('{format}','json').sub('{' + 'divisionId' + '}', division_id.to_s) # query parameters query_params = {} query_params[:'force'] = opts[:'force'] if opts[:'force'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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: AuthorizationApi#delete_authorization_division\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Delete an organization role. # # @param role_id Role ID # @param [Hash] opts the optional parameters # @return [nil] def delete_authorization_role(role_id, opts = {}) delete_authorization_role_with_http_info(role_id, opts) return nil end # Delete an organization role. # # @param role_id Role ID # @param [Hash] opts the optional parameters # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers def delete_authorization_role_with_http_info(role_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.delete_authorization_role ..." end # verify the required parameter 'role_id' is set fail ArgumentError, "Missing the required parameter 'role_id' when calling AuthorizationApi.delete_authorization_role" if role_id.nil? # resource path local_var_path = "/api/v2/authorization/roles/{roleId}".sub('{format}','json').sub('{' + 'roleId' + '}', role_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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: AuthorizationApi#delete_authorization_role\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Delete a grant of a role in a division # # @param subject_id Subject ID (user or group) # @param division_id the id of the division of the grant # @param role_id the id of the role of the grant # @param [Hash] opts the optional parameters # @return [nil] def delete_authorization_subject_division_role(subject_id, division_id, role_id, opts = {}) delete_authorization_subject_division_role_with_http_info(subject_id, division_id, role_id, opts) return nil end # Delete a grant of a role in a division # # @param subject_id Subject ID (user or group) # @param division_id the id of the division of the grant # @param role_id the id of the role of the grant # @param [Hash] opts the optional parameters # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers def delete_authorization_subject_division_role_with_http_info(subject_id, division_id, role_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.delete_authorization_subject_division_role ..." end # verify the required parameter 'subject_id' is set fail ArgumentError, "Missing the required parameter 'subject_id' when calling AuthorizationApi.delete_authorization_subject_division_role" if subject_id.nil? # verify the required parameter 'division_id' is set fail ArgumentError, "Missing the required parameter 'division_id' when calling AuthorizationApi.delete_authorization_subject_division_role" if division_id.nil? # verify the required parameter 'role_id' is set fail ArgumentError, "Missing the required parameter 'role_id' when calling AuthorizationApi.delete_authorization_subject_division_role" if role_id.nil? # resource path local_var_path = "/api/v2/authorization/subjects/{subjectId}/divisions/{divisionId}/roles/{roleId}".sub('{format}','json').sub('{' + 'subjectId' + '}', subject_id.to_s).sub('{' + 'divisionId' + '}', division_id.to_s).sub('{' + 'roleId' + '}', role_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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: AuthorizationApi#delete_authorization_subject_division_role\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Returns an authorization division. # # @param division_id Division ID # @param [Hash] opts the optional parameters # @option opts [BOOLEAN] :object_count Get count of objects in this division, grouped by type (default to false) # @return [AuthzDivision] def get_authorization_division(division_id, opts = {}) data, _status_code, _headers = get_authorization_division_with_http_info(division_id, opts) return data end # Returns an authorization division. # # @param division_id Division ID # @param [Hash] opts the optional parameters # @option opts [BOOLEAN] :object_count Get count of objects in this division, grouped by type # @return [Array<(AuthzDivision, Fixnum, Hash)>] AuthzDivision data, response status code and response headers def get_authorization_division_with_http_info(division_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_division ..." end # verify the required parameter 'division_id' is set fail ArgumentError, "Missing the required parameter 'division_id' when calling AuthorizationApi.get_authorization_division" if division_id.nil? # resource path local_var_path = "/api/v2/authorization/divisions/{divisionId}".sub('{format}','json').sub('{' + 'divisionId' + '}', division_id.to_s) # query parameters query_params = {} query_params[:'objectCount'] = opts[:'object_count'] if opts[:'object_count'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'AuthzDivision') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_division\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Retrieve a list of all divisions defined for the organization # Request specific divisions by id using a query param \"id\", e.g. ?id=5f777167-63be-4c24-ad41-374155d9e28b&id=72e9fb25-c484-488d-9312-7acba82435b3 # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size The total page size requested (default to 25) # @option opts [Integer] :page_number The page number requested (default to 1) # @option opts [String] :sort_by variable name requested to sort by # @option opts [Array] :expand variable name requested by expand list # @option opts [String] :next_page next page token # @option opts [String] :previous_page Previous page token # @option opts [BOOLEAN] :object_count Include the count of objects contained in the division (default to false) # @option opts [Array] :id Optionally request specific divisions by their IDs # @option opts [String] :name Search term to filter by division name # @return [AuthzDivisionEntityListing] def get_authorization_divisions(opts = {}) data, _status_code, _headers = get_authorization_divisions_with_http_info(opts) return data end # Retrieve a list of all divisions defined for the organization # Request specific divisions by id using a query param \"id\", e.g. ?id=5f777167-63be-4c24-ad41-374155d9e28b&id=72e9fb25-c484-488d-9312-7acba82435b3 # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size The total page size requested # @option opts [Integer] :page_number The page number requested # @option opts [String] :sort_by variable name requested to sort by # @option opts [Array] :expand variable name requested by expand list # @option opts [String] :next_page next page token # @option opts [String] :previous_page Previous page token # @option opts [BOOLEAN] :object_count Include the count of objects contained in the division # @option opts [Array] :id Optionally request specific divisions by their IDs # @option opts [String] :name Search term to filter by division name # @return [Array<(AuthzDivisionEntityListing, Fixnum, Hash)>] AuthzDivisionEntityListing data, response status code and response headers def get_authorization_divisions_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_divisions ..." end # resource path local_var_path = "/api/v2/authorization/divisions".sub('{format}','json') # query parameters query_params = {} query_params[:'pageSize'] = opts[:'page_size'] if opts[:'page_size'] query_params[:'pageNumber'] = opts[:'page_number'] if opts[:'page_number'] query_params[:'sortBy'] = opts[:'sort_by'] if opts[:'sort_by'] query_params[:'expand'] = @api_client.build_collection_param(opts[:'expand'], :multi) if opts[:'expand'] query_params[:'nextPage'] = opts[:'next_page'] if opts[:'next_page'] query_params[:'previousPage'] = opts[:'previous_page'] if opts[:'previous_page'] query_params[:'objectCount'] = opts[:'object_count'] if opts[:'object_count'] query_params[:'id'] = @api_client.build_collection_param(opts[:'id'], :multi) if opts[:'id'] query_params[:'name'] = opts[:'name'] if opts[:'name'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'AuthzDivisionEntityListing') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_divisions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Retrieve the home division for the organization. # Will not include object counts. # @param [Hash] opts the optional parameters # @return [AuthzDivision] def get_authorization_divisions_home(opts = {}) data, _status_code, _headers = get_authorization_divisions_home_with_http_info(opts) return data end # Retrieve the home division for the organization. # Will not include object counts. # @param [Hash] opts the optional parameters # @return [Array<(AuthzDivision, Fixnum, Hash)>] AuthzDivision data, response status code and response headers def get_authorization_divisions_home_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_divisions_home ..." end # resource path local_var_path = "/api/v2/authorization/divisions/home".sub('{format}','json') # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'AuthzDivision') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_divisions_home\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Returns the maximum allowed number of divisions. # # @param [Hash] opts the optional parameters # @return [Integer] def get_authorization_divisions_limit(opts = {}) data, _status_code, _headers = get_authorization_divisions_limit_with_http_info(opts) return data end # Returns the maximum allowed number of divisions. # # @param [Hash] opts the optional parameters # @return [Array<(Integer, Fixnum, Hash)>] Integer data, response status code and response headers def get_authorization_divisions_limit_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_divisions_limit ..." end # resource path local_var_path = "/api/v2/authorization/divisions/limit".sub('{format}','json') # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'Integer') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_divisions_limit\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Returns which divisions the current user has the given permission in. # This route is deprecated, use authorization/divisionspermitted/paged/me instead. # @param permission The permission string, including the object to access, e.g. routing:queue:view # @param [Hash] opts the optional parameters # @option opts [String] :name Search term to filter by division name # @return [Array] def get_authorization_divisionspermitted_me(permission, opts = {}) data, _status_code, _headers = get_authorization_divisionspermitted_me_with_http_info(permission, opts) return data end # Returns which divisions the current user has the given permission in. # This route is deprecated, use authorization/divisionspermitted/paged/me instead. # @param permission The permission string, including the object to access, e.g. routing:queue:view # @param [Hash] opts the optional parameters # @option opts [String] :name Search term to filter by division name # @return [Array<(Array, Fixnum, Hash)>] Array data, response status code and response headers def get_authorization_divisionspermitted_me_with_http_info(permission, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_divisionspermitted_me ..." end # verify the required parameter 'permission' is set fail ArgumentError, "Missing the required parameter 'permission' when calling AuthorizationApi.get_authorization_divisionspermitted_me" if permission.nil? # resource path local_var_path = "/api/v2/authorization/divisionspermitted/me".sub('{format}','json') # query parameters query_params = {} query_params[:'permission'] = permission query_params[:'name'] = opts[:'name'] if opts[:'name'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'Array') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_divisionspermitted_me\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Returns which divisions the current user has the given permission in. # # @param permission The permission string, including the object to access, e.g. routing:queue:view # @param [Hash] opts the optional parameters # @option opts [Integer] :page_number Page number (default to 1) # @option opts [Integer] :page_size Page size (default to 25) # @return [DivsPermittedEntityListing] def get_authorization_divisionspermitted_paged_me(permission, opts = {}) data, _status_code, _headers = get_authorization_divisionspermitted_paged_me_with_http_info(permission, opts) return data end # Returns which divisions the current user has the given permission in. # # @param permission The permission string, including the object to access, e.g. routing:queue:view # @param [Hash] opts the optional parameters # @option opts [Integer] :page_number Page number # @option opts [Integer] :page_size Page size # @return [Array<(DivsPermittedEntityListing, Fixnum, Hash)>] DivsPermittedEntityListing data, response status code and response headers def get_authorization_divisionspermitted_paged_me_with_http_info(permission, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_divisionspermitted_paged_me ..." end # verify the required parameter 'permission' is set fail ArgumentError, "Missing the required parameter 'permission' when calling AuthorizationApi.get_authorization_divisionspermitted_paged_me" if permission.nil? # resource path local_var_path = "/api/v2/authorization/divisionspermitted/paged/me".sub('{format}','json') # query parameters query_params = {} query_params[:'permission'] = permission query_params[:'pageNumber'] = opts[:'page_number'] if opts[:'page_number'] query_params[:'pageSize'] = opts[:'page_size'] if opts[:'page_size'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'DivsPermittedEntityListing') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_divisionspermitted_paged_me\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Returns which divisions the specified user has the given permission in. # This route is deprecated, use authorization/divisionspermitted/paged/me instead. # @param subject_id Subject ID (user or group) # @param permission The permission string, including the object to access, e.g. routing:queue:view # @param [Hash] opts the optional parameters # @option opts [Integer] :page_number Page number (default to 1) # @option opts [Integer] :page_size Page size (default to 25) # @return [DivsPermittedEntityListing] def get_authorization_divisionspermitted_paged_subject_id(subject_id, permission, opts = {}) data, _status_code, _headers = get_authorization_divisionspermitted_paged_subject_id_with_http_info(subject_id, permission, opts) return data end # Returns which divisions the specified user has the given permission in. # This route is deprecated, use authorization/divisionspermitted/paged/me instead. # @param subject_id Subject ID (user or group) # @param permission The permission string, including the object to access, e.g. routing:queue:view # @param [Hash] opts the optional parameters # @option opts [Integer] :page_number Page number # @option opts [Integer] :page_size Page size # @return [Array<(DivsPermittedEntityListing, Fixnum, Hash)>] DivsPermittedEntityListing data, response status code and response headers def get_authorization_divisionspermitted_paged_subject_id_with_http_info(subject_id, permission, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_divisionspermitted_paged_subject_id ..." end # verify the required parameter 'subject_id' is set fail ArgumentError, "Missing the required parameter 'subject_id' when calling AuthorizationApi.get_authorization_divisionspermitted_paged_subject_id" if subject_id.nil? # verify the required parameter 'permission' is set fail ArgumentError, "Missing the required parameter 'permission' when calling AuthorizationApi.get_authorization_divisionspermitted_paged_subject_id" if permission.nil? # resource path local_var_path = "/api/v2/authorization/divisionspermitted/paged/{subjectId}".sub('{format}','json').sub('{' + 'subjectId' + '}', subject_id.to_s) # query parameters query_params = {} query_params[:'permission'] = permission query_params[:'pageNumber'] = opts[:'page_number'] if opts[:'page_number'] query_params[:'pageSize'] = opts[:'page_size'] if opts[:'page_size'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'DivsPermittedEntityListing') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_divisionspermitted_paged_subject_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Returns which divisions the specified user has the given permission in. # This route is deprecated, use authorization/divisionspermitted/paged/{subjectId} instead. # @param subject_id Subject ID (user or group) # @param permission The permission string, including the object to access, e.g. routing:queue:view # @param [Hash] opts the optional parameters # @option opts [String] :name Search term to filter by division name # @return [Array] def get_authorization_divisionspermitted_subject_id(subject_id, permission, opts = {}) data, _status_code, _headers = get_authorization_divisionspermitted_subject_id_with_http_info(subject_id, permission, opts) return data end # Returns which divisions the specified user has the given permission in. # This route is deprecated, use authorization/divisionspermitted/paged/{subjectId} instead. # @param subject_id Subject ID (user or group) # @param permission The permission string, including the object to access, e.g. routing:queue:view # @param [Hash] opts the optional parameters # @option opts [String] :name Search term to filter by division name # @return [Array<(Array, Fixnum, Hash)>] Array data, response status code and response headers def get_authorization_divisionspermitted_subject_id_with_http_info(subject_id, permission, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_divisionspermitted_subject_id ..." end # verify the required parameter 'subject_id' is set fail ArgumentError, "Missing the required parameter 'subject_id' when calling AuthorizationApi.get_authorization_divisionspermitted_subject_id" if subject_id.nil? # verify the required parameter 'permission' is set fail ArgumentError, "Missing the required parameter 'permission' when calling AuthorizationApi.get_authorization_divisionspermitted_subject_id" if permission.nil? # resource path local_var_path = "/api/v2/authorization/divisionspermitted/{subjectId}".sub('{format}','json').sub('{' + 'subjectId' + '}', subject_id.to_s) # query parameters query_params = {} query_params[:'permission'] = permission query_params[:'name'] = opts[:'name'] if opts[:'name'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'Array') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_divisionspermitted_subject_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get all permissions. # Retrieve a list of all permission defined in the system. # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size Page size (default to 25) # @option opts [Integer] :page_number Page number (default to 1) # @return [PermissionCollectionEntityListing] def get_authorization_permissions(opts = {}) data, _status_code, _headers = get_authorization_permissions_with_http_info(opts) return data end # Get all permissions. # Retrieve a list of all permission defined in the system. # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size Page size # @option opts [Integer] :page_number Page number # @return [Array<(PermissionCollectionEntityListing, Fixnum, Hash)>] PermissionCollectionEntityListing data, response status code and response headers def get_authorization_permissions_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_permissions ..." end # resource path local_var_path = "/api/v2/authorization/permissions".sub('{format}','json') # query parameters query_params = {} query_params[:'pageSize'] = opts[:'page_size'] if opts[:'page_size'] query_params[:'pageNumber'] = opts[:'page_number'] if opts[:'page_number'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'PermissionCollectionEntityListing') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_permissions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get the list of enabled products # Gets the list of enabled products. Some example product names are: collaborateFree, collaboratePro, communicate, and engage. # @param [Hash] opts the optional parameters # @return [OrganizationProductEntityListing] def get_authorization_products(opts = {}) data, _status_code, _headers = get_authorization_products_with_http_info(opts) return data end # Get the list of enabled products # Gets the list of enabled products. Some example product names are: collaborateFree, collaboratePro, communicate, and engage. # @param [Hash] opts the optional parameters # @return [Array<(OrganizationProductEntityListing, Fixnum, Hash)>] OrganizationProductEntityListing data, response status code and response headers def get_authorization_products_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_products ..." end # resource path local_var_path = "/api/v2/authorization/products".sub('{format}','json') # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'OrganizationProductEntityListing') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_products\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get a single organization role. # Get the organization role specified by its ID. # @param role_id Role ID # @param [Hash] opts the optional parameters # @option opts [Array] :expand Which fields, if any, to expand. \"unusedPermissions\" returns the permissions not used for the role # @return [DomainOrganizationRole] def get_authorization_role(role_id, opts = {}) data, _status_code, _headers = get_authorization_role_with_http_info(role_id, opts) return data end # Get a single organization role. # Get the organization role specified by its ID. # @param role_id Role ID # @param [Hash] opts the optional parameters # @option opts [Array] :expand Which fields, if any, to expand. \"unusedPermissions\" returns the permissions not used for the role # @return [Array<(DomainOrganizationRole, Fixnum, Hash)>] DomainOrganizationRole data, response status code and response headers def get_authorization_role_with_http_info(role_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_role ..." end # verify the required parameter 'role_id' is set fail ArgumentError, "Missing the required parameter 'role_id' when calling AuthorizationApi.get_authorization_role" if role_id.nil? # resource path local_var_path = "/api/v2/authorization/roles/{roleId}".sub('{format}','json').sub('{' + 'roleId' + '}', role_id.to_s) # query parameters query_params = {} query_params[:'expand'] = @api_client.build_collection_param(opts[:'expand'], :multi) if opts[:'expand'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'DomainOrganizationRole') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_role\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get an org role to default role comparison # Compares any organization role to a default role id and show differences # @param left_role_id Left Role ID # @param right_role_id Right Role id # @param [Hash] opts the optional parameters # @return [DomainOrgRoleDifference] def get_authorization_role_comparedefault_right_role_id(left_role_id, right_role_id, opts = {}) data, _status_code, _headers = get_authorization_role_comparedefault_right_role_id_with_http_info(left_role_id, right_role_id, opts) return data end # Get an org role to default role comparison # Compares any organization role to a default role id and show differences # @param left_role_id Left Role ID # @param right_role_id Right Role id # @param [Hash] opts the optional parameters # @return [Array<(DomainOrgRoleDifference, Fixnum, Hash)>] DomainOrgRoleDifference data, response status code and response headers def get_authorization_role_comparedefault_right_role_id_with_http_info(left_role_id, right_role_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_role_comparedefault_right_role_id ..." end # verify the required parameter 'left_role_id' is set fail ArgumentError, "Missing the required parameter 'left_role_id' when calling AuthorizationApi.get_authorization_role_comparedefault_right_role_id" if left_role_id.nil? # verify the required parameter 'right_role_id' is set fail ArgumentError, "Missing the required parameter 'right_role_id' when calling AuthorizationApi.get_authorization_role_comparedefault_right_role_id" if right_role_id.nil? # resource path local_var_path = "/api/v2/authorization/roles/{leftRoleId}/comparedefault/{rightRoleId}".sub('{format}','json').sub('{' + 'leftRoleId' + '}', left_role_id.to_s).sub('{' + 'rightRoleId' + '}', right_role_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'DomainOrgRoleDifference') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_role_comparedefault_right_role_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get the subjects' granted divisions in the specified role. # Includes the divisions for which the subject has a grant. # @param role_id Role ID # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size The total page size requested (default to 25) # @option opts [Integer] :page_number The page number requested (default to 1) # @option opts [String] :sort_by variable name requested to sort by # @option opts [Array] :expand variable name requested by expand list # @option opts [String] :next_page next page token # @option opts [String] :previous_page Previous page token # @return [SubjectDivisionGrantsEntityListing] def get_authorization_role_subjectgrants(role_id, opts = {}) data, _status_code, _headers = get_authorization_role_subjectgrants_with_http_info(role_id, opts) return data end # Get the subjects' granted divisions in the specified role. # Includes the divisions for which the subject has a grant. # @param role_id Role ID # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size The total page size requested # @option opts [Integer] :page_number The page number requested # @option opts [String] :sort_by variable name requested to sort by # @option opts [Array] :expand variable name requested by expand list # @option opts [String] :next_page next page token # @option opts [String] :previous_page Previous page token # @return [Array<(SubjectDivisionGrantsEntityListing, Fixnum, Hash)>] SubjectDivisionGrantsEntityListing data, response status code and response headers def get_authorization_role_subjectgrants_with_http_info(role_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_role_subjectgrants ..." end # verify the required parameter 'role_id' is set fail ArgumentError, "Missing the required parameter 'role_id' when calling AuthorizationApi.get_authorization_role_subjectgrants" if role_id.nil? # resource path local_var_path = "/api/v2/authorization/roles/{roleId}/subjectgrants".sub('{format}','json').sub('{' + 'roleId' + '}', role_id.to_s) # query parameters query_params = {} query_params[:'pageSize'] = opts[:'page_size'] if opts[:'page_size'] query_params[:'pageNumber'] = opts[:'page_number'] if opts[:'page_number'] query_params[:'sortBy'] = opts[:'sort_by'] if opts[:'sort_by'] query_params[:'expand'] = @api_client.build_collection_param(opts[:'expand'], :multi) if opts[:'expand'] query_params[:'nextPage'] = opts[:'next_page'] if opts[:'next_page'] query_params[:'previousPage'] = opts[:'previous_page'] if opts[:'previous_page'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'SubjectDivisionGrantsEntityListing') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_role_subjectgrants\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get a list of the users in a specified role. # Get an array of the UUIDs of the users in the specified role. # @param role_id Role ID # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size Page size (default to 25) # @option opts [Integer] :page_number Page number (default to 1) # @return [UserEntityListing] def get_authorization_role_users(role_id, opts = {}) data, _status_code, _headers = get_authorization_role_users_with_http_info(role_id, opts) return data end # Get a list of the users in a specified role. # Get an array of the UUIDs of the users in the specified role. # @param role_id Role ID # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size Page size # @option opts [Integer] :page_number Page number # @return [Array<(UserEntityListing, Fixnum, Hash)>] UserEntityListing data, response status code and response headers def get_authorization_role_users_with_http_info(role_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_role_users ..." end # verify the required parameter 'role_id' is set fail ArgumentError, "Missing the required parameter 'role_id' when calling AuthorizationApi.get_authorization_role_users" if role_id.nil? # resource path local_var_path = "/api/v2/authorization/roles/{roleId}/users".sub('{format}','json').sub('{' + 'roleId' + '}', role_id.to_s) # query parameters query_params = {} query_params[:'pageSize'] = opts[:'page_size'] if opts[:'page_size'] query_params[:'pageNumber'] = opts[:'page_number'] if opts[:'page_number'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'UserEntityListing') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_role_users\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Retrieve a list of all roles defined for the organization # # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size The total page size requested (default to 25) # @option opts [Integer] :page_number The page number requested (default to 1) # @option opts [String] :sort_by variable name requested to sort by # @option opts [Array] :expand variable name requested by expand list # @option opts [String] :next_page next page token # @option opts [String] :previous_page Previous page token # @option opts [String] :name # @option opts [Array] :permission # @option opts [Array] :default_role_id # @option opts [BOOLEAN] :user_count (default to true) # @option opts [Array] :id id # @return [OrganizationRoleEntityListing] def get_authorization_roles(opts = {}) data, _status_code, _headers = get_authorization_roles_with_http_info(opts) return data end # Retrieve a list of all roles defined for the organization # # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size The total page size requested # @option opts [Integer] :page_number The page number requested # @option opts [String] :sort_by variable name requested to sort by # @option opts [Array] :expand variable name requested by expand list # @option opts [String] :next_page next page token # @option opts [String] :previous_page Previous page token # @option opts [String] :name # @option opts [Array] :permission # @option opts [Array] :default_role_id # @option opts [BOOLEAN] :user_count # @option opts [Array] :id id # @return [Array<(OrganizationRoleEntityListing, Fixnum, Hash)>] OrganizationRoleEntityListing data, response status code and response headers def get_authorization_roles_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_roles ..." end # resource path local_var_path = "/api/v2/authorization/roles".sub('{format}','json') # query parameters query_params = {} query_params[:'pageSize'] = opts[:'page_size'] if opts[:'page_size'] query_params[:'pageNumber'] = opts[:'page_number'] if opts[:'page_number'] query_params[:'sortBy'] = opts[:'sort_by'] if opts[:'sort_by'] query_params[:'expand'] = @api_client.build_collection_param(opts[:'expand'], :multi) if opts[:'expand'] query_params[:'nextPage'] = opts[:'next_page'] if opts[:'next_page'] query_params[:'previousPage'] = opts[:'previous_page'] if opts[:'previous_page'] query_params[:'name'] = opts[:'name'] if opts[:'name'] query_params[:'permission'] = @api_client.build_collection_param(opts[:'permission'], :multi) if opts[:'permission'] query_params[:'defaultRoleId'] = @api_client.build_collection_param(opts[:'default_role_id'], :multi) if opts[:'default_role_id'] query_params[:'userCount'] = opts[:'user_count'] if opts[:'user_count'] query_params[:'id'] = @api_client.build_collection_param(opts[:'id'], :multi) if opts[:'id'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'OrganizationRoleEntityListing') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_roles\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Returns a listing of roles and permissions for a user. # # @param subject_id Subject ID (user or group) # @param [Hash] opts the optional parameters # @return [AuthzSubject] def get_authorization_subject(subject_id, opts = {}) data, _status_code, _headers = get_authorization_subject_with_http_info(subject_id, opts) return data end # Returns a listing of roles and permissions for a user. # # @param subject_id Subject ID (user or group) # @param [Hash] opts the optional parameters # @return [Array<(AuthzSubject, Fixnum, Hash)>] AuthzSubject data, response status code and response headers def get_authorization_subject_with_http_info(subject_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_subject ..." end # verify the required parameter 'subject_id' is set fail ArgumentError, "Missing the required parameter 'subject_id' when calling AuthorizationApi.get_authorization_subject" if subject_id.nil? # resource path local_var_path = "/api/v2/authorization/subjects/{subjectId}".sub('{format}','json').sub('{' + 'subjectId' + '}', subject_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'AuthzSubject') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_subject\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Returns a listing of roles and permissions for the currently authenticated user. # # @param [Hash] opts the optional parameters # @return [AuthzSubject] def get_authorization_subjects_me(opts = {}) data, _status_code, _headers = get_authorization_subjects_me_with_http_info(opts) return data end # Returns a listing of roles and permissions for the currently authenticated user. # # @param [Hash] opts the optional parameters # @return [Array<(AuthzSubject, Fixnum, Hash)>] AuthzSubject data, response status code and response headers def get_authorization_subjects_me_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_subjects_me ..." end # resource path local_var_path = "/api/v2/authorization/subjects/me".sub('{format}','json') # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'AuthzSubject') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_subjects_me\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get the count of roles granted to a list of subjects # # @param [Hash] opts the optional parameters # @option opts [Array] :id id # @return [Hash] def get_authorization_subjects_rolecounts(opts = {}) data, _status_code, _headers = get_authorization_subjects_rolecounts_with_http_info(opts) return data end # Get the count of roles granted to a list of subjects # # @param [Hash] opts the optional parameters # @option opts [Array] :id id # @return [Array<(Hash, Fixnum, Hash)>] Hash data, response status code and response headers def get_authorization_subjects_rolecounts_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_authorization_subjects_rolecounts ..." end # resource path local_var_path = "/api/v2/authorization/subjects/rolecounts".sub('{format}','json') # query parameters query_params = {} query_params[:'id'] = @api_client.build_collection_param(opts[:'id'], :multi) if opts[:'id'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'Hash') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_authorization_subjects_rolecounts\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Returns a listing of roles and permissions for a user. # # @param user_id User ID # @param [Hash] opts the optional parameters # @return [UserAuthorization] def get_user_roles(user_id, opts = {}) data, _status_code, _headers = get_user_roles_with_http_info(user_id, opts) return data end # Returns a listing of roles and permissions for a user. # # @param user_id User ID # @param [Hash] opts the optional parameters # @return [Array<(UserAuthorization, Fixnum, Hash)>] UserAuthorization data, response status code and response headers def get_user_roles_with_http_info(user_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.get_user_roles ..." end # verify the required parameter 'user_id' is set fail ArgumentError, "Missing the required parameter 'user_id' when calling AuthorizationApi.get_user_roles" if user_id.nil? # resource path local_var_path = "/api/v2/users/{userId}/roles".sub('{format}','json').sub('{' + 'userId' + '}', user_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'UserAuthorization') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#get_user_roles\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Patch Organization Role for needsUpdate Field # Patch Organization Role for needsUpdate Field # @param role_id Role ID # @param body Organization role # @param [Hash] opts the optional parameters # @return [DomainOrganizationRole] def patch_authorization_role(role_id, body, opts = {}) data, _status_code, _headers = patch_authorization_role_with_http_info(role_id, body, opts) return data end # Patch Organization Role for needsUpdate Field # Patch Organization Role for needsUpdate Field # @param role_id Role ID # @param body Organization role # @param [Hash] opts the optional parameters # @return [Array<(DomainOrganizationRole, Fixnum, Hash)>] DomainOrganizationRole data, response status code and response headers def patch_authorization_role_with_http_info(role_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.patch_authorization_role ..." end # verify the required parameter 'role_id' is set fail ArgumentError, "Missing the required parameter 'role_id' when calling AuthorizationApi.patch_authorization_role" if role_id.nil? # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling AuthorizationApi.patch_authorization_role" if body.nil? # resource path local_var_path = "/api/v2/authorization/roles/{roleId}".sub('{format}','json').sub('{' + 'roleId' + '}', role_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud OAuth'] data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'DomainOrganizationRole') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#patch_authorization_role\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Assign a list of objects to a division # Set the division of a specified list of objects. The objects must all be of the same type, one of: CAMPAIGN, MANAGEMENTUNIT, FLOW, QUEUE, or USER. The body of the request is a list of object IDs, which are expected to be GUIDs, e.g. [\"206ce31f-61ec-40ed-a8b1-be6f06303998\",\"250a754e-f5e4-4f51-800f-a92f09d3bf8c\"] # @param division_id Division ID # @param object_type The type of the objects. Must be one of the valid object types # @param body Object Id List # @param [Hash] opts the optional parameters # @return [nil] def post_authorization_division_object(division_id, object_type, body, opts = {}) post_authorization_division_object_with_http_info(division_id, object_type, body, opts) return nil end # Assign a list of objects to a division # Set the division of a specified list of objects. The objects must all be of the same type, one of: CAMPAIGN, MANAGEMENTUNIT, FLOW, QUEUE, or USER. The body of the request is a list of object IDs, which are expected to be GUIDs, e.g. [\"206ce31f-61ec-40ed-a8b1-be6f06303998\",\"250a754e-f5e4-4f51-800f-a92f09d3bf8c\"] # @param division_id Division ID # @param object_type The type of the objects. Must be one of the valid object types # @param body Object Id List # @param [Hash] opts the optional parameters # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers def post_authorization_division_object_with_http_info(division_id, object_type, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.post_authorization_division_object ..." end # verify the required parameter 'division_id' is set fail ArgumentError, "Missing the required parameter 'division_id' when calling AuthorizationApi.post_authorization_division_object" if division_id.nil? # verify the required parameter 'object_type' is set fail ArgumentError, "Missing the required parameter 'object_type' when calling AuthorizationApi.post_authorization_division_object" if object_type.nil? # verify enum value unless ['QUEUE', 'CAMPAIGN', 'CONTACTLIST', 'DNCLIST', 'MESSAGINGCAMPAIGN', 'MANAGEMENTUNIT', 'BUSINESSUNIT', 'FLOW', 'USER'].include?(object_type) fail ArgumentError, "invalid value for 'object_type', must be one of QUEUE, CAMPAIGN, CONTACTLIST, DNCLIST, MESSAGINGCAMPAIGN, MANAGEMENTUNIT, BUSINESSUNIT, FLOW, USER" end # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling AuthorizationApi.post_authorization_division_object" if body.nil? # resource path local_var_path = "/api/v2/authorization/divisions/{divisionId}/objects/{objectType}".sub('{format}','json').sub('{' + 'divisionId' + '}', division_id.to_s).sub('{' + 'objectType' + '}', object_type.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud OAuth'] 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: AuthorizationApi#post_authorization_division_object\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Create a division. # # @param body Division # @param [Hash] opts the optional parameters # @return [AuthzDivision] def post_authorization_divisions(body, opts = {}) data, _status_code, _headers = post_authorization_divisions_with_http_info(body, opts) return data end # Create a division. # # @param body Division # @param [Hash] opts the optional parameters # @return [Array<(AuthzDivision, Fixnum, Hash)>] AuthzDivision data, response status code and response headers def post_authorization_divisions_with_http_info(body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.post_authorization_divisions ..." end # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling AuthorizationApi.post_authorization_divisions" if body.nil? # resource path local_var_path = "/api/v2/authorization/divisions".sub('{format}','json') # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud OAuth'] 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 => 'AuthzDivision') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#post_authorization_divisions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Bulk-grant subjects and divisions with an organization role. # # @param role_id Role ID # @param body Subjects and Divisions # @param [Hash] opts the optional parameters # @option opts [String] :subject_type what the type of the subjects are (PC_GROUP, PC_USER or PC_OAUTH_CLIENT) (default to PC_USER) # @return [nil] def post_authorization_role(role_id, body, opts = {}) post_authorization_role_with_http_info(role_id, body, opts) return nil end # Bulk-grant subjects and divisions with an organization role. # # @param role_id Role ID # @param body Subjects and Divisions # @param [Hash] opts the optional parameters # @option opts [String] :subject_type what the type of the subjects are (PC_GROUP, PC_USER or PC_OAUTH_CLIENT) # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers def post_authorization_role_with_http_info(role_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.post_authorization_role ..." end # verify the required parameter 'role_id' is set fail ArgumentError, "Missing the required parameter 'role_id' when calling AuthorizationApi.post_authorization_role" if role_id.nil? # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling AuthorizationApi.post_authorization_role" if body.nil? # resource path local_var_path = "/api/v2/authorization/roles/{roleId}".sub('{format}','json').sub('{' + 'roleId' + '}', role_id.to_s) # query parameters query_params = {} query_params[:'subjectType'] = opts[:'subject_type'] if opts[:'subject_type'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud OAuth'] 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: AuthorizationApi#post_authorization_role\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get an unsaved org role to default role comparison # Allows users to compare their existing roles in an unsaved state to its default role # @param left_role_id Left Role ID # @param right_role_id Right Role id # @param body Organization role # @param [Hash] opts the optional parameters # @return [DomainOrgRoleDifference] def post_authorization_role_comparedefault_right_role_id(left_role_id, right_role_id, body, opts = {}) data, _status_code, _headers = post_authorization_role_comparedefault_right_role_id_with_http_info(left_role_id, right_role_id, body, opts) return data end # Get an unsaved org role to default role comparison # Allows users to compare their existing roles in an unsaved state to its default role # @param left_role_id Left Role ID # @param right_role_id Right Role id # @param body Organization role # @param [Hash] opts the optional parameters # @return [Array<(DomainOrgRoleDifference, Fixnum, Hash)>] DomainOrgRoleDifference data, response status code and response headers def post_authorization_role_comparedefault_right_role_id_with_http_info(left_role_id, right_role_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.post_authorization_role_comparedefault_right_role_id ..." end # verify the required parameter 'left_role_id' is set fail ArgumentError, "Missing the required parameter 'left_role_id' when calling AuthorizationApi.post_authorization_role_comparedefault_right_role_id" if left_role_id.nil? # verify the required parameter 'right_role_id' is set fail ArgumentError, "Missing the required parameter 'right_role_id' when calling AuthorizationApi.post_authorization_role_comparedefault_right_role_id" if right_role_id.nil? # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling AuthorizationApi.post_authorization_role_comparedefault_right_role_id" if body.nil? # resource path local_var_path = "/api/v2/authorization/roles/{leftRoleId}/comparedefault/{rightRoleId}".sub('{format}','json').sub('{' + 'leftRoleId' + '}', left_role_id.to_s).sub('{' + 'rightRoleId' + '}', right_role_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud OAuth'] 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 => 'DomainOrgRoleDifference') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#post_authorization_role_comparedefault_right_role_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Create an organization role. # # @param body Organization role # @param [Hash] opts the optional parameters # @return [DomainOrganizationRole] def post_authorization_roles(body, opts = {}) data, _status_code, _headers = post_authorization_roles_with_http_info(body, opts) return data end # Create an organization role. # # @param body Organization role # @param [Hash] opts the optional parameters # @return [Array<(DomainOrganizationRole, Fixnum, Hash)>] DomainOrganizationRole data, response status code and response headers def post_authorization_roles_with_http_info(body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.post_authorization_roles ..." end # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling AuthorizationApi.post_authorization_roles" if body.nil? # resource path local_var_path = "/api/v2/authorization/roles".sub('{format}','json') # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud OAuth'] 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 => 'DomainOrganizationRole') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#post_authorization_roles\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Restores all default roles # This endpoint serves several purposes. 1. It provides the org with default roles. This is important for default roles that will be added after go-live (they can retroactively add the new default-role). Note: When not using a query param of force=true, it only adds the default roles not configured for the org; it does not overwrite roles. 2. Using the query param force=true, you can restore all default roles. Note: This does not have an effect on custom roles. # @param [Hash] opts the optional parameters # @option opts [BOOLEAN] :force Restore default roles (default to false) # @return [OrganizationRoleEntityListing] def post_authorization_roles_default(opts = {}) data, _status_code, _headers = post_authorization_roles_default_with_http_info(opts) return data end # Restores all default roles # This endpoint serves several purposes. 1. It provides the org with default roles. This is important for default roles that will be added after go-live (they can retroactively add the new default-role). Note: When not using a query param of force=true, it only adds the default roles not configured for the org; it does not overwrite roles. 2. Using the query param force=true, you can restore all default roles. Note: This does not have an effect on custom roles. # @param [Hash] opts the optional parameters # @option opts [BOOLEAN] :force Restore default roles # @return [Array<(OrganizationRoleEntityListing, Fixnum, Hash)>] OrganizationRoleEntityListing data, response status code and response headers def post_authorization_roles_default_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.post_authorization_roles_default ..." end # resource path local_var_path = "/api/v2/authorization/roles/default".sub('{format}','json') # query parameters query_params = {} query_params[:'force'] = opts[:'force'] if opts[:'force'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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 => 'OrganizationRoleEntityListing') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#post_authorization_roles_default\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Bulk-grant roles and divisions to a subject. # # @param subject_id Subject ID (user or group) # @param body Pairs of role and division IDs # @param [Hash] opts the optional parameters # @option opts [String] :subject_type what the type of the subject is (PC_GROUP, PC_USER or PC_OAUTH_CLIENT) (default to PC_USER) # @return [nil] def post_authorization_subject_bulkadd(subject_id, body, opts = {}) post_authorization_subject_bulkadd_with_http_info(subject_id, body, opts) return nil end # Bulk-grant roles and divisions to a subject. # # @param subject_id Subject ID (user or group) # @param body Pairs of role and division IDs # @param [Hash] opts the optional parameters # @option opts [String] :subject_type what the type of the subject is (PC_GROUP, PC_USER or PC_OAUTH_CLIENT) # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers def post_authorization_subject_bulkadd_with_http_info(subject_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.post_authorization_subject_bulkadd ..." end # verify the required parameter 'subject_id' is set fail ArgumentError, "Missing the required parameter 'subject_id' when calling AuthorizationApi.post_authorization_subject_bulkadd" if subject_id.nil? # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling AuthorizationApi.post_authorization_subject_bulkadd" if body.nil? # resource path local_var_path = "/api/v2/authorization/subjects/{subjectId}/bulkadd".sub('{format}','json').sub('{' + 'subjectId' + '}', subject_id.to_s) # query parameters query_params = {} query_params[:'subjectType'] = opts[:'subject_type'] if opts[:'subject_type'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud OAuth'] 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: AuthorizationApi#post_authorization_subject_bulkadd\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Bulk-remove grants from a subject. # # @param subject_id Subject ID (user or group) # @param body Pairs of role and division IDs # @param [Hash] opts the optional parameters # @return [nil] def post_authorization_subject_bulkremove(subject_id, body, opts = {}) post_authorization_subject_bulkremove_with_http_info(subject_id, body, opts) return nil end # Bulk-remove grants from a subject. # # @param subject_id Subject ID (user or group) # @param body Pairs of role and division IDs # @param [Hash] opts the optional parameters # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers def post_authorization_subject_bulkremove_with_http_info(subject_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.post_authorization_subject_bulkremove ..." end # verify the required parameter 'subject_id' is set fail ArgumentError, "Missing the required parameter 'subject_id' when calling AuthorizationApi.post_authorization_subject_bulkremove" if subject_id.nil? # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling AuthorizationApi.post_authorization_subject_bulkremove" if body.nil? # resource path local_var_path = "/api/v2/authorization/subjects/{subjectId}/bulkremove".sub('{format}','json').sub('{' + 'subjectId' + '}', subject_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud OAuth'] 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: AuthorizationApi#post_authorization_subject_bulkremove\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Make a grant of a role in a division # # @param subject_id Subject ID (user or group) # @param division_id the id of the division to which to make the grant # @param role_id the id of the role to grant # @param [Hash] opts the optional parameters # @option opts [String] :subject_type what the type of the subject is: PC_GROUP, PC_USER or PC_OAUTH_CLIENT (note: for cross-org authorization, please use the Organization Authorization endpoints) (default to PC_USER) # @return [nil] def post_authorization_subject_division_role(subject_id, division_id, role_id, opts = {}) post_authorization_subject_division_role_with_http_info(subject_id, division_id, role_id, opts) return nil end # Make a grant of a role in a division # # @param subject_id Subject ID (user or group) # @param division_id the id of the division to which to make the grant # @param role_id the id of the role to grant # @param [Hash] opts the optional parameters # @option opts [String] :subject_type what the type of the subject is: PC_GROUP, PC_USER or PC_OAUTH_CLIENT (note: for cross-org authorization, please use the Organization Authorization endpoints) # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers def post_authorization_subject_division_role_with_http_info(subject_id, division_id, role_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.post_authorization_subject_division_role ..." end # verify the required parameter 'subject_id' is set fail ArgumentError, "Missing the required parameter 'subject_id' when calling AuthorizationApi.post_authorization_subject_division_role" if subject_id.nil? # verify the required parameter 'division_id' is set fail ArgumentError, "Missing the required parameter 'division_id' when calling AuthorizationApi.post_authorization_subject_division_role" if division_id.nil? # verify the required parameter 'role_id' is set fail ArgumentError, "Missing the required parameter 'role_id' when calling AuthorizationApi.post_authorization_subject_division_role" if role_id.nil? # resource path local_var_path = "/api/v2/authorization/subjects/{subjectId}/divisions/{divisionId}/roles/{roleId}".sub('{format}','json').sub('{' + 'subjectId' + '}', subject_id.to_s).sub('{' + 'divisionId' + '}', division_id.to_s).sub('{' + 'roleId' + '}', role_id.to_s) # query parameters query_params = {} query_params[:'subjectType'] = opts[:'subject_type'] if opts[:'subject_type'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud OAuth'] 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: AuthorizationApi#post_authorization_subject_division_role\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Update a division. # # @param division_id Division ID # @param body Updated division data # @param [Hash] opts the optional parameters # @return [AuthzDivision] def put_authorization_division(division_id, body, opts = {}) data, _status_code, _headers = put_authorization_division_with_http_info(division_id, body, opts) return data end # Update a division. # # @param division_id Division ID # @param body Updated division data # @param [Hash] opts the optional parameters # @return [Array<(AuthzDivision, Fixnum, Hash)>] AuthzDivision data, response status code and response headers def put_authorization_division_with_http_info(division_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.put_authorization_division ..." end # verify the required parameter 'division_id' is set fail ArgumentError, "Missing the required parameter 'division_id' when calling AuthorizationApi.put_authorization_division" if division_id.nil? # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling AuthorizationApi.put_authorization_division" if body.nil? # resource path local_var_path = "/api/v2/authorization/divisions/{divisionId}".sub('{format}','json').sub('{' + 'divisionId' + '}', division_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud OAuth'] 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 => 'AuthzDivision') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#put_authorization_division\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Update an organization role. # Update # @param role_id Role ID # @param body Organization role # @param [Hash] opts the optional parameters # @return [DomainOrganizationRole] def put_authorization_role(role_id, body, opts = {}) data, _status_code, _headers = put_authorization_role_with_http_info(role_id, body, opts) return data end # Update an organization role. # Update # @param role_id Role ID # @param body Organization role # @param [Hash] opts the optional parameters # @return [Array<(DomainOrganizationRole, Fixnum, Hash)>] DomainOrganizationRole data, response status code and response headers def put_authorization_role_with_http_info(role_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.put_authorization_role ..." end # verify the required parameter 'role_id' is set fail ArgumentError, "Missing the required parameter 'role_id' when calling AuthorizationApi.put_authorization_role" if role_id.nil? # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling AuthorizationApi.put_authorization_role" if body.nil? # resource path local_var_path = "/api/v2/authorization/roles/{roleId}".sub('{format}','json').sub('{' + 'roleId' + '}', role_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud OAuth'] 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 => 'DomainOrganizationRole') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#put_authorization_role\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Sets the users for the role # # @param role_id Role ID # @param body List of user IDs # @param [Hash] opts the optional parameters # @return [Array] def put_authorization_role_users_add(role_id, body, opts = {}) data, _status_code, _headers = put_authorization_role_users_add_with_http_info(role_id, body, opts) return data end # Sets the users for the role # # @param role_id Role ID # @param body List of user IDs # @param [Hash] opts the optional parameters # @return [Array<(Array, Fixnum, Hash)>] Array data, response status code and response headers def put_authorization_role_users_add_with_http_info(role_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.put_authorization_role_users_add ..." end # verify the required parameter 'role_id' is set fail ArgumentError, "Missing the required parameter 'role_id' when calling AuthorizationApi.put_authorization_role_users_add" if role_id.nil? # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling AuthorizationApi.put_authorization_role_users_add" if body.nil? # resource path local_var_path = "/api/v2/authorization/roles/{roleId}/users/add".sub('{format}','json').sub('{' + 'roleId' + '}', role_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud OAuth'] 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 => 'Array') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#put_authorization_role_users_add\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Removes the users from the role # # @param role_id Role ID # @param body List of user IDs # @param [Hash] opts the optional parameters # @return [Array] def put_authorization_role_users_remove(role_id, body, opts = {}) data, _status_code, _headers = put_authorization_role_users_remove_with_http_info(role_id, body, opts) return data end # Removes the users from the role # # @param role_id Role ID # @param body List of user IDs # @param [Hash] opts the optional parameters # @return [Array<(Array, Fixnum, Hash)>] Array data, response status code and response headers def put_authorization_role_users_remove_with_http_info(role_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.put_authorization_role_users_remove ..." end # verify the required parameter 'role_id' is set fail ArgumentError, "Missing the required parameter 'role_id' when calling AuthorizationApi.put_authorization_role_users_remove" if role_id.nil? # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling AuthorizationApi.put_authorization_role_users_remove" if body.nil? # resource path local_var_path = "/api/v2/authorization/roles/{roleId}/users/remove".sub('{format}','json').sub('{' + 'roleId' + '}', role_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud OAuth'] 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 => 'Array') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#put_authorization_role_users_remove\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Restore specified default roles # # @param body Organization roles list # @param [Hash] opts the optional parameters # @return [OrganizationRoleEntityListing] def put_authorization_roles_default(body, opts = {}) data, _status_code, _headers = put_authorization_roles_default_with_http_info(body, opts) return data end # Restore specified default roles # # @param body Organization roles list # @param [Hash] opts the optional parameters # @return [Array<(OrganizationRoleEntityListing, Fixnum, Hash)>] OrganizationRoleEntityListing data, response status code and response headers def put_authorization_roles_default_with_http_info(body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.put_authorization_roles_default ..." end # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling AuthorizationApi.put_authorization_roles_default" if body.nil? # resource path local_var_path = "/api/v2/authorization/roles/default".sub('{format}','json') # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud OAuth'] 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 => 'OrganizationRoleEntityListing') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#put_authorization_roles_default\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Sets the user's roles # # @param user_id User ID # @param body List of roles # @param [Hash] opts the optional parameters # @return [UserAuthorization] def put_user_roles(user_id, body, opts = {}) data, _status_code, _headers = put_user_roles_with_http_info(user_id, body, opts) return data end # Sets the user's roles # # @param user_id User ID # @param body List of roles # @param [Hash] opts the optional parameters # @return [Array<(UserAuthorization, Fixnum, Hash)>] UserAuthorization data, response status code and response headers def put_user_roles_with_http_info(user_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: AuthorizationApi.put_user_roles ..." end # verify the required parameter 'user_id' is set fail ArgumentError, "Missing the required parameter 'user_id' when calling AuthorizationApi.put_user_roles" if user_id.nil? # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling AuthorizationApi.put_user_roles" if body.nil? # resource path local_var_path = "/api/v2/users/{userId}/roles".sub('{format}','json').sub('{' + 'userId' + '}', user_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud OAuth'] 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 => 'UserAuthorization') if @api_client.config.debugging @api_client.config.logger.debug "API called: AuthorizationApi#put_user_roles\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end end end