Class: Veryfi::Api::BusinessCard

Inherits:
Object
  • Object
show all
Includes:
FilePayload, TagOperations
Defined in:
lib/veryfi/api/business_card.rb

Overview

Business Cards endpoints (/partner/business-cards/).

Constant Summary collapse

ENDPOINT =
"/partner/business-cards/"

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from TagOperations

#add_tag, #add_tags, #delete_tag, #delete_tags, #tags

Constructor Details

#initialize(request) ⇒ BusinessCard

Returns a new instance of BusinessCard.



16
17
18
# File 'lib/veryfi/api/business_card.rb', line 16

def initialize(request)
  @request = request
end

Instance Attribute Details

#requestObject (readonly)

Returns the value of attribute request.



14
15
16
# File 'lib/veryfi/api/business_card.rb', line 14

def request
  @request
end

Instance Method Details

#all(params = {}) ⇒ Veryfi::Resource

List previously processed business cards.

Parameters:

  • params (Hash) (defaults to: {})

    optional query-string parameters

Returns:



24
25
26
# File 'lib/veryfi/api/business_card.rb', line 24

def all(params = {})
  request.get(ENDPOINT, params)
end

#delete(id) ⇒ Veryfi::Resource

Delete a business card.

Parameters:

  • id (Integer)

Returns:



79
80
81
# File 'lib/veryfi/api/business_card.rb', line 79

def delete(id)
  request.delete("#{ENDPOINT}#{id}/")
end

#get(id, params = {}) ⇒ Veryfi::Resource

Fetch a single business card by id.

Parameters:

  • id (Integer)
  • params (Hash) (defaults to: {})

    optional query-string parameters

Returns:



33
34
35
# File 'lib/veryfi/api/business_card.rb', line 33

def get(id, params = {})
  request.get("#{ENDPOINT}#{id}/", params)
end

#process(raw_params) ⇒ Veryfi::Resource

Upload an image of a business card and extract its contact fields.

Parameters:

  • raw_params (Hash)

Options Hash (raw_params):

  • :file_path (String)

    required. Local path.

  • :file_name (String) — default: basename of `:file_path`

Returns:



43
44
45
46
47
48
49
50
51
# File 'lib/veryfi/api/business_card.rb', line 43

def process(raw_params)
  params = raw_params.transform_keys(&:to_sym)
  file_path = params.delete(:file_path)
  file_name = params.delete(:file_name)

  payload = file_payload(file_path, file_name).merge(params)

  request.post(ENDPOINT, payload)
end

#process_url(raw_params) ⇒ Veryfi::Resource

URL variant of #process.

Parameters:

  • raw_params (Hash)

Options Hash (raw_params):

  • :file_url (String)

    required.

  • :file_name (String) — default: basename of `:file_url`

Returns:



59
60
61
62
63
64
# File 'lib/veryfi/api/business_card.rb', line 59

def process_url(raw_params)
  params = raw_params.transform_keys(&:to_sym)
  params[:file_name] ||= File.basename(params[:file_url]) if params[:file_url]

  request.post(ENDPOINT, params)
end

#update(id, params) ⇒ Veryfi::Resource

Update writable fields on a processed business card.

Parameters:

  • id (Integer)
  • params (Hash)

    writable fields

Returns:



71
72
73
# File 'lib/veryfi/api/business_card.rb', line 71

def update(id, params)
  request.put("#{ENDPOINT}#{id}/", params)
end