Class: CandidApiClient::InsurancePayments::V1::AsyncV1Client

Inherits:
Object
  • Object
show all
Defined in:
lib/candidhealth/insurance_payments/v_1/client.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(request_client:) ⇒ CandidApiClient::InsurancePayments::V1::AsyncV1Client

Parameters:



96
97
98
# File 'lib/candidhealth/insurance_payments/v_1/client.rb', line 96

def initialize(request_client:)
  @request_client = request_client
end

Instance Attribute Details

#request_clientCandidApiClient::AsyncRequestClient (readonly)



92
93
94
# File 'lib/candidhealth/insurance_payments/v_1/client.rb', line 92

def request_client
  @request_client
end

Instance Method Details

#get(insurance_payment_id:, request_options: nil) ⇒ CandidApiClient::InsurancePayments::V1::Types::InsurancePayment

Retrieves a previously created insurance payment by its ‘insurance_payment_id`.

If the payment does not exist, a `403` will be thrown.

Examples:

api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
api.insurance_payments.v_1.get(insurance_payment_id: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32")

Parameters:

Returns:



153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
# File 'lib/candidhealth/insurance_payments/v_1/client.rb', line 153

def get(insurance_payment_id:, request_options: nil)
  Async do
    response = @request_client.conn.get do |req|
      req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
      req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
      req.headers = {
    **(req.headers || {}),
    **@request_client.get_headers,
    **(request_options&.additional_headers || {})
      }.compact
      req.url "#{@request_client.get_url(environment: CandidApi,
                                         request_options: request_options)}/api/insurance-payments/v1/#{insurance_payment_id}"
    end
    CandidApiClient::InsurancePayments::V1::Types::InsurancePayment.from_json(json_object: response.body)
  end
end

#get_multi(limit: nil, payer_uuid: nil, claim_id: nil, service_line_id: nil, billing_provider_id: nil, sort: nil, sort_direction: nil, page_token: nil, request_options: nil) ⇒ CandidApiClient::InsurancePayments::V1::Types::InsurancePaymentsPage

Returns all non-ERA originated insurance payments satisfying the search criteria

Examples:

api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
api.insurance_payments.v_1.get_multi

Parameters:

Returns:



115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
# File 'lib/candidhealth/insurance_payments/v_1/client.rb', line 115

def get_multi(limit: nil, payer_uuid: nil, claim_id: nil, service_line_id: nil, billing_provider_id: nil,
              sort: nil, sort_direction: nil, page_token: nil, request_options: nil)
  Async do
    response = @request_client.conn.get do |req|
      req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
      req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
      req.headers = {
    **(req.headers || {}),
    **@request_client.get_headers,
    **(request_options&.additional_headers || {})
      }.compact
      req.params = {
        **(request_options&.additional_query_parameters || {}),
        "limit": limit,
        "payer_uuid": payer_uuid,
        "claim_id": claim_id,
        "service_line_id": service_line_id,
        "billing_provider_id": billing_provider_id,
        "sort": sort,
        "sort_direction": sort_direction,
        "page_token": page_token
      }.compact
      req.url "#{@request_client.get_url(environment: CandidApi,
                                         request_options: request_options)}/api/insurance-payments/v1"
    end
    CandidApiClient::InsurancePayments::V1::Types::InsurancePaymentsPage.from_json(json_object: response.body)
  end
end