Class: Clicksign::JsonApi::BulkOperationsClient

Inherits:
Object
  • Object
show all
Defined in:
lib/clicksign/json_api/bulk_operations_client.rb

Constant Summary collapse

HEADERS =
{
  'Content-Type' => 'application/vnd.api+json',
  'Accept' => 'application/vnd.api+json',
}.freeze

Instance Method Summary collapse

Constructor Details

#initialize(api_key:, base_url:, open_timeout: 2, read_timeout: 10, write_timeout: 10, max_retries: 0) ⇒ BulkOperationsClient

Returns a new instance of BulkOperationsClient.



15
16
17
18
19
20
21
22
23
# File 'lib/clicksign/json_api/bulk_operations_client.rb', line 15

def initialize(api_key:, base_url:, open_timeout: 2, read_timeout: 10,
               write_timeout: 10, max_retries: 0)
  @api_key       = api_key
  @base_url      = base_url
  @open_timeout  = open_timeout
  @read_timeout  = read_timeout
  @write_timeout = write_timeout
  @max_retries   = max_retries
end

Instance Method Details

#post(path, body:) ⇒ Object



25
26
27
28
29
30
31
32
33
# File 'lib/clicksign/json_api/bulk_operations_client.rb', line 25

def post(path, body:)
  response = perform_post(path, body)
  parsed = parse_response_body(response) || {}

  return parsed if parsed.key?('atomic:results')

  ErrorHandler.call(response)
  parsed
end