class PhoneComClient::ContactsApi

Attributes

api_client[RW]

Public Class Methods

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

Public Instance Methods

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

Add a new address book contact for an extension. Add a new address book contact for an extension. See Account Contacts for more info on the fields in each item. @param account_id Account ID @param extension_id Extension ID @param [Hash] opts the optional parameters @option opts [CreateContactParams] :data Contact data @return [ContactFull]

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

Add a new address book contact for an extension. Add a new address book contact for an extension. See Account Contacts for more info on the fields in each item. @param account_id Account ID @param extension_id Extension ID @param [Hash] opts the optional parameters @option opts [CreateContactParams] :data Contact data @return [Array<(ContactFull, Fixnum, Hash)>] ContactFull data, response status code and response headers

# File lib/phone_com_client/api/contacts_api.rb, line 41
def create_account_extension_contact_with_http_info(account_id, extension_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: ContactsApi.create_account_extension_contact ...'
  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 ContactsApi.create_account_extension_contact"
  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 ContactsApi.create_account_extension_contact"
  end
  # resource path
  local_var_path = '/accounts/{account_id}/extensions/{extension_id}/contacts'.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(opts[:'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 => 'ContactFull')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: ContactsApi#create_account_extension_contact\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
delete_account_extension_contact(account_id, extension_id, contact_id, opts = {}) click to toggle source

Delete a contact from the address book. Delete a contact from the address book. See Account Contacts for more info on the fields in each item. @param account_id Account ID @param extension_id Extension ID @param contact_id Contact ID @param [Hash] opts the optional parameters @return [DeleteEntry]

# File lib/phone_com_client/api/contacts_api.rb, line 91
def delete_account_extension_contact(account_id, extension_id, contact_id, opts = {})
  data, _status_code, _headers = delete_account_extension_contact_with_http_info(account_id, extension_id, contact_id, opts)
  data
end
delete_account_extension_contact_with_http_info(account_id, extension_id, contact_id, opts = {}) click to toggle source

Delete a contact from the address book. Delete a contact from the address book. See Account Contacts for more info on the fields in each item. @param account_id Account ID @param extension_id Extension ID @param contact_id Contact 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/contacts_api.rb, line 103
def delete_account_extension_contact_with_http_info(account_id, extension_id, contact_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: ContactsApi.delete_account_extension_contact ...'
  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 ContactsApi.delete_account_extension_contact"
  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 ContactsApi.delete_account_extension_contact"
  end
  # verify the required parameter 'contact_id' is set
  if @api_client.config.client_side_validation && contact_id.nil?
    fail ArgumentError, "Missing the required parameter 'contact_id' when calling ContactsApi.delete_account_extension_contact"
  end
  # resource path
  local_var_path = '/accounts/{account_id}/extensions/{extension_id}/contacts/{contact_id}'.sub('{' + 'account_id' + '}', account_id.to_s).sub('{' + 'extension_id' + '}', extension_id.to_s).sub('{' + 'contact_id' + '}', contact_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: ContactsApi#delete_account_extension_contact\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
get_account_extension_contact(account_id, extension_id, contact_id, opts = {}) click to toggle source

Retrieve the details of an address book contact. Retrieve the details of an address book contact. See Account Contacts for more info on the fields in each item. @param account_id Account ID @param extension_id Extension ID @param contact_id Contact ID @param [Hash] opts the optional parameters @return [ContactFull]

# File lib/phone_com_client/api/contacts_api.rb, line 157
def get_account_extension_contact(account_id, extension_id, contact_id, opts = {})
  data, _status_code, _headers = get_account_extension_contact_with_http_info(account_id, extension_id, contact_id, opts)
  data
end
get_account_extension_contact_with_http_info(account_id, extension_id, contact_id, opts = {}) click to toggle source

Retrieve the details of an address book contact. Retrieve the details of an address book contact. See Account Contacts for more info on the fields in each item. @param account_id Account ID @param extension_id Extension ID @param contact_id Contact ID @param [Hash] opts the optional parameters @return [Array<(ContactFull, Fixnum, Hash)>] ContactFull data, response status code and response headers

# File lib/phone_com_client/api/contacts_api.rb, line 169
def get_account_extension_contact_with_http_info(account_id, extension_id, contact_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: ContactsApi.get_account_extension_contact ...'
  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 ContactsApi.get_account_extension_contact"
  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 ContactsApi.get_account_extension_contact"
  end
  # verify the required parameter 'contact_id' is set
  if @api_client.config.client_side_validation && contact_id.nil?
    fail ArgumentError, "Missing the required parameter 'contact_id' when calling ContactsApi.get_account_extension_contact"
  end
  # resource path
  local_var_path = '/accounts/{account_id}/extensions/{extension_id}/contacts/{contact_id}'.sub('{' + 'account_id' + '}', account_id.to_s).sub('{' + 'extension_id' + '}', extension_id.to_s).sub('{' + 'contact_id' + '}', contact_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 => 'ContactFull')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: ContactsApi#get_account_extension_contact\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
list_account_extension_contacts(account_id, extension_id, opts = {}) click to toggle source

Show the Caller ID options a given extension can use. Show the Caller ID options a given extension can use. See Intro to Caller IDs for more 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_group_id Group filter @option opts [Array<String>] :filters_updated_at Updated At filter @option opts [String] :sort_id ID sorting @option opts [String] :sort_updated_at Updated At sorting @option opts [Integer] :limit Max results @option opts [Integer] :offset Results to skip @option opts [String] :fields Field set @return [ListContacts]

# File lib/phone_com_client/api/contacts_api.rb, line 230
def list_account_extension_contacts(account_id, extension_id, opts = {})
  data, _status_code, _headers = list_account_extension_contacts_with_http_info(account_id, extension_id, opts)
  data
end
list_account_extension_contacts_with_http_info(account_id, extension_id, opts = {}) click to toggle source

Show the Caller ID options a given extension can use. Show the Caller ID options a given extension can use. See Intro to Caller IDs for more 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_group_id Group filter @option opts [Array<String>] :filters_updated_at Updated At filter @option opts [String] :sort_id ID sorting @option opts [String] :sort_updated_at Updated At sorting @option opts [Integer] :limit Max results @option opts [Integer] :offset Results to skip @option opts [String] :fields Field set @return [Array<(ListContacts, Fixnum, Hash)>] ListContacts data, response status code and response headers

# File lib/phone_com_client/api/contacts_api.rb, line 249
def list_account_extension_contacts_with_http_info(account_id, extension_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: ContactsApi.list_account_extension_contacts ...'
  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 ContactsApi.list_account_extension_contacts"
  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 ContactsApi.list_account_extension_contacts"
  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 ContactsApi.list_account_extension_contacts, must conform to the pattern /asc|desc/."
  end

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

  # resource path
  local_var_path = '/accounts/{account_id}/extensions/{extension_id}/contacts'.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[group_id]'] = @api_client.build_collection_param(opts[:'filters_group_id'], :multi) if !opts[:'filters_group_id'].nil?
  query_params[:'filters[updated_at]'] = @api_client.build_collection_param(opts[:'filters_updated_at'], :multi) if !opts[:'filters_updated_at'].nil?
  query_params[:'sort[id]'] = opts[:'sort_id'] if !opts[:'sort_id'].nil?
  query_params[:'sort[updated_at]'] = opts[:'sort_updated_at'] if !opts[:'sort_updated_at'].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 => 'ListContacts')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: ContactsApi#list_account_extension_contacts\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
replace_account_extension_contact(account_id, extension_id, contact_id, opts = {}) click to toggle source

Update the info of a contact in the address book. Update the info of a contact in the address book. See Account Contacts for more info on the fields in each item. @param account_id Account ID @param extension_id Extension ID @param contact_id Contact ID @param [Hash] opts the optional parameters @option opts [CreateContactParams] :data Contact data @return [ContactFull]

# File lib/phone_com_client/api/contacts_api.rb, line 316
def replace_account_extension_contact(account_id, extension_id, contact_id, opts = {})
  data, _status_code, _headers = replace_account_extension_contact_with_http_info(account_id, extension_id, contact_id, opts)
  data
end
replace_account_extension_contact_with_http_info(account_id, extension_id, contact_id, opts = {}) click to toggle source

Update the info of a contact in the address book. Update the info of a contact in the address book. See Account Contacts for more info on the fields in each item. @param account_id Account ID @param extension_id Extension ID @param contact_id Contact ID @param [Hash] opts the optional parameters @option opts [CreateContactParams] :data Contact data @return [Array<(ContactFull, Fixnum, Hash)>] ContactFull data, response status code and response headers

# File lib/phone_com_client/api/contacts_api.rb, line 329
def replace_account_extension_contact_with_http_info(account_id, extension_id, contact_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: ContactsApi.replace_account_extension_contact ...'
  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 ContactsApi.replace_account_extension_contact"
  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 ContactsApi.replace_account_extension_contact"
  end
  # verify the required parameter 'contact_id' is set
  if @api_client.config.client_side_validation && contact_id.nil?
    fail ArgumentError, "Missing the required parameter 'contact_id' when calling ContactsApi.replace_account_extension_contact"
  end
  # resource path
  local_var_path = '/accounts/{account_id}/extensions/{extension_id}/contacts/{contact_id}'.sub('{' + 'account_id' + '}', account_id.to_s).sub('{' + 'extension_id' + '}', extension_id.to_s).sub('{' + 'contact_id' + '}', contact_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(opts[:'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 => 'ContactFull')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: ContactsApi#replace_account_extension_contact\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end