class PhoneComClient::GroupsApi

Attributes

api_client[RW]

Public Class Methods

new(api_client = ApiClient.default) click to toggle source
# File lib/phone_com_client/api/groups_api.rb, line 19
def initialize(api_client = ApiClient.default)
  @api_client = api_client
end

Public Instance Methods

create_account_extension_contact_group(account_id, extension_id, data, opts = {}) click to toggle source

Add a new contact group to an account extension. Add a new contact group to an account extension. See Account Contact Groups for details on the properties. @param account_id Account ID @param extension_id Extension ID @param data Group data @param [Hash] opts the optional parameters @return [GroupFull]

# File lib/phone_com_client/api/groups_api.rb, line 29
def create_account_extension_contact_group(account_id, extension_id, data, opts = {})
  data, _status_code, _headers = create_account_extension_contact_group_with_http_info(account_id, extension_id, data, opts)
  data
end
create_account_extension_contact_group_with_http_info(account_id, extension_id, data, opts = {}) click to toggle source

Add a new contact group to an account extension. Add a new contact group to an account extension. See Account Contact Groups for details on the properties. @param account_id Account ID @param extension_id Extension ID @param data Group data @param [Hash] opts the optional parameters @return [Array<(GroupFull, Fixnum, Hash)>] GroupFull data, response status code and response headers

# File lib/phone_com_client/api/groups_api.rb, line 41
def create_account_extension_contact_group_with_http_info(account_id, extension_id, data, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: GroupsApi.create_account_extension_contact_group ...'
  end
  # verify the required parameter 'account_id' is set
  if @api_client.config.client_side_validation && account_id.nil?
    fail ArgumentError, "Missing the required parameter 'account_id' when calling GroupsApi.create_account_extension_contact_group"
  end
  # verify the required parameter 'extension_id' is set
  if @api_client.config.client_side_validation && extension_id.nil?
    fail ArgumentError, "Missing the required parameter 'extension_id' when calling GroupsApi.create_account_extension_contact_group"
  end
  # verify the required parameter 'data' is set
  if @api_client.config.client_side_validation && data.nil?
    fail ArgumentError, "Missing the required parameter 'data' when calling GroupsApi.create_account_extension_contact_group"
  end
  # resource path
  local_var_path = '/accounts/{account_id}/extensions/{extension_id}/contact-groups'.sub('{' + 'account_id' + '}', account_id.to_s).sub('{' + 'extension_id' + '}', extension_id.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])

  # form parameters
  form_params = {}

  # http body (model)
  post_body = @api_client.object_to_http_body(data)
  auth_names = ['apiKey']
  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 => 'GroupFull')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: GroupsApi#create_account_extension_contact_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
delete_account_extension_contact_group(account_id, extension_id, group_id, opts = {}) click to toggle source

Delete a contact group from the address book. Delete a contact group from the address book. See Account Contact Groups for details on the properties. @param account_id Account ID @param extension_id Extension ID @param group_id Group ID @param [Hash] opts the optional parameters @return [DeleteEntry]

# File lib/phone_com_client/api/groups_api.rb, line 95
def delete_account_extension_contact_group(account_id, extension_id, group_id, opts = {})
  data, _status_code, _headers = delete_account_extension_contact_group_with_http_info(account_id, extension_id, group_id, opts)
  data
end
delete_account_extension_contact_group_with_http_info(account_id, extension_id, group_id, opts = {}) click to toggle source

Delete a contact group from the address book. Delete a contact group from the address book. See Account Contact Groups for details on the properties. @param account_id Account ID @param extension_id Extension ID @param group_id Group ID @param [Hash] opts the optional parameters @return [Array<(DeleteEntry, Fixnum, Hash)>] DeleteEntry data, response status code and response headers

