Sha256: 487e283b51b49af96c89b009013e83eef2f03d27d35e86ef030e997928df08ba

Contents?: true

Size: 840 Bytes

Versions: 5

Compression:

Stored size: 840 Bytes

Contents

module Snov
  class AddNamesToFindEmails
    attr_reader :client

    def initialize(client: Snov.client, first_name:, last_name:, domain:)
      @client = client
      @first_name = first_name
      @last_name = last_name
      @domain = domain
    end

    def add
      @add ||= ProspectResult.new(raw_result)
    end

    def raw_result
      @raw_result ||= client.post("/v1/add-names-to-find-emails",
                                  "firstName" => @first_name,
                                  "lastName" => @last_name,
                                  "domain" => @domain)
                            .deep_transform_keys! { |key| key.underscore }
    end

    class ProspectResult
      include ActiveModel::Model

      attr_accessor :success, :first_name, :last_name, :domain, :user_id, :sent, :access_token
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
snov-0.6.5 lib/snov/add_names_to_find_emails.rb
snov-0.6.4 lib/snov/add_names_to_find_emails.rb
snov-0.6.3 lib/snov/add_names_to_find_emails.rb
snov-0.6.2 lib/snov/add_names_to_find_emails.rb
snov-0.6.1 lib/snov/add_names_to_find_emails.rb