apimatic-tql-sdk 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +148 -197
  3. data/bin/console +4 -4
  4. data/lib/freight_financials_webhook_ingestion_api/api_helper.rb +10 -0
  5. data/lib/freight_financials_webhook_ingestion_api/apis/assignments_api.rb +41 -0
  6. data/lib/{tql_otr_factoring_data_exchange → freight_financials_webhook_ingestion_api}/apis/base_api.rb +60 -60
  7. data/lib/freight_financials_webhook_ingestion_api/apis/documents_api.rb +73 -0
  8. data/lib/freight_financials_webhook_ingestion_api/apis/freight_audit_api.rb +54 -0
  9. data/lib/freight_financials_webhook_ingestion_api/apis/invoices_api.rb +107 -0
  10. data/lib/freight_financials_webhook_ingestion_api/apis/loads_api.rb +72 -0
  11. data/lib/freight_financials_webhook_ingestion_api/apis/rating_api.rb +45 -0
  12. data/lib/{tql_otr_factoring_data_exchange → freight_financials_webhook_ingestion_api}/client.rb +83 -97
  13. data/lib/{tql_otr_factoring_data_exchange → freight_financials_webhook_ingestion_api}/configuration.rb +114 -126
  14. data/lib/{tql_otr_factoring_data_exchange → freight_financials_webhook_ingestion_api}/exceptions/api_exception.rb +21 -21
  15. data/lib/{tql_otr_factoring_data_exchange/exceptions/problem_details_error_exception.rb → freight_financials_webhook_ingestion_api/exceptions/problem_details_exception.rb} +51 -41
  16. data/lib/{tql_otr_factoring_data_exchange → freight_financials_webhook_ingestion_api}/http/api_response.rb +7 -7
  17. data/lib/freight_financials_webhook_ingestion_api/http/http_call_back.rb +10 -0
  18. data/lib/freight_financials_webhook_ingestion_api/http/http_method_enum.rb +10 -0
  19. data/lib/freight_financials_webhook_ingestion_api/http/http_request.rb +10 -0
  20. data/lib/freight_financials_webhook_ingestion_api/http/http_response.rb +10 -0
  21. data/lib/{tql_otr_factoring_data_exchange → freight_financials_webhook_ingestion_api}/http/proxy_settings.rb +6 -6
  22. data/lib/{tql_otr_factoring_data_exchange → freight_financials_webhook_ingestion_api}/logging/configuration/api_logging_configuration.rb +6 -6
  23. data/lib/{tql_otr_factoring_data_exchange → freight_financials_webhook_ingestion_api}/logging/sdk_logger.rb +6 -6
  24. data/lib/freight_financials_webhook_ingestion_api/models/address.rb +123 -0
  25. data/lib/freight_financials_webhook_ingestion_api/models/assignment_request.rb +94 -0
  26. data/lib/freight_financials_webhook_ingestion_api/models/assignment_response.rb +83 -0
  27. data/lib/{tql_otr_factoring_data_exchange/models/assignment_response.rb → freight_financials_webhook_ingestion_api/models/assignment_response_data.rb} +124 -126
  28. data/lib/{tql_otr_factoring_data_exchange → freight_financials_webhook_ingestion_api}/models/base_model.rb +110 -110
  29. data/lib/{tql_otr_factoring_data_exchange/models/carrier1.rb → freight_financials_webhook_ingestion_api/models/carrier.rb} +96 -98
  30. data/lib/freight_financials_webhook_ingestion_api/models/charge.rb +104 -0
  31. data/lib/freight_financials_webhook_ingestion_api/models/charge_code.rb +81 -0
  32. data/lib/freight_financials_webhook_ingestion_api/models/factoring_company.rb +81 -0
  33. data/lib/{tql_otr_factoring_data_exchange → freight_financials_webhook_ingestion_api}/models/invoice.rb +204 -223
  34. data/lib/{tql_otr_factoring_data_exchange/models/document.rb → freight_financials_webhook_ingestion_api/models/invoice_document.rb} +72 -86
  35. data/lib/{tql_otr_factoring_data_exchange/models/invoice_exception.rb → freight_financials_webhook_ingestion_api/models/invoice_issue.rb} +122 -136
  36. data/lib/freight_financials_webhook_ingestion_api/models/invoice_status_response.rb +83 -0
  37. data/lib/{tql_otr_factoring_data_exchange/models/invoice_status_response.rb → freight_financials_webhook_ingestion_api/models/invoice_status_response_data.rb} +185 -193
  38. data/lib/freight_financials_webhook_ingestion_api/models/line_item.rb +131 -0
  39. data/lib/freight_financials_webhook_ingestion_api/models/load_response.rb +83 -0
  40. data/lib/{tql_otr_factoring_data_exchange/models/load_detail.rb → freight_financials_webhook_ingestion_api/models/load_response_data.rb} +141 -140
  41. data/lib/{tql_otr_factoring_data_exchange/models/load.rb → freight_financials_webhook_ingestion_api/models/load_slim.rb} +97 -110
  42. data/lib/freight_financials_webhook_ingestion_api/models/navix_rate_charge.rb +116 -0
  43. data/lib/freight_financials_webhook_ingestion_api/models/navix_rate_customer.rb +64 -0
  44. data/lib/freight_financials_webhook_ingestion_api/models/navix_rate_line_item.rb +177 -0
  45. data/lib/freight_financials_webhook_ingestion_api/models/navix_rate_request.rb +208 -0
  46. data/lib/freight_financials_webhook_ingestion_api/models/navix_rate_requested_charge.rb +64 -0
  47. data/lib/freight_financials_webhook_ingestion_api/models/navix_rate_response.rb +112 -0
  48. data/lib/freight_financials_webhook_ingestion_api/models/navix_rate_stop.rb +107 -0
  49. data/lib/freight_financials_webhook_ingestion_api/models/navix_rate_vendor.rb +88 -0
  50. data/lib/freight_financials_webhook_ingestion_api/models/navix_webhook_event_type.rb +56 -0
  51. data/lib/freight_financials_webhook_ingestion_api/models/navix_webhook_request.rb +99 -0
  52. data/lib/freight_financials_webhook_ingestion_api/models/paged_response_of_invoice.rb +111 -0
  53. data/lib/{tql_otr_factoring_data_exchange → freight_financials_webhook_ingestion_api}/models/payment.rb +94 -108
  54. data/lib/freight_financials_webhook_ingestion_api/models/rating_charge_qualifier.rb +68 -0
  55. data/lib/freight_financials_webhook_ingestion_api/models/rating_response_format.rb +40 -0
  56. data/lib/freight_financials_webhook_ingestion_api/models/reference_number.rb +71 -0
  57. data/lib/{tql_otr_factoring_data_exchange/models/invoice_search_request.rb → freight_financials_webhook_ingestion_api/models/search_request.rb} +223 -242
  58. data/lib/freight_financials_webhook_ingestion_api/models/search_response.rb +83 -0
  59. data/lib/freight_financials_webhook_ingestion_api/models/stop.rb +81 -0
  60. data/lib/freight_financials_webhook_ingestion_api/models/submit_invoice_request.rb +228 -0
  61. data/lib/freight_financials_webhook_ingestion_api/models/submit_invoice_response.rb +83 -0
  62. data/lib/{tql_otr_factoring_data_exchange/models/submit_invoice_response.rb → freight_financials_webhook_ingestion_api/models/submit_invoice_response_data.rb} +105 -107
  63. data/lib/freight_financials_webhook_ingestion_api/models/upload_request.rb +128 -0
  64. data/lib/freight_financials_webhook_ingestion_api/models/upload_response.rb +83 -0
  65. data/lib/{tql_otr_factoring_data_exchange/models/document_upload_response.rb → freight_financials_webhook_ingestion_api/models/upload_response_data.rb} +117 -137
  66. data/lib/freight_financials_webhook_ingestion_api/utilities/date_time_helper.rb +11 -0
  67. data/lib/{tql_otr_factoring_data_exchange → freight_financials_webhook_ingestion_api}/utilities/file_wrapper.rb +17 -17
  68. data/lib/freight_financials_webhook_ingestion_api.rb +127 -0
  69. metadata +67 -74
  70. data/lib/tql_otr_factoring_data_exchange/api_helper.rb +0 -10
  71. data/lib/tql_otr_factoring_data_exchange/apis/assignments_api.rb +0 -45
  72. data/lib/tql_otr_factoring_data_exchange/apis/documents_api.rb +0 -82
  73. data/lib/tql_otr_factoring_data_exchange/apis/invoices_api.rb +0 -114
  74. data/lib/tql_otr_factoring_data_exchange/apis/loads_api.rb +0 -68
  75. data/lib/tql_otr_factoring_data_exchange/apis/oauth_authorization_api.rb +0 -44
  76. data/lib/tql_otr_factoring_data_exchange/exceptions/oauth_provider_exception.rb +0 -64
  77. data/lib/tql_otr_factoring_data_exchange/http/auth/oauth_2.rb +0 -156
  78. data/lib/tql_otr_factoring_data_exchange/http/http_call_back.rb +0 -10
  79. data/lib/tql_otr_factoring_data_exchange/http/http_method_enum.rb +0 -10
  80. data/lib/tql_otr_factoring_data_exchange/http/http_request.rb +0 -10
  81. data/lib/tql_otr_factoring_data_exchange/http/http_response.rb +0 -10
  82. data/lib/tql_otr_factoring_data_exchange/models/assignment_request.rb +0 -140
  83. data/lib/tql_otr_factoring_data_exchange/models/assignment_status.rb +0 -36
  84. data/lib/tql_otr_factoring_data_exchange/models/base64_document.rb +0 -118
  85. data/lib/tql_otr_factoring_data_exchange/models/base64_document_upload_request.rb +0 -107
  86. data/lib/tql_otr_factoring_data_exchange/models/carrier.rb +0 -98
  87. data/lib/tql_otr_factoring_data_exchange/models/carrier2.rb +0 -98
  88. data/lib/tql_otr_factoring_data_exchange/models/carrier_input.rb +0 -123
  89. data/lib/tql_otr_factoring_data_exchange/models/carrier_input1.rb +0 -123
  90. data/lib/tql_otr_factoring_data_exchange/models/charge_code.rb +0 -126
  91. data/lib/tql_otr_factoring_data_exchange/models/charge_code_origin.rb +0 -49
  92. data/lib/tql_otr_factoring_data_exchange/models/charge_input.rb +0 -146
  93. data/lib/tql_otr_factoring_data_exchange/models/document_type.rb +0 -288
  94. data/lib/tql_otr_factoring_data_exchange/models/document_upload_metadata.rb +0 -111
  95. data/lib/tql_otr_factoring_data_exchange/models/exception_severity.rb +0 -40
  96. data/lib/tql_otr_factoring_data_exchange/models/factoring_company_input.rb +0 -117
  97. data/lib/tql_otr_factoring_data_exchange/models/invoice_item_input.rb +0 -165
  98. data/lib/tql_otr_factoring_data_exchange/models/invoice_search_response.rb +0 -124
  99. data/lib/tql_otr_factoring_data_exchange/models/invoice_status.rb +0 -74
  100. data/lib/tql_otr_factoring_data_exchange/models/invoice_type.rb +0 -50
  101. data/lib/tql_otr_factoring_data_exchange/models/load_search_request.rb +0 -205
  102. data/lib/tql_otr_factoring_data_exchange/models/load_search_response.rb +0 -124
  103. data/lib/tql_otr_factoring_data_exchange/models/load_status.rb +0 -56
  104. data/lib/tql_otr_factoring_data_exchange/models/location.rb +0 -149
  105. data/lib/tql_otr_factoring_data_exchange/models/oauth_provider_error.rb +0 -62
  106. data/lib/tql_otr_factoring_data_exchange/models/oauth_scope.rb +0 -36
  107. data/lib/tql_otr_factoring_data_exchange/models/oauth_token.rb +0 -96
  108. data/lib/tql_otr_factoring_data_exchange/models/problem_details.rb +0 -96
  109. data/lib/tql_otr_factoring_data_exchange/models/reference_number_input.rb +0 -109
  110. data/lib/tql_otr_factoring_data_exchange/models/reference_type.rb +0 -90
  111. data/lib/tql_otr_factoring_data_exchange/models/status.rb +0 -44
  112. data/lib/tql_otr_factoring_data_exchange/models/stop_input.rb +0 -121
  113. data/lib/tql_otr_factoring_data_exchange/models/stop_type.rb +0 -62
  114. data/lib/tql_otr_factoring_data_exchange/models/submit_invoice_request.rb +0 -326
  115. data/lib/tql_otr_factoring_data_exchange/models/weight_unit.rb +0 -36
  116. data/lib/tql_otr_factoring_data_exchange/utilities/date_time_helper.rb +0 -11
  117. data/lib/tql_otr_factoring_data_exchange/utilities/union_type_lookup.rb +0 -29
  118. data/lib/tql_otr_factoring_data_exchange.rb +0 -107