# File lib/phone_com_client/api/groups_api.rb, line 107
def delete_account_extension_contact_group_with_http_info(account_id, extension_id, group_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: GroupsApi.delete_account_extension_contact_group ...'
  end
  # verify the required parameter 'account_id' is set
  if @api_client.config.client_side_validation && account_id.nil?
    fail ArgumentError, "Missing the required parameter 'account_id' when calling GroupsApi.delete_account_extension_contact_group"
  end
  # verify the required parameter 'extension_id' is set
  if @api_client.config.client_side_validation && extension_id.nil?
    fail ArgumentError, "Missing the required parameter 'extension_id' when calling GroupsApi.delete_account_extension_contact_group"
  end
  # verify the required parameter 'group_id' is set
  if @api_client.config.client_side_validation && group_id.nil?
    fail ArgumentError, "Missing the required parameter 'group_id' when calling GroupsApi.delete_account_extension_contact_group"
  end
  # resource path
  local_var_path = '/accounts/{account_id}/extensions/{extension_id}/contact-groups/{group_id}'.sub('{' + 'account_id' + '}', account_id.to_s).sub('{' + 'extension_id' + '}', extension_id.to_s).sub('{' + 'group_id' + '}', group_id.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  auth_names = ['apiKey']
  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,
    :return_type => 'DeleteEntry')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: GroupsApi#delete_account_extension_contact_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
get_account_extension_contact_group(account_id, extension_id, group_id, opts = {}) click to toggle source

Retrieve the information of a contact group. Retrieve the information of a contact group. See Account Contact Groups for details on the properties. @param account_id Account ID @param extension_id Extension ID @param group_id Group ID @param [Hash] opts the optional parameters @return [GroupFull]

# File lib/phone_com_client/api/groups_api.rb, line 161
def get_account_extension_contact_group(account_id, extension_id, group_id, opts = {})
  data, _status_code, _headers = get_account_extension_contact_group_with_http_info(account_id, extension_id, group_id, opts)
  data
end
get_account_extension_contact_group_with_http_info(account_id, extension_id, group_id, opts = {}) click to toggle source

Retrieve the information of a contact group. Retrieve the information of a contact group. See Account Contact Groups for details on the properties. @param account_id Account ID @param extension_id Extension ID @param group_id Group ID @param [Hash] opts the optional parameters @return [Array<(GroupFull, Fixnum, Hash)>] GroupFull data, response status code and response headers

# File lib/phone_com_client/api/groups_api.rb, line 173
def get_account_extension_contact_group_with_http_info(account_id, extension_id, group_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: GroupsApi.get_account_extension_contact_group ...'
  end
  # verify the required parameter 'account_id' is set
  if @api_client.config.client_side_validation && account_id.nil?
    fail ArgumentError, "Missing the required parameter 'account_id' when calling GroupsApi.get_account_extension_contact_group"
  end
  # verify the required parameter 'extension_id' is set
  if @api_client.config.client_side_validation && extension_id.nil?
    fail ArgumentError, "Missing the required parameter 'extension_id' when calling GroupsApi.get_account_extension_contact_group"
  end
  # verify the required parameter 'group_id' is set
  if @api_client.config.client_side_validation && group_id.nil?
    fail ArgumentError, "Missing the required parameter 'group_id' when calling GroupsApi.get_account_extension_contact_group"
  end
  # resource path
  local_var_path = '/accounts/{account_id}/extensions/{extension_id}/contact-groups/{group_id}'.sub('{' + 'account_id' + '}', account_id.to_s).sub('{' + 'extension_id' + '}', extension_id.to_s).sub('{' + 'group_id' + '}', group_id.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  auth_names = ['apiKey']
  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 => 'GroupFull')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: GroupsApi#get_account_extension_contact_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
list_account_extension_contact_groups(account_id, extension_id, opts = {}) click to toggle source

Show a list of contact groups belonging to an extension. Show a list of contact groups belonging to an extension. See Account Contact Groups for details on the properties. @param account_id Account ID @param extension_id Extension ID @param [Hash] opts the optional parameters @option opts [Array<String>] :filters_id ID filter @option opts [Array<String>] :filters_name Name filter @option opts [String] :sort_id ID sorting @option opts [String] :sort_name Name sorting @option opts [Integer] :limit Max results @option opts [Integer] :offset Results to skip @option opts [String] :fields Field set @return [ListGroups]

# File lib/phone_com_client/api/groups_api.rb, line 233
def list_account_extension_contact_groups(account_id, extension_id, opts = {})
  data, _status_code, _headers = list_account_extension_contact_groups_with_http_info(account_id, extension_id, opts)
  data
end
list_account_extension_contact_groups_with_http_info(account_id, extension_id, opts = {}) click to toggle source

Show a list of contact groups belonging to an extension. Show a list of contact groups belonging to an extension. See Account Contact Groups for details on the properties. @param account_id Account ID @param extension_id Extension ID @param [Hash] opts the optional parameters @option opts [Array<String>] :filters_id ID filter @option opts [Array<String>] :filters_name Name filter @option opts [String] :sort_id ID sorting @option opts [String] :sort_name Name sorting @option opts [Integer] :limit Max results @option opts [Integer] :offset Results to skip @option opts [String] :fields Field set @return [Array<(ListGroups, Fixnum, Hash)>] ListGroups data, response status code and response headers

# File lib/phone_com_client/api/groups_api.rb, line 251
def list_account_extension_contact_groups_with_http_info(account_id, extension_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: GroupsApi.list_account_extension_contact_groups ...'
  end
  # verify the required parameter 'account_id' is set
  if @api_client.config.client_side_validation && account_id.nil?
    fail ArgumentError, "Missing the required parameter 'account_id' when calling GroupsApi.list_account_extension_contact_groups"
  end
  # verify the required parameter 'extension_id' is set
  if @api_client.config.client_side_validation && extension_id.nil?
    fail ArgumentError, "Missing the required parameter 'extension_id' when calling GroupsApi.list_account_extension_contact_groups"
  end
  if @api_client.config.client_side_validation && !opts[:'sort_id'].nil? && opts[:'sort_id'] !~ Regexp.new(/asc|desc/)
    fail ArgumentError, "invalid value for 'opts[:\"sort_id\"]' when calling GroupsApi.list_account_extension_contact_groups, must conform to the pattern /asc|desc/."
  end

  if @api_client.config.client_side_validation && !opts[:'sort_name'].nil? && opts[:'sort_name'] !~ Regexp.new(/asc|desc/)
    fail ArgumentError, "invalid value for 'opts[:\"sort_name\"]' when calling GroupsApi.list_account_extension_contact_groups, must conform to the pattern /asc|desc/."
  end

  # resource path
  local_var_path = '/accounts/{account_id}/extensions/{extension_id}/contact-groups'.sub('{' + 'account_id' + '}', account_id.to_s).sub('{' + 'extension_id' + '}', extension_id.to_s)

  # query parameters
  query_params = {}
  query_params[:'filters[id]'] = @api_client.build_collection_param(opts[:'filters_id'], :multi) if !opts[:'filters_id'].nil?
  query_params[:'filters[name]'] = @api_client.build_collection_param(opts[:'filters_name'], :multi) if !opts[:'filters_name'].nil?
  query_params[:'sort[id]'] = opts[:'sort_id'] if !opts[:'sort_id'].nil?
  query_params[:'sort[name]'] = opts[:'sort_name'] if !opts[:'sort_name'].nil?
  query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
  query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
  query_params[:'fields'] = opts[:'fields'] if !opts[:'fields'].nil?

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  auth_names = ['apiKey']
  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 => 'ListGroups')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: GroupsApi#list_account_extension_contact_groups\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
replace_account_extension_contact_group(account_id, extension_id, group_id, data, opts = {}) click to toggle source

Update the information of a contact group. Update the information of a contact group. See Account Contact Groups for details on the properties. @param account_id Account ID @param extension_id Extension ID @param group_id Group ID @param data Group data @param [Hash] opts the optional parameters @return [GroupFull]

# File lib/phone_com_client/api/groups_api.rb, line 317
def replace_account_extension_contact_group(account_id, extension_id, group_id, data, opts = {})
  data, _status_code, _headers = replace_account_extension_contact_group_with_http_info(account_id, extension_id, group_id, data, opts)
  data
end
replace_account_extension_contact_group_with_http_info(account_id, extension_id, group_id, data, opts = {}) click to toggle source

Update the information of a contact group. Update the information of a contact group. See Account Contact Groups for details on the properties. @param account_id Account ID @param extension_id Extension ID @param group_id Group ID @param data Group data @param [Hash] opts the optional parameters @return [Array<(GroupFull, Fixnum, Hash)>] GroupFull data, response status code and response headers

# File lib/phone_com_client/api/groups_api.rb, line 330
def replace_account_extension_contact_group_with_http_info(account_id, extension_id, group_id, data, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: GroupsApi.replace_account_extension_contact_group ...'
  end
  # verify the required parameter 'account_id' is set
  if @api_client.config.client_side_validation && account_id.nil?
    fail ArgumentError, "Missing the required parameter 'account_id' when calling GroupsApi.replace_account_extension_contact_group"
  end
  # verify the required parameter 'extension_id' is set
  if @api_client.config.client_side_validation && extension_id.nil?
    fail ArgumentError, "Missing the required parameter 'extension_id' when calling GroupsApi.replace_account_extension_contact_group"
  end
  # verify the required parameter 'group_id' is set
  if @api_client.config.client_side_validation && group_id.nil?
    fail ArgumentError, "Missing the required parameter 'group_id' when calling GroupsApi.replace_account_extension_contact_group"
  end
  # verify the required parameter 'data' is set
  if @api_client.config.client_side_validation && data.nil?
    fail ArgumentError, "Missing the required parameter 'data' when calling GroupsApi.replace_account_extension_contact_group"
  end
  # resource path
  local_var_path = '/accounts/{account_id}/extensions/{extension_id}/contact-groups/{group_id}'.sub('{' + 'account_id' + '}', account_id.to_s).sub('{' + 'extension_id' + '}', extension_id.to_s).sub('{' + 'group_id' + '}', group_id.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])

  # form parameters
  form_params = {}

  # http body (model)
  post_body = @api_client.object_to_http_body(data)
  auth_names = ['apiKey']
  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 => 'GroupFull')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: GroupsApi#replace_account_extension_contact_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end