candidhealth 0.19.1.pre.6de2b0d → 0.20.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/candidhealth/eligibility/v_2/client.rb +8 -0
- data/lib/candidhealth/import_invoice/client.rb +28 -0
- data/lib/candidhealth/import_invoice/v_1/client.rb +162 -0
- data/lib/candidhealth/import_invoice/v_1/types/create_import_invoice_request.rb +103 -0
- data/lib/candidhealth/import_invoice/v_1/types/import_invoice.rb +130 -0
- data/lib/candidhealth/import_invoice/v_1/types/import_invoice_update_request.rb +85 -0
- data/lib/candidhealth/import_invoice/v_1/types/invoice_item_info_update.rb +61 -0
- data/lib/candidhealth/import_invoice/v_1/types/invoice_item_update_type.rb +12 -0
- data/lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb +106 -0
- data/lib/candidhealth/invoices/v_2/types/invoice_item_create.rb +60 -0
- data/lib/requests.rb +2 -2
- data/lib/types_export.rb +7 -0
- metadata +13 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7ce8f1bb83c0488c695d4d690baa38b002d36af4ad712b07182545371b16e2e6
|
4
|
+
data.tar.gz: 154eef6e1ed858c1c46ac1dc0bb62b00b7d3fb5b721778e9f8f841d959c782c8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5969b02e29ba1d494dd89416f694b7e8604482df5048278cb84fbb0f4b93825790ceec96b027d6e77d4d98b2a2f6bb97836739a0e0b700f52b92ba63ab654192
|
7
|
+
data.tar.gz: b5b3fd3c33a18ddc3d204e56cadd122f2206f35a9dfbe12f08f5c6ca0288fbabbfc4ef8f210a96fecfbc2060e8766d535110c03ecbd42f1343a56043cf684876
|
@@ -44,6 +44,10 @@ module CandidApiClient
|
|
44
44
|
response.body
|
45
45
|
end
|
46
46
|
|
47
|
+
# **Availity has transitioned their GET endpoint to a POST endpoint. Candid has updated their pass-through integration to enable backwards compatibility for the GET endpoint so that customers do not have to immediately update their integrations.**
|
48
|
+
#
|
49
|
+
# **Candid recommends integrations with the [POST endpoint](https://docs.joincandidhealth.com/api-reference/eligibility/v-2/submit-eligibility-check-availity-post) to ensure the best possible integration experience. Given the transition, Availity’s documentation will be out of sync with this endpoint.**
|
50
|
+
#
|
47
51
|
# If you'd like access to this endpoint, please reach out to support@joincandidhealth.com with the subject line "Action: Activate Availity Eligibility API Endpoint
|
48
52
|
#
|
49
53
|
# This API is a wrapper around Availity's coverages API. Below are some helpful documentation links:
|
@@ -139,6 +143,10 @@ module CandidApiClient
|
|
139
143
|
end
|
140
144
|
end
|
141
145
|
|
146
|
+
# **Availity has transitioned their GET endpoint to a POST endpoint. Candid has updated their pass-through integration to enable backwards compatibility for the GET endpoint so that customers do not have to immediately update their integrations.**
|
147
|
+
#
|
148
|
+
# **Candid recommends integrations with the [POST endpoint](https://docs.joincandidhealth.com/api-reference/eligibility/v-2/submit-eligibility-check-availity-post) to ensure the best possible integration experience. Given the transition, Availity’s documentation will be out of sync with this endpoint.**
|
149
|
+
#
|
142
150
|
# If you'd like access to this endpoint, please reach out to support@joincandidhealth.com with the subject line "Action: Activate Availity Eligibility API Endpoint
|
143
151
|
#
|
144
152
|
# This API is a wrapper around Availity's coverages API. Below are some helpful documentation links:
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "../../requests"
|
4
|
+
require_relative "v_1/client"
|
5
|
+
|
6
|
+
module CandidApiClient
|
7
|
+
module ImportInvoice
|
8
|
+
class Client
|
9
|
+
attr_reader :v_1
|
10
|
+
|
11
|
+
# @param request_client [RequestClient]
|
12
|
+
# @return [ImportInvoice::Client]
|
13
|
+
def initialize(request_client:)
|
14
|
+
@v_1 = ImportInvoice::V1::V1Client.new(request_client: request_client)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
class AsyncClient
|
19
|
+
attr_reader :v_1
|
20
|
+
|
21
|
+
# @param request_client [RequestClient]
|
22
|
+
# @return [ImportInvoice::AsyncClient]
|
23
|
+
def initialize(request_client:)
|
24
|
+
@v_1 = ImportInvoice::V1::AsyncV1Client.new(request_client: request_client)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,162 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "../../../requests"
|
4
|
+
require_relative "types/create_import_invoice_request"
|
5
|
+
require_relative "types/import_invoice"
|
6
|
+
require_relative "../../commons/types/invoice_id"
|
7
|
+
require_relative "types/import_invoice_update_request"
|
8
|
+
require "async"
|
9
|
+
|
10
|
+
module CandidApiClient
|
11
|
+
module ImportInvoice
|
12
|
+
module V1
|
13
|
+
class V1Client
|
14
|
+
attr_reader :request_client
|
15
|
+
|
16
|
+
# @param request_client [RequestClient]
|
17
|
+
# @return [ImportInvoice::V1::V1Client]
|
18
|
+
def initialize(request_client:)
|
19
|
+
# @type [RequestClient]
|
20
|
+
@request_client = request_client
|
21
|
+
end
|
22
|
+
|
23
|
+
# Import an existing invoice from a third party service to reflect state in Candid.
|
24
|
+
#
|
25
|
+
# @param request [Hash] Request of type ImportInvoice::V1::CreateImportInvoiceRequest, as a Hash
|
26
|
+
# * :patient_external_id (Commons::PATIENT_EXTERNAL_ID)
|
27
|
+
# * :external_customer_identifier (String)
|
28
|
+
# * :note (String)
|
29
|
+
# * :due_date (Date)
|
30
|
+
# * :items (Array<Invoices::V2::InvoiceItemCreate>)
|
31
|
+
# * :status (Invoices::V2::InvoiceStatus)
|
32
|
+
# * :external_identifier (String)
|
33
|
+
# * :customer_invoice_url (String)
|
34
|
+
# @param request_options [RequestOptions]
|
35
|
+
# @return [ImportInvoice::V1::ImportInvoice]
|
36
|
+
def import_invoice(request:, request_options: nil)
|
37
|
+
response = @request_client.conn.post("/api/import-invoice/v1") do |req|
|
38
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
39
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
40
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
41
|
+
req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
|
42
|
+
end
|
43
|
+
ImportInvoice::V1::ImportInvoice.from_json(json_object: response.body)
|
44
|
+
end
|
45
|
+
|
46
|
+
# Retrieve and view an import invoice
|
47
|
+
#
|
48
|
+
# @param invoice_id [Commons::INVOICE_ID] InvoiceId to be returned
|
49
|
+
# @param request_options [RequestOptions]
|
50
|
+
# @return [ImportInvoice::V1::ImportInvoice]
|
51
|
+
def get(invoice_id:, request_options: nil)
|
52
|
+
response = @request_client.conn.get("/api/import-invoice/v1/#{invoice_id}") do |req|
|
53
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
54
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
55
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
56
|
+
end
|
57
|
+
ImportInvoice::V1::ImportInvoice.from_json(json_object: response.body)
|
58
|
+
end
|
59
|
+
|
60
|
+
# Update the information on the imported invoice
|
61
|
+
#
|
62
|
+
# @param invoice_id [Commons::INVOICE_ID]
|
63
|
+
# @param request [Hash] Request of type ImportInvoice::V1::ImportInvoiceUpdateRequest, as a Hash
|
64
|
+
# * :customer_invoice_url (String)
|
65
|
+
# * :status (Invoices::V2::InvoiceStatus)
|
66
|
+
# * :note (String)
|
67
|
+
# * :due_date (Date)
|
68
|
+
# * :items (Hash)
|
69
|
+
# * :update_type (ImportInvoice::V1::InvoiceItemUpdateType)
|
70
|
+
# * :items (Array<Invoices::V2::InvoiceItemCreate>)
|
71
|
+
# @param request_options [RequestOptions]
|
72
|
+
# @return [ImportInvoice::V1::ImportInvoice]
|
73
|
+
def update(invoice_id:, request:, request_options: nil)
|
74
|
+
response = @request_client.conn.patch("/api/import-invoice/v1/#{invoice_id}") do |req|
|
75
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
76
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
77
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
78
|
+
req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
|
79
|
+
end
|
80
|
+
ImportInvoice::V1::ImportInvoice.from_json(json_object: response.body)
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
class AsyncV1Client
|
85
|
+
attr_reader :request_client
|
86
|
+
|
87
|
+
# @param request_client [AsyncRequestClient]
|
88
|
+
# @return [ImportInvoice::V1::AsyncV1Client]
|
89
|
+
def initialize(request_client:)
|
90
|
+
# @type [AsyncRequestClient]
|
91
|
+
@request_client = request_client
|
92
|
+
end
|
93
|
+
|
94
|
+
# Import an existing invoice from a third party service to reflect state in Candid.
|
95
|
+
#
|
96
|
+
# @param request [Hash] Request of type ImportInvoice::V1::CreateImportInvoiceRequest, as a Hash
|
97
|
+
# * :patient_external_id (Commons::PATIENT_EXTERNAL_ID)
|
98
|
+
# * :external_customer_identifier (String)
|
99
|
+
# * :note (String)
|
100
|
+
# * :due_date (Date)
|
101
|
+
# * :items (Array<Invoices::V2::InvoiceItemCreate>)
|
102
|
+
# * :status (Invoices::V2::InvoiceStatus)
|
103
|
+
# * :external_identifier (String)
|
104
|
+
# * :customer_invoice_url (String)
|
105
|
+
# @param request_options [RequestOptions]
|
106
|
+
# @return [ImportInvoice::V1::ImportInvoice]
|
107
|
+
def import_invoice(request:, request_options: nil)
|
108
|
+
Async do
|
109
|
+
response = @request_client.conn.post("/api/import-invoice/v1") do |req|
|
110
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
111
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
112
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
113
|
+
req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
|
114
|
+
end
|
115
|
+
ImportInvoice::V1::ImportInvoice.from_json(json_object: response.body)
|
116
|
+
end
|
117
|
+
end
|
118
|
+
|
119
|
+
# Retrieve and view an import invoice
|
120
|
+
#
|
121
|
+
# @param invoice_id [Commons::INVOICE_ID] InvoiceId to be returned
|
122
|
+
# @param request_options [RequestOptions]
|
123
|
+
# @return [ImportInvoice::V1::ImportInvoice]
|
124
|
+
def get(invoice_id:, request_options: nil)
|
125
|
+
Async do
|
126
|
+
response = @request_client.conn.get("/api/import-invoice/v1/#{invoice_id}") do |req|
|
127
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
128
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
129
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
130
|
+
end
|
131
|
+
ImportInvoice::V1::ImportInvoice.from_json(json_object: response.body)
|
132
|
+
end
|
133
|
+
end
|
134
|
+
|
135
|
+
# Update the information on the imported invoice
|
136
|
+
#
|
137
|
+
# @param invoice_id [Commons::INVOICE_ID]
|
138
|
+
# @param request [Hash] Request of type ImportInvoice::V1::ImportInvoiceUpdateRequest, as a Hash
|
139
|
+
# * :customer_invoice_url (String)
|
140
|
+
# * :status (Invoices::V2::InvoiceStatus)
|
141
|
+
# * :note (String)
|
142
|
+
# * :due_date (Date)
|
143
|
+
# * :items (Hash)
|
144
|
+
# * :update_type (ImportInvoice::V1::InvoiceItemUpdateType)
|
145
|
+
# * :items (Array<Invoices::V2::InvoiceItemCreate>)
|
146
|
+
# @param request_options [RequestOptions]
|
147
|
+
# @return [ImportInvoice::V1::ImportInvoice]
|
148
|
+
def update(invoice_id:, request:, request_options: nil)
|
149
|
+
Async do
|
150
|
+
response = @request_client.conn.patch("/api/import-invoice/v1/#{invoice_id}") do |req|
|
151
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
152
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
153
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
154
|
+
req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
|
155
|
+
end
|
156
|
+
ImportInvoice::V1::ImportInvoice.from_json(json_object: response.body)
|
157
|
+
end
|
158
|
+
end
|
159
|
+
end
|
160
|
+
end
|
161
|
+
end
|
162
|
+
end
|
@@ -0,0 +1,103 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "../../../commons/types/patient_external_id"
|
4
|
+
require "date"
|
5
|
+
require_relative "../../../invoices/v_2/types/invoice_item_create"
|
6
|
+
require_relative "../../../invoices/v_2/types/invoice_status"
|
7
|
+
require "json"
|
8
|
+
|
9
|
+
module CandidApiClient
|
10
|
+
module ImportInvoice
|
11
|
+
module V1
|
12
|
+
class CreateImportInvoiceRequest
|
13
|
+
attr_reader :patient_external_id, :external_customer_identifier, :note, :due_date, :items, :status,
|
14
|
+
:external_identifier, :customer_invoice_url, :additional_properties
|
15
|
+
|
16
|
+
# @param patient_external_id [Commons::PATIENT_EXTERNAL_ID]
|
17
|
+
# @param external_customer_identifier [String] Id of the customer in the source system
|
18
|
+
# @param note [String]
|
19
|
+
# @param due_date [Date] If given as None, days_until_due in the payment config will be used to create a default date
|
20
|
+
# @param items [Array<Invoices::V2::InvoiceItemCreate>]
|
21
|
+
# @param status [Invoices::V2::InvoiceStatus]
|
22
|
+
# @param external_identifier [String] Id of the invoice being imported in the source system. Warning - This field CANNOT be updated.
|
23
|
+
# @param customer_invoice_url [String] Link to the patient view of the invoice in the third-party service
|
24
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
25
|
+
# @return [ImportInvoice::V1::CreateImportInvoiceRequest]
|
26
|
+
def initialize(patient_external_id:, external_customer_identifier:, items:, status:, external_identifier:,
|
27
|
+
note: nil, due_date: nil, customer_invoice_url: nil, additional_properties: nil)
|
28
|
+
# @type [Commons::PATIENT_EXTERNAL_ID]
|
29
|
+
@patient_external_id = patient_external_id
|
30
|
+
# @type [String] Id of the customer in the source system
|
31
|
+
@external_customer_identifier = external_customer_identifier
|
32
|
+
# @type [String]
|
33
|
+
@note = note
|
34
|
+
# @type [Date] If given as None, days_until_due in the payment config will be used to create a default date
|
35
|
+
@due_date = due_date
|
36
|
+
# @type [Array<Invoices::V2::InvoiceItemCreate>]
|
37
|
+
@items = items
|
38
|
+
# @type [Invoices::V2::InvoiceStatus]
|
39
|
+
@status = status
|
40
|
+
# @type [String] Id of the invoice being imported in the source system. Warning - This field CANNOT be updated.
|
41
|
+
@external_identifier = external_identifier
|
42
|
+
# @type [String] Link to the patient view of the invoice in the third-party service
|
43
|
+
@customer_invoice_url = customer_invoice_url
|
44
|
+
# @type [OpenStruct] Additional properties unmapped to the current class definition
|
45
|
+
@additional_properties = additional_properties
|
46
|
+
end
|
47
|
+
|
48
|
+
# Deserialize a JSON object to an instance of CreateImportInvoiceRequest
|
49
|
+
#
|
50
|
+
# @param json_object [JSON]
|
51
|
+
# @return [ImportInvoice::V1::CreateImportInvoiceRequest]
|
52
|
+
def self.from_json(json_object:)
|
53
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
54
|
+
parsed_json = JSON.parse(json_object)
|
55
|
+
patient_external_id = struct.patient_external_id
|
56
|
+
external_customer_identifier = struct.external_customer_identifier
|
57
|
+
note = struct.note
|
58
|
+
due_date = (Date.parse(parsed_json["due_date"]) unless parsed_json["due_date"].nil?)
|
59
|
+
items = parsed_json["items"]&.map do |v|
|
60
|
+
v = v.to_json
|
61
|
+
Invoices::V2::InvoiceItemCreate.from_json(json_object: v)
|
62
|
+
end
|
63
|
+
status = struct.status
|
64
|
+
external_identifier = struct.external_identifier
|
65
|
+
customer_invoice_url = struct.customer_invoice_url
|
66
|
+
new(patient_external_id: patient_external_id, external_customer_identifier: external_customer_identifier,
|
67
|
+
note: note, due_date: due_date, items: items, status: status, external_identifier: external_identifier, customer_invoice_url: customer_invoice_url, additional_properties: struct)
|
68
|
+
end
|
69
|
+
|
70
|
+
# Serialize an instance of CreateImportInvoiceRequest to a JSON object
|
71
|
+
#
|
72
|
+
# @return [JSON]
|
73
|
+
def to_json(*_args)
|
74
|
+
{
|
75
|
+
"patient_external_id": @patient_external_id,
|
76
|
+
"external_customer_identifier": @external_customer_identifier,
|
77
|
+
"note": @note,
|
78
|
+
"due_date": @due_date,
|
79
|
+
"items": @items,
|
80
|
+
"status": @status,
|
81
|
+
"external_identifier": @external_identifier,
|
82
|
+
"customer_invoice_url": @customer_invoice_url
|
83
|
+
}.to_json
|
84
|
+
end
|
85
|
+
|
86
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given hash and check each fields type against the current object's property definitions.
|
87
|
+
#
|
88
|
+
# @param obj [Object]
|
89
|
+
# @return [Void]
|
90
|
+
def self.validate_raw(obj:)
|
91
|
+
obj.patient_external_id.is_a?(String) != false || raise("Passed value for field obj.patient_external_id is not the expected type, validation failed.")
|
92
|
+
obj.external_customer_identifier.is_a?(String) != false || raise("Passed value for field obj.external_customer_identifier is not the expected type, validation failed.")
|
93
|
+
obj.note&.is_a?(String) != false || raise("Passed value for field obj.note is not the expected type, validation failed.")
|
94
|
+
obj.due_date&.is_a?(Date) != false || raise("Passed value for field obj.due_date is not the expected type, validation failed.")
|
95
|
+
obj.items.is_a?(Array) != false || raise("Passed value for field obj.items is not the expected type, validation failed.")
|
96
|
+
obj.status.is_a?(Invoices::V2::InvoiceStatus) != false || raise("Passed value for field obj.status is not the expected type, validation failed.")
|
97
|
+
obj.external_identifier.is_a?(String) != false || raise("Passed value for field obj.external_identifier is not the expected type, validation failed.")
|
98
|
+
obj.customer_invoice_url&.is_a?(String) != false || raise("Passed value for field obj.customer_invoice_url is not the expected type, validation failed.")
|
99
|
+
end
|
100
|
+
end
|
101
|
+
end
|
102
|
+
end
|
103
|
+
end
|
@@ -0,0 +1,130 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "../../../commons/types/invoice_id"
|
4
|
+
require "date"
|
5
|
+
require_relative "../../../invoices/v_2/types/invoice_item_info"
|
6
|
+
require_relative "../../../commons/types/patient_external_id"
|
7
|
+
require_relative "../../../invoices/v_2/types/invoice_status"
|
8
|
+
require "json"
|
9
|
+
|
10
|
+
module CandidApiClient
|
11
|
+
module ImportInvoice
|
12
|
+
module V1
|
13
|
+
class ImportInvoice
|
14
|
+
attr_reader :id, :created_at, :updated_at, :items, :patient_external_id, :external_customer_identifier,
|
15
|
+
:status, :external_identifier, :note, :customer_invoice_url, :due_date, :amount_cents, :additional_properties
|
16
|
+
|
17
|
+
# @param id [Commons::INVOICE_ID]
|
18
|
+
# @param created_at [DateTime]
|
19
|
+
# @param updated_at [DateTime]
|
20
|
+
# @param items [Invoices::V2::InvoiceItemInfo] The InvoiceItem rollup which contains all claim and service line invoice items
|
21
|
+
# @param patient_external_id [Commons::PATIENT_EXTERNAL_ID]
|
22
|
+
# @param external_customer_identifier [String] Id of the customer in the source system
|
23
|
+
# @param status [Invoices::V2::InvoiceStatus]
|
24
|
+
# @param external_identifier [String] Id of the invoice being imported in the source system
|
25
|
+
# @param note [String]
|
26
|
+
# @param customer_invoice_url [String] Link to the patient view of the invoice in the third-party service
|
27
|
+
# @param due_date [Date]
|
28
|
+
# @param amount_cents [Integer] Total monetary amount (in cents) of all Invoice Items
|
29
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
30
|
+
# @return [ImportInvoice::V1::ImportInvoice]
|
31
|
+
def initialize(id:, created_at:, updated_at:, items:, patient_external_id:, external_customer_identifier:,
|
32
|
+
status:, external_identifier:, due_date:, amount_cents:, note: nil, customer_invoice_url: nil, additional_properties: nil)
|
33
|
+
# @type [Commons::INVOICE_ID]
|
34
|
+
@id = id
|
35
|
+
# @type [DateTime]
|
36
|
+
@created_at = created_at
|
37
|
+
# @type [DateTime]
|
38
|
+
@updated_at = updated_at
|
39
|
+
# @type [Invoices::V2::InvoiceItemInfo] The InvoiceItem rollup which contains all claim and service line invoice items
|
40
|
+
@items = items
|
41
|
+
# @type [Commons::PATIENT_EXTERNAL_ID]
|
42
|
+
@patient_external_id = patient_external_id
|
43
|
+
# @type [String] Id of the customer in the source system
|
44
|
+
@external_customer_identifier = external_customer_identifier
|
45
|
+
# @type [Invoices::V2::InvoiceStatus]
|
46
|
+
@status = status
|
47
|
+
# @type [String] Id of the invoice being imported in the source system
|
48
|
+
@external_identifier = external_identifier
|
49
|
+
# @type [String]
|
50
|
+
@note = note
|
51
|
+
# @type [String] Link to the patient view of the invoice in the third-party service
|
52
|
+
@customer_invoice_url = customer_invoice_url
|
53
|
+
# @type [Date]
|
54
|
+
@due_date = due_date
|
55
|
+
# @type [Integer] Total monetary amount (in cents) of all Invoice Items
|
56
|
+
@amount_cents = amount_cents
|
57
|
+
# @type [OpenStruct] Additional properties unmapped to the current class definition
|
58
|
+
@additional_properties = additional_properties
|
59
|
+
end
|
60
|
+
|
61
|
+
# Deserialize a JSON object to an instance of ImportInvoice
|
62
|
+
#
|
63
|
+
# @param json_object [JSON]
|
64
|
+
# @return [ImportInvoice::V1::ImportInvoice]
|
65
|
+
def self.from_json(json_object:)
|
66
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
67
|
+
parsed_json = JSON.parse(json_object)
|
68
|
+
id = struct.id
|
69
|
+
created_at = (DateTime.parse(parsed_json["created_at"]) unless parsed_json["created_at"].nil?)
|
70
|
+
updated_at = (DateTime.parse(parsed_json["updated_at"]) unless parsed_json["updated_at"].nil?)
|
71
|
+
if parsed_json["items"].nil?
|
72
|
+
items = nil
|
73
|
+
else
|
74
|
+
items = parsed_json["items"].to_json
|
75
|
+
items = Invoices::V2::InvoiceItemInfo.from_json(json_object: items)
|
76
|
+
end
|
77
|
+
patient_external_id = struct.patient_external_id
|
78
|
+
external_customer_identifier = struct.external_customer_identifier
|
79
|
+
status = struct.status
|
80
|
+
external_identifier = struct.external_identifier
|
81
|
+
note = struct.note
|
82
|
+
customer_invoice_url = struct.customer_invoice_url
|
83
|
+
due_date = (Date.parse(parsed_json["due_date"]) unless parsed_json["due_date"].nil?)
|
84
|
+
amount_cents = struct.amount_cents
|
85
|
+
new(id: id, created_at: created_at, updated_at: updated_at, items: items,
|
86
|
+
patient_external_id: patient_external_id, external_customer_identifier: external_customer_identifier, status: status, external_identifier: external_identifier, note: note, customer_invoice_url: customer_invoice_url, due_date: due_date, amount_cents: amount_cents, additional_properties: struct)
|
87
|
+
end
|
88
|
+
|
89
|
+
# Serialize an instance of ImportInvoice to a JSON object
|
90
|
+
#
|
91
|
+
# @return [JSON]
|
92
|
+
def to_json(*_args)
|
93
|
+
{
|
94
|
+
"id": @id,
|
95
|
+
"created_at": @created_at,
|
96
|
+
"updated_at": @updated_at,
|
97
|
+
"items": @items,
|
98
|
+
"patient_external_id": @patient_external_id,
|
99
|
+
"external_customer_identifier": @external_customer_identifier,
|
100
|
+
"status": @status,
|
101
|
+
"external_identifier": @external_identifier,
|
102
|
+
"note": @note,
|
103
|
+
"customer_invoice_url": @customer_invoice_url,
|
104
|
+
"due_date": @due_date,
|
105
|
+
"amount_cents": @amount_cents
|
106
|
+
}.to_json
|
107
|
+
end
|
108
|
+
|
109
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given hash and check each fields type against the current object's property definitions.
|
110
|
+
#
|
111
|
+
# @param obj [Object]
|
112
|
+
# @return [Void]
|
113
|
+
def self.validate_raw(obj:)
|
114
|
+
obj.id.is_a?(UUID) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
|
115
|
+
obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
|
116
|
+
obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
|
117
|
+
Invoices::V2::InvoiceItemInfo.validate_raw(obj: obj.items)
|
118
|
+
obj.patient_external_id.is_a?(String) != false || raise("Passed value for field obj.patient_external_id is not the expected type, validation failed.")
|
119
|
+
obj.external_customer_identifier.is_a?(String) != false || raise("Passed value for field obj.external_customer_identifier is not the expected type, validation failed.")
|
120
|
+
obj.status.is_a?(Invoices::V2::InvoiceStatus) != false || raise("Passed value for field obj.status is not the expected type, validation failed.")
|
121
|
+
obj.external_identifier.is_a?(String) != false || raise("Passed value for field obj.external_identifier is not the expected type, validation failed.")
|
122
|
+
obj.note&.is_a?(String) != false || raise("Passed value for field obj.note is not the expected type, validation failed.")
|
123
|
+
obj.customer_invoice_url&.is_a?(String) != false || raise("Passed value for field obj.customer_invoice_url is not the expected type, validation failed.")
|
124
|
+
obj.due_date.is_a?(Date) != false || raise("Passed value for field obj.due_date is not the expected type, validation failed.")
|
125
|
+
obj.amount_cents.is_a?(Integer) != false || raise("Passed value for field obj.amount_cents is not the expected type, validation failed.")
|
126
|
+
end
|
127
|
+
end
|
128
|
+
end
|
129
|
+
end
|
130
|
+
end
|
@@ -0,0 +1,85 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "../../../invoices/v_2/types/invoice_status"
|
4
|
+
require "date"
|
5
|
+
require_relative "invoice_item_info_update"
|
6
|
+
require "json"
|
7
|
+
|
8
|
+
module CandidApiClient
|
9
|
+
module ImportInvoice
|
10
|
+
module V1
|
11
|
+
class ImportInvoiceUpdateRequest
|
12
|
+
attr_reader :customer_invoice_url, :status, :note, :due_date, :items, :additional_properties
|
13
|
+
|
14
|
+
# @param customer_invoice_url [String] Link to the patient view of the invoice in the third-party service
|
15
|
+
# @param status [Invoices::V2::InvoiceStatus]
|
16
|
+
# @param note [String]
|
17
|
+
# @param due_date [Date]
|
18
|
+
# @param items [ImportInvoice::V1::InvoiceItemInfoUpdate] None here represents there is no update to the invoice items
|
19
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
20
|
+
# @return [ImportInvoice::V1::ImportInvoiceUpdateRequest]
|
21
|
+
def initialize(customer_invoice_url: nil, status: nil, note: nil, due_date: nil, items: nil,
|
22
|
+
additional_properties: nil)
|
23
|
+
# @type [String] Link to the patient view of the invoice in the third-party service
|
24
|
+
@customer_invoice_url = customer_invoice_url
|
25
|
+
# @type [Invoices::V2::InvoiceStatus]
|
26
|
+
@status = status
|
27
|
+
# @type [String]
|
28
|
+
@note = note
|
29
|
+
# @type [Date]
|
30
|
+
@due_date = due_date
|
31
|
+
# @type [ImportInvoice::V1::InvoiceItemInfoUpdate] None here represents there is no update to the invoice items
|
32
|
+
@items = items
|
33
|
+
# @type [OpenStruct] Additional properties unmapped to the current class definition
|
34
|
+
@additional_properties = additional_properties
|
35
|
+
end
|
36
|
+
|
37
|
+
# Deserialize a JSON object to an instance of ImportInvoiceUpdateRequest
|
38
|
+
#
|
39
|
+
# @param json_object [JSON]
|
40
|
+
# @return [ImportInvoice::V1::ImportInvoiceUpdateRequest]
|
41
|
+
def self.from_json(json_object:)
|
42
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
43
|
+
parsed_json = JSON.parse(json_object)
|
44
|
+
customer_invoice_url = struct.customer_invoice_url
|
45
|
+
status = struct.status
|
46
|
+
note = struct.note
|
47
|
+
due_date = (Date.parse(parsed_json["due_date"]) unless parsed_json["due_date"].nil?)
|
48
|
+
if parsed_json["items"].nil?
|
49
|
+
items = nil
|
50
|
+
else
|
51
|
+
items = parsed_json["items"].to_json
|
52
|
+
items = ImportInvoice::V1::InvoiceItemInfoUpdate.from_json(json_object: items)
|
53
|
+
end
|
54
|
+
new(customer_invoice_url: customer_invoice_url, status: status, note: note, due_date: due_date, items: items,
|
55
|
+
additional_properties: struct)
|
56
|
+
end
|
57
|
+
|
58
|
+
# Serialize an instance of ImportInvoiceUpdateRequest to a JSON object
|
59
|
+
#
|
60
|
+
# @return [JSON]
|
61
|
+
def to_json(*_args)
|
62
|
+
{
|
63
|
+
"customer_invoice_url": @customer_invoice_url,
|
64
|
+
"status": @status,
|
65
|
+
"note": @note,
|
66
|
+
"due_date": @due_date,
|
67
|
+
"items": @items
|
68
|
+
}.to_json
|
69
|
+
end
|
70
|
+
|
71
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given hash and check each fields type against the current object's property definitions.
|
72
|
+
#
|
73
|
+
# @param obj [Object]
|
74
|
+
# @return [Void]
|
75
|
+
def self.validate_raw(obj:)
|
76
|
+
obj.customer_invoice_url&.is_a?(String) != false || raise("Passed value for field obj.customer_invoice_url is not the expected type, validation failed.")
|
77
|
+
obj.status&.is_a?(Invoices::V2::InvoiceStatus) != false || raise("Passed value for field obj.status is not the expected type, validation failed.")
|
78
|
+
obj.note&.is_a?(String) != false || raise("Passed value for field obj.note is not the expected type, validation failed.")
|
79
|
+
obj.due_date&.is_a?(Date) != false || raise("Passed value for field obj.due_date is not the expected type, validation failed.")
|
80
|
+
obj.items.nil? || ImportInvoice::V1::InvoiceItemInfoUpdate.validate_raw(obj: obj.items)
|
81
|
+
end
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
@@ -0,0 +1,61 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "invoice_item_update_type"
|
4
|
+
require_relative "../../../invoices/v_2/types/invoice_item_create"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
module CandidApiClient
|
8
|
+
module ImportInvoice
|
9
|
+
module V1
|
10
|
+
class InvoiceItemInfoUpdate
|
11
|
+
attr_reader :update_type, :items, :additional_properties
|
12
|
+
|
13
|
+
# @param update_type [ImportInvoice::V1::InvoiceItemUpdateType] The only supported update operations for invoice items is to either overwrite the entire list of invoice items
|
14
|
+
# or to append new invoice items
|
15
|
+
# @param items [Array<Invoices::V2::InvoiceItemCreate>]
|
16
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
17
|
+
# @return [ImportInvoice::V1::InvoiceItemInfoUpdate]
|
18
|
+
def initialize(update_type:, items:, additional_properties: nil)
|
19
|
+
# @type [ImportInvoice::V1::InvoiceItemUpdateType] The only supported update operations for invoice items is to either overwrite the entire list of invoice items
|
20
|
+
# or to append new invoice items
|
21
|
+
@update_type = update_type
|
22
|
+
# @type [Array<Invoices::V2::InvoiceItemCreate>]
|
23
|
+
@items = items
|
24
|
+
# @type [OpenStruct] Additional properties unmapped to the current class definition
|
25
|
+
@additional_properties = additional_properties
|
26
|
+
end
|
27
|
+
|
28
|
+
# Deserialize a JSON object to an instance of InvoiceItemInfoUpdate
|
29
|
+
#
|
30
|
+
# @param json_object [JSON]
|
31
|
+
# @return [ImportInvoice::V1::InvoiceItemInfoUpdate]
|
32
|
+
def self.from_json(json_object:)
|
33
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
34
|
+
parsed_json = JSON.parse(json_object)
|
35
|
+
update_type = struct.update_type
|
36
|
+
items = parsed_json["items"]&.map do |v|
|
37
|
+
v = v.to_json
|
38
|
+
Invoices::V2::InvoiceItemCreate.from_json(json_object: v)
|
39
|
+
end
|
40
|
+
new(update_type: update_type, items: items, additional_properties: struct)
|
41
|
+
end
|
42
|
+
|
43
|
+
# Serialize an instance of InvoiceItemInfoUpdate to a JSON object
|
44
|
+
#
|
45
|
+
# @return [JSON]
|
46
|
+
def to_json(*_args)
|
47
|
+
{ "update_type": @update_type, "items": @items }.to_json
|
48
|
+
end
|
49
|
+
|
50
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given hash and check each fields type against the current object's property definitions.
|
51
|
+
#
|
52
|
+
# @param obj [Object]
|
53
|
+
# @return [Void]
|
54
|
+
def self.validate_raw(obj:)
|
55
|
+
obj.update_type.is_a?(ImportInvoice::V1::InvoiceItemUpdateType) != false || raise("Passed value for field obj.update_type is not the expected type, validation failed.")
|
56
|
+
obj.items.is_a?(Array) != false || raise("Passed value for field obj.items is not the expected type, validation failed.")
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
@@ -0,0 +1,106 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "json"
|
4
|
+
require_relative "../../../commons/types/service_line_id"
|
5
|
+
require_relative "../../../commons/types/claim_id"
|
6
|
+
|
7
|
+
module CandidApiClient
|
8
|
+
module Invoices
|
9
|
+
module V2
|
10
|
+
# Points to the claim or service line that this invoice is attributed to
|
11
|
+
class InvoiceItemAttributionCreate
|
12
|
+
attr_reader :member, :discriminant
|
13
|
+
|
14
|
+
private_class_method :new
|
15
|
+
alias kind_of? is_a?
|
16
|
+
# @param member [Object]
|
17
|
+
# @param discriminant [String]
|
18
|
+
# @return [Invoices::V2::InvoiceItemAttributionCreate]
|
19
|
+
def initialize(member:, discriminant:)
|
20
|
+
# @type [Object]
|
21
|
+
@member = member
|
22
|
+
# @type [String]
|
23
|
+
@discriminant = discriminant
|
24
|
+
end
|
25
|
+
|
26
|
+
# Deserialize a JSON object to an instance of InvoiceItemAttributionCreate
|
27
|
+
#
|
28
|
+
# @param json_object [JSON]
|
29
|
+
# @return [Invoices::V2::InvoiceItemAttributionCreate]
|
30
|
+
def self.from_json(json_object:)
|
31
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
32
|
+
member = case struct.type
|
33
|
+
when "service_line_id"
|
34
|
+
json_object.value
|
35
|
+
when "claim_id"
|
36
|
+
json_object.value
|
37
|
+
when "unattributed"
|
38
|
+
nil
|
39
|
+
else
|
40
|
+
json_object
|
41
|
+
end
|
42
|
+
new(member: member, discriminant: struct.type)
|
43
|
+
end
|
44
|
+
|
45
|
+
# For Union Types, to_json functionality is delegated to the wrapped member.
|
46
|
+
#
|
47
|
+
# @return [JSON]
|
48
|
+
def to_json(*_args)
|
49
|
+
case @discriminant
|
50
|
+
when "service_line_id"
|
51
|
+
{ "type": @discriminant, "value": @member }.to_json
|
52
|
+
when "claim_id"
|
53
|
+
{ "type": @discriminant, "value": @member }.to_json
|
54
|
+
when "unattributed"
|
55
|
+
{ type: @discriminant }.to_json
|
56
|
+
else
|
57
|
+
{ "type": @discriminant, value: @member }.to_json
|
58
|
+
end
|
59
|
+
@member.to_json
|
60
|
+
end
|
61
|
+
|
62
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given hash and check each fields type against the current object's property definitions.
|
63
|
+
#
|
64
|
+
# @param obj [Object]
|
65
|
+
# @return [Void]
|
66
|
+
def self.validate_raw(obj:)
|
67
|
+
case obj.type
|
68
|
+
when "service_line_id"
|
69
|
+
obj.is_a?(UUID) != false || raise("Passed value for field obj is not the expected type, validation failed.")
|
70
|
+
when "claim_id"
|
71
|
+
obj.is_a?(UUID) != false || raise("Passed value for field obj is not the expected type, validation failed.")
|
72
|
+
when "unattributed"
|
73
|
+
# noop
|
74
|
+
else
|
75
|
+
raise("Passed value matched no type within the union, validation failed.")
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
79
|
+
# For Union Types, is_a? functionality is delegated to the wrapped member.
|
80
|
+
#
|
81
|
+
# @param obj [Object]
|
82
|
+
# @return [Boolean]
|
83
|
+
def is_a?(obj)
|
84
|
+
@member.is_a?(obj)
|
85
|
+
end
|
86
|
+
|
87
|
+
# @param member [Commons::SERVICE_LINE_ID]
|
88
|
+
# @return [Invoices::V2::InvoiceItemAttributionCreate]
|
89
|
+
def self.service_line_id(member:)
|
90
|
+
new(member: member, discriminant: "service_line_id")
|
91
|
+
end
|
92
|
+
|
93
|
+
# @param member [Commons::CLAIM_ID]
|
94
|
+
# @return [Invoices::V2::InvoiceItemAttributionCreate]
|
95
|
+
def self.claim_id(member:)
|
96
|
+
new(member: member, discriminant: "claim_id")
|
97
|
+
end
|
98
|
+
|
99
|
+
# @return [Invoices::V2::InvoiceItemAttributionCreate]
|
100
|
+
def self.unattributed
|
101
|
+
new(member: nil, discriminant: "unattributed")
|
102
|
+
end
|
103
|
+
end
|
104
|
+
end
|
105
|
+
end
|
106
|
+
end
|
@@ -0,0 +1,60 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "invoice_item_attribution_create"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module CandidApiClient
|
7
|
+
module Invoices
|
8
|
+
module V2
|
9
|
+
class InvoiceItemCreate
|
10
|
+
attr_reader :attribution, :amount_cents, :additional_properties
|
11
|
+
|
12
|
+
# @param attribution [Invoices::V2::InvoiceItemAttributionCreate]
|
13
|
+
# @param amount_cents [Integer]
|
14
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
15
|
+
# @return [Invoices::V2::InvoiceItemCreate]
|
16
|
+
def initialize(attribution:, amount_cents:, additional_properties: nil)
|
17
|
+
# @type [Invoices::V2::InvoiceItemAttributionCreate]
|
18
|
+
@attribution = attribution
|
19
|
+
# @type [Integer]
|
20
|
+
@amount_cents = amount_cents
|
21
|
+
# @type [OpenStruct] Additional properties unmapped to the current class definition
|
22
|
+
@additional_properties = additional_properties
|
23
|
+
end
|
24
|
+
|
25
|
+
# Deserialize a JSON object to an instance of InvoiceItemCreate
|
26
|
+
#
|
27
|
+
# @param json_object [JSON]
|
28
|
+
# @return [Invoices::V2::InvoiceItemCreate]
|
29
|
+
def self.from_json(json_object:)
|
30
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
31
|
+
parsed_json = JSON.parse(json_object)
|
32
|
+
if parsed_json["attribution"].nil?
|
33
|
+
attribution = nil
|
34
|
+
else
|
35
|
+
attribution = parsed_json["attribution"].to_json
|
36
|
+
attribution = Invoices::V2::InvoiceItemAttributionCreate.from_json(json_object: attribution)
|
37
|
+
end
|
38
|
+
amount_cents = struct.amount_cents
|
39
|
+
new(attribution: attribution, amount_cents: amount_cents, additional_properties: struct)
|
40
|
+
end
|
41
|
+
|
42
|
+
# Serialize an instance of InvoiceItemCreate to a JSON object
|
43
|
+
#
|
44
|
+
# @return [JSON]
|
45
|
+
def to_json(*_args)
|
46
|
+
{ "attribution": @attribution, "amount_cents": @amount_cents }.to_json
|
47
|
+
end
|
48
|
+
|
49
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given hash and check each fields type against the current object's property definitions.
|
50
|
+
#
|
51
|
+
# @param obj [Object]
|
52
|
+
# @return [Void]
|
53
|
+
def self.validate_raw(obj:)
|
54
|
+
Invoices::V2::InvoiceItemAttributionCreate.validate_raw(obj: obj.attribution)
|
55
|
+
obj.amount_cents.is_a?(Integer) != false || raise("Passed value for field obj.amount_cents is not the expected type, validation failed.")
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
data/lib/requests.rb
CHANGED
@@ -20,7 +20,7 @@ module CandidApiClient
|
|
20
20
|
@headers = {
|
21
21
|
"X-Fern-Language": "Ruby",
|
22
22
|
"X-Fern-SDK-Name": "candidhealth",
|
23
|
-
"X-Fern-SDK-Version": "0.
|
23
|
+
"X-Fern-SDK-Version": "0.20.0",
|
24
24
|
"Authorization": "Bearer #{token}"
|
25
25
|
}
|
26
26
|
@conn = Faraday.new(@base_url, headers: @headers) do |faraday|
|
@@ -46,7 +46,7 @@ module CandidApiClient
|
|
46
46
|
@headers = {
|
47
47
|
"X-Fern-Language": "Ruby",
|
48
48
|
"X-Fern-SDK-Name": "candidhealth",
|
49
|
-
"X-Fern-SDK-Version": "0.
|
49
|
+
"X-Fern-SDK-Version": "0.20.0",
|
50
50
|
"Authorization": "Bearer #{token}"
|
51
51
|
}
|
52
52
|
@conn = Faraday.new(@base_url, headers: @headers) do |faraday|
|
data/lib/types_export.rb
CHANGED
@@ -116,6 +116,11 @@ require_relative "candidhealth/guarantor/v_1/types/guarantor_base"
|
|
116
116
|
require_relative "candidhealth/guarantor/v_1/types/guarantor"
|
117
117
|
require_relative "candidhealth/guarantor/v_1/types/guarantor_create"
|
118
118
|
require_relative "candidhealth/guarantor/v_1/types/encounter_has_existing_guarantor_error_type"
|
119
|
+
require_relative "candidhealth/import_invoice/v_1/types/import_invoice"
|
120
|
+
require_relative "candidhealth/import_invoice/v_1/types/create_import_invoice_request"
|
121
|
+
require_relative "candidhealth/import_invoice/v_1/types/invoice_item_update_type"
|
122
|
+
require_relative "candidhealth/import_invoice/v_1/types/invoice_item_info_update"
|
123
|
+
require_relative "candidhealth/import_invoice/v_1/types/import_invoice_update_request"
|
119
124
|
require_relative "candidhealth/insurance_adjudications/v_1/types/insurance_adjudication_id"
|
120
125
|
require_relative "candidhealth/insurance_adjudications/v_1/types/service_line_adjudication_id"
|
121
126
|
require_relative "candidhealth/insurance_adjudications/v_1/types/insurance_adjudication_create"
|
@@ -143,6 +148,8 @@ require_relative "candidhealth/invoices/v_2/types/invoice_status"
|
|
143
148
|
require_relative "candidhealth/invoices/v_2/types/invoice_destination_metadata"
|
144
149
|
require_relative "candidhealth/invoices/v_2/types/invoice"
|
145
150
|
require_relative "candidhealth/invoices/v_2/types/invoice_info"
|
151
|
+
require_relative "candidhealth/invoices/v_2/types/invoice_item_attribution_create"
|
152
|
+
require_relative "candidhealth/invoices/v_2/types/invoice_item_create"
|
146
153
|
require_relative "candidhealth/invoices/v_2/types/service_line_invoice_item"
|
147
154
|
require_relative "candidhealth/invoices/v_2/types/claim_invoice_item"
|
148
155
|
require_relative "candidhealth/invoices/v_2/types/claim_invoice_item_info"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: candidhealth
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.20.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ''
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-06-
|
11
|
+
date: 2024-06-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: async-http-faraday
|
@@ -322,6 +322,13 @@ files:
|
|
322
322
|
- lib/candidhealth/identifiers/types/medicaid_provider_identifier.rb
|
323
323
|
- lib/candidhealth/identifiers/types/medicare_provider_identifier.rb
|
324
324
|
- lib/candidhealth/identifiers/types/updatable_identifier.rb
|
325
|
+
- lib/candidhealth/import_invoice/client.rb
|
326
|
+
- lib/candidhealth/import_invoice/v_1/client.rb
|
327
|
+
- lib/candidhealth/import_invoice/v_1/types/create_import_invoice_request.rb
|
328
|
+
- lib/candidhealth/import_invoice/v_1/types/import_invoice.rb
|
329
|
+
- lib/candidhealth/import_invoice/v_1/types/import_invoice_update_request.rb
|
330
|
+
- lib/candidhealth/import_invoice/v_1/types/invoice_item_info_update.rb
|
331
|
+
- lib/candidhealth/import_invoice/v_1/types/invoice_item_update_type.rb
|
325
332
|
- lib/candidhealth/individual/types/gender.rb
|
326
333
|
- lib/candidhealth/individual/types/individual_base.rb
|
327
334
|
- lib/candidhealth/individual/types/individual_id.rb
|
@@ -368,6 +375,8 @@ files:
|
|
368
375
|
- lib/candidhealth/invoices/v_2/types/invoice_destination.rb
|
369
376
|
- lib/candidhealth/invoices/v_2/types/invoice_destination_metadata.rb
|
370
377
|
- lib/candidhealth/invoices/v_2/types/invoice_info.rb
|
378
|
+
- lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb
|
379
|
+
- lib/candidhealth/invoices/v_2/types/invoice_item_create.rb
|
371
380
|
- lib/candidhealth/invoices/v_2/types/invoice_item_info.rb
|
372
381
|
- lib/candidhealth/invoices/v_2/types/invoice_status.rb
|
373
382
|
- lib/candidhealth/invoices/v_2/types/service_line_invoice_item.rb
|
@@ -500,9 +509,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
500
509
|
version: 2.7.0
|
501
510
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
502
511
|
requirements:
|
503
|
-
- - "
|
512
|
+
- - ">="
|
504
513
|
- !ruby/object:Gem::Version
|
505
|
-
version:
|
514
|
+
version: '0'
|
506
515
|
requirements: []
|
507
516
|
rubygems_version: 3.1.6
|
508
517
|
signing_key:
|