@@ -0,0 +1,68 @@
1
+ # freight_financials_webhook_ingestion_api
2
+ #
3
+ # This file was automatically
4
+ # generated by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+ module FreightFinancialsWebhookIngestionApi
7
+ # RatingChargeQualifier.
8
+ class RatingChargeQualifier
9
+ RATING_CHARGE_QUALIFIER = [
10
+ # TODO: Write general description for PERPOUND
11
+ PERPOUND = 'PerPound'.freeze,
12
+
13
+ # TODO: Write general description for PERHUNDREDWEIGHT
14
+ PERHUNDREDWEIGHT = 'PerHundredweight'.freeze,
15
+
16
+ # TODO: Write general description for PERTON
17
+ PERTON = 'PerTon'.freeze,
18
+
19
+ # TODO: Write general description for PERMILE
20
+ PERMILE = 'PerMile'.freeze,
21
+
22
+ # TODO: Write general description for PERKILOMETER
23
+ PERKILOMETER = 'PerKilometer'.freeze,
24
+
25
+ # TODO: Write general description for PERHOUR
26
+ PERHOUR = 'PerHour'.freeze,
27
+
28
+ # TODO: Write general description for PERCASE
29
+ PERCASE = 'PerCase'.freeze,
30
+
31
+ # TODO: Write general description for PERPALLET
32
+ PERPALLET = 'PerPallet'.freeze,
33
+
34
+ # TODO: Write general description for PERUNIT
35
+ PERUNIT = 'PerUnit'.freeze,
36
+
37
+ # TODO: Write general description for PERCENT
38
+ PERCENT = 'Percent'.freeze
39
+ ].freeze
40
+
41
+ def self.validate(value)
42
+ return false if value.nil?
43
+
44
+ RATING_CHARGE_QUALIFIER.include?(value)
45
+ end
46
+
47
+ def self.from_value(value, default_value = PERPOUND)
48
+ return default_value if value.nil?
49
+
50
+ str = value.to_s.strip
51
+
52
+ case str.downcase
53
+ when 'perpound' then PERPOUND
54
+ when 'perhundredweight' then PERHUNDREDWEIGHT
55
+ when 'perton' then PERTON
56
+ when 'permile' then PERMILE
57
+ when 'perkilometer' then PERKILOMETER
58
+ when 'perhour' then PERHOUR
59
+ when 'percase' then PERCASE
60
+ when 'perpallet' then PERPALLET
61
+ when 'perunit' then PERUNIT
62
+ when 'percent' then PERCENT
63
+ else
64
+ default_value
65
+ end
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,40 @@
1
+ # freight_financials_webhook_ingestion_api
2
+ #
3
+ # This file was automatically
4
+ # generated by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+ module FreightFinancialsWebhookIngestionApi
7
+ # RatingResponseFormat.
8
+ class RatingResponseFormat
9
+ RATING_RESPONSE_FORMAT = [
10
+ # TODO: Write general description for TEXT
11
+ TEXT = 'Text'.freeze,
12
+
13
+ # TODO: Write general description for JSON
14
+ JSON = 'Json'.freeze,
15
+
16
+ # TODO: Write general description for XML
17
+ XML = 'Xml'.freeze
18
+ ].freeze
19
+
20
+ def self.validate(value)
21
+ return false if value.nil?
22
+
23
+ RATING_RESPONSE_FORMAT.include?(value)
24
+ end
25
+
26
+ def self.from_value(value, default_value = TEXT)
27
+ return default_value if value.nil?
28
+
29
+ str = value.to_s.strip
30
+
31
+ case str.downcase
32
+ when 'text' then TEXT
33
+ when 'json' then JSON
34
+ when 'xml' then XML
35
+ else
36
+ default_value
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,71 @@
1
+ # freight_financials_webhook_ingestion_api
2
+ #
3
+ # This file was automatically
4
+ # generated by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+ module FreightFinancialsWebhookIngestionApi
7
+ # ReferenceNumber Model.
8
+ class ReferenceNumber < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [Integer]
14
+ attr_accessor :reference_type
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [String]
18
+ attr_accessor :value
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['reference_type'] = 'referenceType'
24
+ @_hash['value'] = 'value'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ %w[
31
+ reference_type
32
+ value
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ []
39
+ end
40
+
41
+ def initialize(reference_type: SKIP, value: SKIP)
42
+ @reference_type = reference_type unless reference_type == SKIP
43
+ @value = value unless value == SKIP
44
+ end
45
+
46
+ # Creates an instance of the object from a hash.
47
+ def self.from_hash(hash)
48
+ return nil unless hash
49
+
50
+ # Extract variables from the hash.
51
+ reference_type = hash.key?('referenceType') ? hash['referenceType'] : SKIP
52
+ value = hash.key?('value') ? hash['value'] : SKIP
53
+
54
+ # Create object from extracted values.
55
+ ReferenceNumber.new(reference_type: reference_type,
56
+ value: value)
57
+ end
58
+
59
+ # Provides a human-readable string representation of the object.
60
+ def to_s
61
+ class_name = self.class.name.split('::').last
62
+ "<#{class_name} reference_type: #{@reference_type}, value: #{@value}>"
63
+ end
64
+
65
+ # Provides a debugging-friendly string with detailed object information.
66
+ def inspect
67
+ class_name = self.class.name.split('::').last
68
+ "<#{class_name} reference_type: #{@reference_type.inspect}, value: #{@value.inspect}>"
69
+ end
70
+ end
71
+ end
@@ -1,242 +1,223 @@
1
- # tql_otr_factoring_data_exchange
2
- #
3
- # This file was automatically generated by
4
- # APIMATIC v3.0 ( https://www.apimatic.io ).
5
-
6
- require 'date'
7
- module TqlOtrFactoringDataExchange
8
- # Search filters and pagination for querying invoices. All filter fields are
9
- # optional omit a filter to match all values for that field. **AND across
10
- # fields, OR within arrays.** When multiple fields are supplied, all must
11
- # match (AND). When an array-valued field (like `status`) contains multiple
12
- # values, a match on *any* value satisfies that field (OR).
13
- class InvoiceSearchRequest < BaseModel
14
- SKIP = Object.new
15
- private_constant :SKIP
16
-
17
- # 1-based page number.
18
- # @return [Integer]
19
- attr_accessor :page
20
-
21
- # Number of results per page (max 100).
22
- # @return [Integer]
23
- attr_accessor :page_size
24
-
25
- # Filter by one or more TQL load numbers (exact match, OR within the array).
26
- # @return [Array[String]]
27
- attr_accessor :load_numbers
28
-
29
- # Filter by one or more factoring company invoice numbers (exact match, OR
30
- # within the array).
31
- # @return [Array[String]]
32
- attr_accessor :invoice_numbers
33
-
34
- # Filter by one or more invoice statuses (OR within the array).
35
- # @return [Array[InvoiceStatus]]
36
- attr_accessor :statuses
37
-
38
- # Filter by one or more carrier names (partial match, OR within the array).
39
- # @return [Array[String]]
40
- attr_accessor :carrier_names
41
-
42
- # Filter by one or more USDOT numbers (exact match, OR within the array).
43
- # @return [Array[String]]
44
- attr_accessor :carrier_dot_numbers
45
-
46
- # Filter by one or more Motor Carrier (MC) numbers (exact match, OR within
47
- # the array).
48
- # @return [Array[String]]
49
- attr_accessor :carrier_mc_numbers
50
-
51
- # Only return invoices whose `lastUpdatedAt` is on or after this UTC
52
- # timestamp.
53
- # @return [DateTime]
54
- attr_accessor :last_updated_after
55
-
56
- # Only return invoices whose `lastUpdatedAt` is before this UTC timestamp.
57
- # @return [DateTime]
58
- attr_accessor :last_updated_before
59
-
60
- # Only return invoices received on or after this UTC timestamp.
61
- # @return [DateTime]
62
- attr_accessor :received_after
63
-
64
- # Only return invoices received before this UTC timestamp.
65
- # @return [DateTime]
66
- attr_accessor :received_before
67
-
68
- # A mapping from model property names to API property names.
69
- def self.names
70
- @_hash = {} if @_hash.nil?
71
- @_hash['page'] = 'page'
72
- @_hash['page_size'] = 'pageSize'
73
- @_hash['load_numbers'] = 'loadNumbers'
74
- @_hash['invoice_numbers'] = 'invoiceNumbers'
75
- @_hash['statuses'] = 'statuses'
76
- @_hash['carrier_names'] = 'carrierNames'
77
- @_hash['carrier_dot_numbers'] = 'carrierDotNumbers'
78
- @_hash['carrier_mc_numbers'] = 'carrierMcNumbers'
79
- @_hash['last_updated_after'] = 'lastUpdatedAfter'
80
- @_hash['last_updated_before'] = 'lastUpdatedBefore'
81
- @_hash['received_after'] = 'receivedAfter'
82
- @_hash['received_before'] = 'receivedBefore'
83
- @_hash
84
- end
85
-
86
- # An array for optional fields
87
- def self.optionals
88
- %w[
89
- load_numbers
90
- invoice_numbers
91
- statuses
92
- carrier_names
93
- carrier_dot_numbers
94
- carrier_mc_numbers
95
- last_updated_after
96
- last_updated_before
97
- received_after
98
- received_before
99
- ]
100
- end
101
-
102
- # An array for nullable fields
103
- def self.nullables
104
- %w[
105
- load_numbers
106
- invoice_numbers
107
- statuses
108
- carrier_names
109
- carrier_dot_numbers
110
- carrier_mc_numbers
111
- last_updated_after
112
- last_updated_before
113
- received_after
114
- received_before
115
- ]
116
- end
117
-
118
- def initialize(page:, page_size:, load_numbers: SKIP, invoice_numbers: SKIP,
119
- statuses: SKIP, carrier_names: SKIP,
120
- carrier_dot_numbers: SKIP, carrier_mc_numbers: SKIP,
121
- last_updated_after: SKIP, last_updated_before: SKIP,
122
- received_after: SKIP, received_before: SKIP,
123
- additional_properties: nil)
124
- # Add additional model properties to the instance
125
- additional_properties = {} if additional_properties.nil?
126
-
127
- @page = page
128
- @page_size = page_size
129
- @load_numbers = load_numbers unless load_numbers == SKIP
130
- @invoice_numbers = invoice_numbers unless invoice_numbers == SKIP
131
- @statuses = statuses unless statuses == SKIP
132
- @carrier_names = carrier_names unless carrier_names == SKIP
133
- @carrier_dot_numbers = carrier_dot_numbers unless carrier_dot_numbers == SKIP
134
- @carrier_mc_numbers = carrier_mc_numbers unless carrier_mc_numbers == SKIP
135
- @last_updated_after = last_updated_after unless last_updated_after == SKIP
136
- @last_updated_before = last_updated_before unless last_updated_before == SKIP
137
- @received_after = received_after unless received_after == SKIP
138
- @received_before = received_before unless received_before == SKIP
139
- @additional_properties = additional_properties
140
- end
141
-
142
- # Creates an instance of the object from a hash.
143
- def self.from_hash(hash)
144
- return nil unless hash
145
-
146
- # Extract variables from the hash.
147
- page = hash.key?('page') ? hash['page'] : nil
148
- page_size = hash.key?('pageSize') ? hash['pageSize'] : nil
149
- load_numbers = hash.key?('loadNumbers') ? hash['loadNumbers'] : SKIP
150
- invoice_numbers =
151
- hash.key?('invoiceNumbers') ? hash['invoiceNumbers'] : SKIP
152
- statuses = hash.key?('statuses') ? hash['statuses'] : SKIP
153
- carrier_names = hash.key?('carrierNames') ? hash['carrierNames'] : SKIP
154
- carrier_dot_numbers =
155
- hash.key?('carrierDotNumbers') ? hash['carrierDotNumbers'] : SKIP
156
- carrier_mc_numbers =
157
- hash.key?('carrierMcNumbers') ? hash['carrierMcNumbers'] : SKIP
158
- last_updated_after = if hash.key?('lastUpdatedAfter')
159
- (DateTimeHelper.from_rfc3339(hash['lastUpdatedAfter']) if hash['lastUpdatedAfter'])
160
- else
161
- SKIP
162
- end
163
- last_updated_before = if hash.key?('lastUpdatedBefore')
164
- (DateTimeHelper.from_rfc3339(hash['lastUpdatedBefore']) if hash['lastUpdatedBefore'])
165
- else
166
- SKIP
167
- end
168
- received_after = if hash.key?('receivedAfter')
169
- (DateTimeHelper.from_rfc3339(hash['receivedAfter']) if hash['receivedAfter'])
170
- else
171
- SKIP
172
- end
173
- received_before = if hash.key?('receivedBefore')
174
- (DateTimeHelper.from_rfc3339(hash['receivedBefore']) if hash['receivedBefore'])
175
- else
176
- SKIP
177
- end
178
-
179
- # Create a new hash for additional properties, removing known properties.
180
- new_hash = hash.reject { |k, _| names.value?(k) }
181
-
182
- additional_properties = APIHelper.get_additional_properties(
183
- new_hash, proc { |value| value }
184
- )
185
-
186
- # Create object from extracted values.
187
- InvoiceSearchRequest.new(page: page,
188
- page_size: page_size,
189
- load_numbers: load_numbers,
190
- invoice_numbers: invoice_numbers,
191
- statuses: statuses,
192
- carrier_names: carrier_names,
193
- carrier_dot_numbers: carrier_dot_numbers,
194
- carrier_mc_numbers: carrier_mc_numbers,
195
- last_updated_after: last_updated_after,
196
- last_updated_before: last_updated_before,
197
- received_after: received_after,
198
- received_before: received_before,
199
- additional_properties: additional_properties)
200
- end
201
-
202
- def to_custom_last_updated_after
203
- DateTimeHelper.to_rfc3339(last_updated_after)
204
- end
205
-
206
- def to_custom_last_updated_before
207
- DateTimeHelper.to_rfc3339(last_updated_before)
208
- end
209
-
210
- def to_custom_received_after
211
- DateTimeHelper.to_rfc3339(received_after)
212
- end
213
-
214
- def to_custom_received_before
215
- DateTimeHelper.to_rfc3339(received_before)
216
- end
217
-
218
- # Provides a human-readable string representation of the object.
219
- def to_s
220
- class_name = self.class.name.split('::').last
221
- "<#{class_name} page: #{@page}, page_size: #{@page_size}, load_numbers: #{@load_numbers},"\
222
- " invoice_numbers: #{@invoice_numbers}, statuses: #{@statuses}, carrier_names:"\
223
- " #{@carrier_names}, carrier_dot_numbers: #{@carrier_dot_numbers}, carrier_mc_numbers:"\
224
- " #{@carrier_mc_numbers}, last_updated_after: #{@last_updated_after}, last_updated_before:"\
225
- " #{@last_updated_before}, received_after: #{@received_after}, received_before:"\
226
- " #{@received_before}, additional_properties: #{@additional_properties}>"
227
- end
228
-
229
- # Provides a debugging-friendly string with detailed object information.
230
- def inspect
231
- class_name = self.class.name.split('::').last
232
- "<#{class_name} page: #{@page.inspect}, page_size: #{@page_size.inspect}, load_numbers:"\
233
- " #{@load_numbers.inspect}, invoice_numbers: #{@invoice_numbers.inspect}, statuses:"\
234
- " #{@statuses.inspect}, carrier_names: #{@carrier_names.inspect}, carrier_dot_numbers:"\
235
- " #{@carrier_dot_numbers.inspect}, carrier_mc_numbers: #{@carrier_mc_numbers.inspect},"\
236
- " last_updated_after: #{@last_updated_after.inspect}, last_updated_before:"\
237
- " #{@last_updated_before.inspect}, received_after: #{@received_after.inspect},"\
238
- " received_before: #{@received_before.inspect}, additional_properties:"\
239
- " #{@additional_properties}>"
240
- end
241
- end
242
- end
1
+ # freight_financials_webhook_ingestion_api
2
+ #
3
+ # This file was automatically
4
+ # generated by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+
6
+ require 'date'
7
+ module FreightFinancialsWebhookIngestionApi
8
+ # SearchRequest Model.
9
+ class SearchRequest < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # TODO: Write general description for this method
14
+ # @return [Array[String]]
15
+ attr_accessor :carrier_dot_numbers
16
+
17
+ # TODO: Write general description for this method
18
+ # @return [Array[String]]
19
+ attr_accessor :carrier_mc_numbers
20
+
21
+ # TODO: Write general description for this method
22
+ # @return [Array[String]]
23
+ attr_accessor :carrier_names
24
+
25
+ # TODO: Write general description for this method
26
+ # @return [Array[String]]
27
+ attr_accessor :invoice_numbers
28
+
29
+ # TODO: Write general description for this method
30
+ # @return [DateTime]
31
+ attr_accessor :last_updated_after
32
+
33
+ # TODO: Write general description for this method
34
+ # @return [DateTime]
35
+ attr_accessor :last_updated_before
36
+
37
+ # TODO: Write general description for this method
38
+ # @return [Array[String]]
39
+ attr_accessor :load_numbers
40
+
41
+ # TODO: Write general description for this method
42
+ # @return [Integer]
43
+ attr_accessor :page
44
+
45
+ # TODO: Write general description for this method
46
+ # @return [Integer]
47
+ attr_accessor :page_size
48
+
49
+ # TODO: Write general description for this method
50
+ # @return [DateTime]
51
+ attr_accessor :received_after
52
+
53
+ # TODO: Write general description for this method
54
+ # @return [DateTime]
55
+ attr_accessor :received_before
56
+
57
+ # TODO: Write general description for this method
58
+ # @return [Array[Integer]]
59
+ attr_accessor :statuses
60
+
61
+ # A mapping from model property names to API property names.
62
+ def self.names
63
+ @_hash = {} if @_hash.nil?
64
+ @_hash['carrier_dot_numbers'] = 'carrierDotNumbers'
65
+ @_hash['carrier_mc_numbers'] = 'carrierMcNumbers'
66
+ @_hash['carrier_names'] = 'carrierNames'
67
+ @_hash['invoice_numbers'] = 'invoiceNumbers'
68
+ @_hash['last_updated_after'] = 'lastUpdatedAfter'
69
+ @_hash['last_updated_before'] = 'lastUpdatedBefore'
70
+ @_hash['load_numbers'] = 'loadNumbers'
71
+ @_hash['page'] = 'page'
72
+ @_hash['page_size'] = 'pageSize'
73
+ @_hash['received_after'] = 'receivedAfter'
74
+ @_hash['received_before'] = 'receivedBefore'
75
+ @_hash['statuses'] = 'statuses'
76
+ @_hash
77
+ end
78
+
79
+ # An array for optional fields
80
+ def self.optionals
81
+ %w[
82
+ carrier_dot_numbers
83
+ carrier_mc_numbers
84
+ carrier_names
85
+ invoice_numbers
86
+ last_updated_after
87
+ last_updated_before
88
+ load_numbers
89
+ page
90
+ page_size
91
+ received_after
92
+ received_before
93
+ statuses
94
+ ]
95
+ end
96
+
97
+ # An array for nullable fields
98
+ def self.nullables
99
+ %w[
100
+ carrier_dot_numbers
101
+ carrier_mc_numbers
102
+ carrier_names
103
+ invoice_numbers
104
+ last_updated_after
105
+ last_updated_before
106
+ load_numbers
107
+ received_after
108
+ received_before
109
+ statuses
110
+ ]
111
+ end
112
+
113
+ def initialize(carrier_dot_numbers: SKIP, carrier_mc_numbers: SKIP,
114
+ carrier_names: SKIP, invoice_numbers: SKIP,
115
+ last_updated_after: SKIP, last_updated_before: SKIP,
116
+ load_numbers: SKIP, page: SKIP, page_size: SKIP,
117
+ received_after: SKIP, received_before: SKIP, statuses: SKIP)
118
+ @carrier_dot_numbers = carrier_dot_numbers unless carrier_dot_numbers == SKIP
119
+ @carrier_mc_numbers = carrier_mc_numbers unless carrier_mc_numbers == SKIP
120
+ @carrier_names = carrier_names unless carrier_names == SKIP
121
+ @invoice_numbers = invoice_numbers unless invoice_numbers == SKIP
122
+ @last_updated_after = last_updated_after unless last_updated_after == SKIP
123
+ @last_updated_before = last_updated_before unless last_updated_before == SKIP
124
+ @load_numbers = load_numbers unless load_numbers == SKIP
125
+ @page = page unless page == SKIP
126
+ @page_size = page_size unless page_size == SKIP
127
+ @received_after = received_after unless received_after == SKIP
128
+ @received_before = received_before unless received_before == SKIP
129
+ @statuses = statuses unless statuses == SKIP
130
+ end
131
+
132
+ # Creates an instance of the object from a hash.
133
+ def self.from_hash(hash)
134
+ return nil unless hash
135
+
136
+ # Extract variables from the hash.
137
+ carrier_dot_numbers =
138
+ hash.key?('carrierDotNumbers') ? hash['carrierDotNumbers'] : SKIP
139
+ carrier_mc_numbers =
140
+ hash.key?('carrierMcNumbers') ? hash['carrierMcNumbers'] : SKIP
141
+ carrier_names = hash.key?('carrierNames') ? hash['carrierNames'] : SKIP
142
+ invoice_numbers =
143
+ hash.key?('invoiceNumbers') ? hash['invoiceNumbers'] : SKIP
144
+ last_updated_after = if hash.key?('lastUpdatedAfter')
145
+ (DateTimeHelper.from_rfc3339(hash['lastUpdatedAfter']) if hash['lastUpdatedAfter'])
146
+ else
147
+ SKIP
148
+ end
149
+ last_updated_before = if hash.key?('lastUpdatedBefore')
150
+ (DateTimeHelper.from_rfc3339(hash['lastUpdatedBefore']) if hash['lastUpdatedBefore'])
151
+ else
152
+ SKIP
153
+ end
154
+ load_numbers = hash.key?('loadNumbers') ? hash['loadNumbers'] : SKIP
155
+ page = hash.key?('page') ? hash['page'] : SKIP
156
+ page_size = hash.key?('pageSize') ? hash['pageSize'] : SKIP
157
+ received_after = if hash.key?('receivedAfter')
158
+ (DateTimeHelper.from_rfc3339(hash['receivedAfter']) if hash['receivedAfter'])
159
+ else
160
+ SKIP
161
+ end
162
+ received_before = if hash.key?('receivedBefore')
163
+ (DateTimeHelper.from_rfc3339(hash['receivedBefore']) if hash['receivedBefore'])
164
+ else
165
+ SKIP
166
+ end
167
+ statuses = hash.key?('statuses') ? hash['statuses'] : SKIP
168
+
169
+ # Create object from extracted values.
170
+ SearchRequest.new(carrier_dot_numbers: carrier_dot_numbers,
171
+ carrier_mc_numbers: carrier_mc_numbers,
172
+ carrier_names: carrier_names,
173
+ invoice_numbers: invoice_numbers,
174
+ last_updated_after: last_updated_after,
175
+ last_updated_before: last_updated_before,
176
+ load_numbers: load_numbers,
177
+ page: page,
178
+ page_size: page_size,
179
+ received_after: received_after,
180
+ received_before: received_before,
181
+ statuses: statuses)
182
+ end
183
+
184
+ def to_custom_last_updated_after
185
+ DateTimeHelper.to_rfc3339(last_updated_after)
186
+ end
187
+
188
+ def to_custom_last_updated_before
189
+ DateTimeHelper.to_rfc3339(last_updated_before)
190
+ end
191
+
192
+ def to_custom_received_after
193
+ DateTimeHelper.to_rfc3339(received_after)
194
+ end
195
+
196
+ def to_custom_received_before
197
+ DateTimeHelper.to_rfc3339(received_before)
198
+ end
199
+
200
+ # Provides a human-readable string representation of the object.
201
+ def to_s
202
+ class_name = self.class.name.split('::').last
203
+ "<#{class_name} carrier_dot_numbers: #{@carrier_dot_numbers}, carrier_mc_numbers:"\
204
+ " #{@carrier_mc_numbers}, carrier_names: #{@carrier_names}, invoice_numbers:"\
205
+ " #{@invoice_numbers}, last_updated_after: #{@last_updated_after}, last_updated_before:"\
206
+ " #{@last_updated_before}, load_numbers: #{@load_numbers}, page: #{@page}, page_size:"\
207
+ " #{@page_size}, received_after: #{@received_after}, received_before: #{@received_before},"\
208
+ " statuses: #{@statuses}>"
209
+ end
210
+
211
+ # Provides a debugging-friendly string with detailed object information.
212
+ def inspect
213
+ class_name = self.class.name.split('::').last
214
+ "<#{class_name} carrier_dot_numbers: #{@carrier_dot_numbers.inspect}, carrier_mc_numbers:"\
215
+ " #{@carrier_mc_numbers.inspect}, carrier_names: #{@carrier_names.inspect}, invoice_numbers:"\
216
+ " #{@invoice_numbers.inspect}, last_updated_after: #{@last_updated_after.inspect},"\
217
+ " last_updated_before: #{@last_updated_before.inspect}, load_numbers:"\
218
+ " #{@load_numbers.inspect}, page: #{@page.inspect}, page_size: #{@page_size.inspect},"\
219
+ " received_after: #{@received_after.inspect}, received_before: #{@received_before.inspect},"\
220
+ " statuses: #{@statuses.inspect}>"
221
+ end
222
+ end
223
+ end