Class: Paid::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/paid_ruby.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(token:, base_url: nil, environment: Paid::Environment::PRODUCTION, max_retries: nil, timeout_in_seconds: nil) ⇒ Paid::Client

Parameters:

  • base_url (String) (defaults to: nil)
  • environment (Paid::Environment) (defaults to: Paid::Environment::PRODUCTION)
  • max_retries (Long) (defaults to: nil)

    The number of times to retry a failed request, defaults to 2.

  • timeout_in_seconds (Long) (defaults to: nil)
  • token (String)


34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/paid_ruby.rb', line 34

def initialize(token:, base_url: nil, environment: Paid::Environment::PRODUCTION, max_retries: nil,
               timeout_in_seconds: nil)
  @request_client = Paid::RequestClient.new(
    base_url: base_url,
    environment: environment,
    max_retries: max_retries,
    timeout_in_seconds: timeout_in_seconds,
    token: token
  )
  @customers = Paid::CustomersClient.new(request_client: @request_client)
  @agents = Paid::AgentsClient.new(request_client: @request_client)
  @contacts = Paid::ContactsClient.new(request_client: @request_client)
  @orders = Paid::OrdersClient.new(request_client: @request_client)
  @usage = Paid::BatchUsageClient.new(request_client: @request_client)
end

Instance Attribute Details

#agentsPaid::AgentsClient (readonly)

Returns:



20
21
22
# File 'lib/paid_ruby.rb', line 20

def agents
  @agents
end

#contactsPaid::ContactsClient (readonly)



22
23
24
# File 'lib/paid_ruby.rb', line 22

def contacts
  @contacts
end

#customersPaid::CustomersClient (readonly)



18
19
20
# File 'lib/paid_ruby.rb', line 18

def customers
  @customers
end

#ordersPaid::OrdersClient (readonly)

Returns:



24
25
26
# File 'lib/paid_ruby.rb', line 24

def orders
  @orders
end

#usagePaid::UsageClient (readonly)

Returns:



26
27
28
# File 'lib/paid_ruby.rb', line 26

def usage
  @usage
end

Instance Method Details

#capture(*args, external_customer_id:, &block) ⇒ Object

Parameters:

  • external_customer_id (String)
  • args (Array)
  • block (Proc)


59
60
61
# File 'lib/paid_ruby.rb', line 59

def capture(*args, external_customer_id:, &block)
  Paid::Tracing.capture(*args, external_customer_id: external_customer_id, &block)
end

#initialize_tracingObject



50
51
52
53
54
# File 'lib/paid_ruby.rb', line 50

def initialize_tracing
  token = @request_client.token
  api_key = token.gsub(/^Bearer /, "")
  Paid::Tracing.initialize_tracing(api_key: api_key)
end