lockstep_sdk 2022.4.32.0

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 (94) hide show
  1. checksums.yaml +7 -0
  2. data/lib/lockstep_sdk/clients/activities_client.rb +119 -0
  3. data/lib/lockstep_sdk/clients/api_keys_client.rb +78 -0
  4. data/lib/lockstep_sdk/clients/app_enrollments_client.rb +121 -0
  5. data/lib/lockstep_sdk/clients/applications_client.rb +100 -0
  6. data/lib/lockstep_sdk/clients/attachments_client.rb +121 -0
  7. data/lib/lockstep_sdk/clients/code_definitions_client.rb +60 -0
  8. data/lib/lockstep_sdk/clients/companies_client.rb +123 -0
  9. data/lib/lockstep_sdk/clients/contacts_client.rb +90 -0
  10. data/lib/lockstep_sdk/clients/credit_memo_applied_client.rb +92 -0
  11. data/lib/lockstep_sdk/clients/currencies_client.rb +55 -0
  12. data/lib/lockstep_sdk/clients/custom_field_definitions_client.rb +94 -0
  13. data/lib/lockstep_sdk/clients/custom_field_values_client.rb +97 -0
  14. data/lib/lockstep_sdk/clients/definitions_client.rb +95 -0
  15. data/lib/lockstep_sdk/clients/emails_client.rb +108 -0
  16. data/lib/lockstep_sdk/clients/invoice_history_client.rb +56 -0
  17. data/lib/lockstep_sdk/clients/invoices_client.rb +126 -0
  18. data/lib/lockstep_sdk/clients/leads_client.rb +40 -0
  19. data/lib/lockstep_sdk/clients/notes_client.rb +84 -0
  20. data/lib/lockstep_sdk/clients/payment_applications_client.rb +92 -0
  21. data/lib/lockstep_sdk/clients/payments_client.rb +138 -0
  22. data/lib/lockstep_sdk/clients/provisioning_client.rb +56 -0
  23. data/lib/lockstep_sdk/clients/reports_client.rb +114 -0
  24. data/lib/lockstep_sdk/clients/status_client.rb +53 -0
  25. data/lib/lockstep_sdk/clients/sync_client.rb +97 -0
  26. data/lib/lockstep_sdk/clients/user_accounts_client.rb +127 -0
  27. data/lib/lockstep_sdk/clients/user_roles_client.rb +54 -0
  28. data/lib/lockstep_sdk/lockstep_api.rb +264 -0
  29. data/lib/lockstep_sdk/models/activity_model.rb +221 -0
  30. data/lib/lockstep_sdk/models/activity_stream_item_model.rb +104 -0
  31. data/lib/lockstep_sdk/models/activity_xref_model.rb +72 -0
  32. data/lib/lockstep_sdk/models/aging_model.rb +62 -0
  33. data/lib/lockstep_sdk/models/api_key_model.rb +116 -0
  34. data/lib/lockstep_sdk/models/app_enrollment_custom_field_model.rb +110 -0
  35. data/lib/lockstep_sdk/models/app_enrollment_model.rb +151 -0
  36. data/lib/lockstep_sdk/models/application_model.rb +166 -0
  37. data/lib/lockstep_sdk/models/ar_aging_header_info_model.rb +86 -0
  38. data/lib/lockstep_sdk/models/ar_header_info_model.rb +170 -0
  39. data/lib/lockstep_sdk/models/at_risk_invoice_summary_model.rb +140 -0
  40. data/lib/lockstep_sdk/models/attachment_header_info_model.rb +74 -0
  41. data/lib/lockstep_sdk/models/attachment_model.rb +122 -0
  42. data/lib/lockstep_sdk/models/bulk_currency_conversion_model.rb +56 -0
  43. data/lib/lockstep_sdk/models/cashflow_report_model.rb +74 -0
  44. data/lib/lockstep_sdk/models/code_definition_model.rb +99 -0
  45. data/lib/lockstep_sdk/models/company_model.rb +336 -0
  46. data/lib/lockstep_sdk/models/connector_info_model.rb +69 -0
  47. data/lib/lockstep_sdk/models/contact_model.rb +227 -0
  48. data/lib/lockstep_sdk/models/country_model.rb +116 -0
  49. data/lib/lockstep_sdk/models/credit_memo_applied_model.rb +150 -0
  50. data/lib/lockstep_sdk/models/credit_memo_invoice_model.rb +116 -0
  51. data/lib/lockstep_sdk/models/currency_model.rb +74 -0
  52. data/lib/lockstep_sdk/models/currency_rate_model.rb +68 -0
  53. data/lib/lockstep_sdk/models/custom_field_definition_model.rb +121 -0
  54. data/lib/lockstep_sdk/models/custom_field_value_model.rb +115 -0
  55. data/lib/lockstep_sdk/models/customer_details_model.rb +164 -0
  56. data/lib/lockstep_sdk/models/customer_details_payment_model.rb +104 -0
  57. data/lib/lockstep_sdk/models/customer_summary_model.rb +134 -0
  58. data/lib/lockstep_sdk/models/daily_sales_outstanding_report_model.rb +62 -0
  59. data/lib/lockstep_sdk/models/developer_account_submit_model.rb +62 -0
  60. data/lib/lockstep_sdk/models/email_model.rb +245 -0
  61. data/lib/lockstep_sdk/models/erp_info_data_model.rb +63 -0
  62. data/lib/lockstep_sdk/models/erp_info_model.rb +56 -0
  63. data/lib/lockstep_sdk/models/erp_model.rb +62 -0
  64. data/lib/lockstep_sdk/models/invite_data_model.rb +56 -0
  65. data/lib/lockstep_sdk/models/invite_model.rb +68 -0
  66. data/lib/lockstep_sdk/models/invite_submit_model.rb +50 -0
  67. data/lib/lockstep_sdk/models/invoice_address_model.rb +140 -0
  68. data/lib/lockstep_sdk/models/invoice_history_model.rb +238 -0
  69. data/lib/lockstep_sdk/models/invoice_line_model.rb +194 -0
  70. data/lib/lockstep_sdk/models/invoice_model.rb +325 -0
  71. data/lib/lockstep_sdk/models/invoice_payment_detail_model.rb +104 -0
  72. data/lib/lockstep_sdk/models/invoice_summary_model.rb +134 -0
  73. data/lib/lockstep_sdk/models/lead_model.rb +74 -0
  74. data/lib/lockstep_sdk/models/note_model.rb +121 -0
  75. data/lib/lockstep_sdk/models/payment_applied_model.rb +131 -0
  76. data/lib/lockstep_sdk/models/payment_detail_header_model.rb +80 -0
  77. data/lib/lockstep_sdk/models/payment_detail_model.rb +176 -0
  78. data/lib/lockstep_sdk/models/payment_model.rb +206 -0
  79. data/lib/lockstep_sdk/models/payment_summary_model.rb +128 -0
  80. data/lib/lockstep_sdk/models/provisioning_finalize_request_model.rb +74 -0
  81. data/lib/lockstep_sdk/models/provisioning_model.rb +74 -0
  82. data/lib/lockstep_sdk/models/provisioning_response_model.rb +86 -0
  83. data/lib/lockstep_sdk/models/risk_rate_model.rb +98 -0
  84. data/lib/lockstep_sdk/models/state_model.rb +62 -0
  85. data/lib/lockstep_sdk/models/status_model.rb +128 -0
  86. data/lib/lockstep_sdk/models/sync_entity_result_model.rb +74 -0
  87. data/lib/lockstep_sdk/models/sync_request_model.rb +98 -0
  88. data/lib/lockstep_sdk/models/sync_submit_model.rb +50 -0
  89. data/lib/lockstep_sdk/models/transfer_owner_model.rb +56 -0
  90. data/lib/lockstep_sdk/models/transfer_owner_submit_model.rb +50 -0
  91. data/lib/lockstep_sdk/models/user_account_model.rb +240 -0
  92. data/lib/lockstep_sdk/models/user_role_model.rb +86 -0
  93. data/lib/lockstep_sdk/version.rb +3 -0
  94. metadata +150 -0
@@ -0,0 +1,99 @@
1
+ #
2
+ # Lockstep Software Development Kit for Ruby
3
+ #
4
+ # (c) 2021-2022 Lockstep, Inc.
5
+ #
6
+ # For the full copyright and license information, please view the LICENSE
7
+ # file that was distributed with this source code.
8
+ #
9
+ # @author Ted Spence <tspence@lockstep.io>
10
+ # @author Manish Narayan B S <manish.n@lockstep.io>
11
+ # @author Rishi Rajkumar Jawahar <rjawahar@lockstep.io>
12
+ # @copyright 2021-2022 Lockstep, Inc.
13
+ # @version 2022.4
14
+ # @link https://github.com/Lockstep-Network/lockstep-sdk-ruby
15
+ #
16
+
17
+
18
+ require 'json'
19
+
20
+ module LockstepSdk
21
+
22
+ ##
23
+ # Represents a Code Definition. Codes can be used as shortened, human readable strings.
24
+ # Additionally, this table can be used to store lists of system values for Lockstep objects.
25
+ class CodeDefinitionModel
26
+
27
+ ##
28
+ # Initialize the CodeDefinitionModel using the provided prototype
29
+ def initialize(params = {})
30
+ @code_definition_id = params.dig(:code_definition_id)
31
+ @group_key = params.dig(:group_key)
32
+ @code_type = params.dig(:code_type)
33
+ @code = params.dig(:code)
34
+ @code_description = params.dig(:code_description)
35
+ @created = params.dig(:created)
36
+ @created_user_id = params.dig(:created_user_id)
37
+ @modified = params.dig(:modified)
38
+ @modified_user_id = params.dig(:modified_user_id)
39
+ end
40
+
41
+ ##
42
+ # @return [Uuid] The unique ID of this record, automatically assigned by Lockstep when this record is added to the Lockstep platform.
43
+ attr_accessor :code_definition_id
44
+
45
+ ##
46
+ # @return [Uuid] The GroupKey uniquely identifies a single Lockstep Platform account. All records for this account will share the same GroupKey value. GroupKey values cannot be changed once created. For more information, see [Accounts and GroupKeys](https://developer.lockstep.io/docs/accounts-and-groupkeys).
47
+ attr_accessor :group_key
48
+
49
+ ##
50
+ # @return [String] The type of the Code Definition
51
+ attr_accessor :code_type
52
+
53
+ ##
54
+ # @return [String] The Code to be defined.
55
+ attr_accessor :code
56
+
57
+ ##
58
+ # @return [String] The definition of the Code
59
+ attr_accessor :code_description
60
+
61
+ ##
62
+ # @return [Date-time] The date that the Code Definition was created
63
+ attr_accessor :created
64
+
65
+ ##
66
+ # @return [Uuid] The ID of the user who created the Code Definition
67
+ attr_accessor :created_user_id
68
+
69
+ ##
70
+ # @return [Date-time] The date the Code Definition was last modified
71
+ attr_accessor :modified
72
+
73
+ ##
74
+ # @return [Uuid] The ID of the user who last modified the Code Definition
75
+ attr_accessor :modified_user_id
76
+
77
+ ##
78
+ # @return [object] This object as a JSON key-value structure
79
+ def as_json(options={})
80
+ {
81
+ 'codeDefinitionId' => @code_definition_id,
82
+ 'groupKey' => @group_key,
83
+ 'codeType' => @code_type,
84
+ 'code' => @code,
85
+ 'codeDescription' => @code_description,
86
+ 'created' => @created,
87
+ 'createdUserId' => @created_user_id,
88
+ 'modified' => @modified,
89
+ 'modifiedUserId' => @modified_user_id,
90
+ }
91
+ end
92
+
93
+ ##
94
+ # @return [String] This object converted to a JSON string
95
+ def to_json(*options)
96
+ "[#{as_json(*options).to_json(*options)}]"
97
+ end
98
+ end
99
+ end
@@ -0,0 +1,336 @@
1
+ #
2
+ # Lockstep Software Development Kit for Ruby
3
+ #
4
+ # (c) 2021-2022 Lockstep, Inc.
5
+ #
6
+ # For the full copyright and license information, please view the LICENSE
7
+ # file that was distributed with this source code.
8
+ #
9
+ # @author Ted Spence <tspence@lockstep.io>
10
+ # @author Manish Narayan B S <manish.n@lockstep.io>
11
+ # @author Rishi Rajkumar Jawahar <rjawahar@lockstep.io>
12
+ # @copyright 2021-2022 Lockstep, Inc.
13
+ # @version 2022.4
14
+ # @link https://github.com/Lockstep-Network/lockstep-sdk-ruby
15
+ #
16
+
17
+
18
+ require 'json'
19
+
20
+ module LockstepSdk
21
+
22
+ ##
23
+ # A Company represents a customer, a vendor, or a company within the organization of the account holder.
24
+ # Companies can have parents and children, representing an organizational hierarchy of corporate entities.
25
+ # You can use Companies to track projects and financial data under this Company label.
26
+ #
27
+ # See [Vendors, Customers, and Companies](https://developer.lockstep.io/docs/companies-customers-and-vendors) for more information.
28
+ class CompanyModel
29
+
30
+ ##
31
+ # Initialize the CompanyModel using the provided prototype
32
+ def initialize(params = {})
33
+ @company_id = params.dig(:company_id)
34
+ @company_name = params.dig(:company_name)
35
+ @erp_key = params.dig(:erp_key)
36
+ @company_type = params.dig(:company_type)
37
+ @company_status = params.dig(:company_status)
38
+ @parent_company_id = params.dig(:parent_company_id)
39
+ @enterprise_id = params.dig(:enterprise_id)
40
+ @group_key = params.dig(:group_key)
41
+ @is_active = params.dig(:is_active)
42
+ @default_currency_code = params.dig(:default_currency_code)
43
+ @company_logo_url = params.dig(:company_logo_url)
44
+ @primary_contact_id = params.dig(:primary_contact_id)
45
+ @address1 = params.dig(:address1)
46
+ @address2 = params.dig(:address2)
47
+ @address3 = params.dig(:address3)
48
+ @corp_city = params.dig(:corp_city)
49
+ @corp_state = params.dig(:corp_state)
50
+ @corp_postal_code = params.dig(:corp_postal_code)
51
+ @corp_country = params.dig(:corp_country)
52
+ @corp_phone = params.dig(:corp_phone)
53
+ @corp_fax = params.dig(:corp_fax)
54
+ @city = params.dig(:city)
55
+ @state_region = params.dig(:state_region)
56
+ @postal_code = params.dig(:postal_code)
57
+ @country = params.dig(:country)
58
+ @phone_number = params.dig(:phone_number)
59
+ @fax_number = params.dig(:fax_number)
60
+ @created = params.dig(:created)
61
+ @created_user_id = params.dig(:created_user_id)
62
+ @modified = params.dig(:modified)
63
+ @modified_user_id = params.dig(:modified_user_id)
64
+ @modified_user_name = params.dig(:modified_user_name)
65
+ @tax_id = params.dig(:tax_id)
66
+ @duns_number = params.dig(:duns_number)
67
+ @ap_email_address = params.dig(:ap_email_address)
68
+ @ar_email_address = params.dig(:ar_email_address)
69
+ @domain_name = params.dig(:domain_name)
70
+ @company_classification_code_def_id = params.dig(:company_classification_code_def_id)
71
+ @description = params.dig(:description)
72
+ @website = params.dig(:website)
73
+ @app_enrollment_id = params.dig(:app_enrollment_id)
74
+ @notes = params.dig(:notes)
75
+ @attachments = params.dig(:attachments)
76
+ @contacts = params.dig(:contacts)
77
+ @invoices = params.dig(:invoices)
78
+ @custom_field_definitions = params.dig(:custom_field_definitions)
79
+ @custom_field_values = params.dig(:custom_field_values)
80
+ @company_classification_code_definition = params.dig(:company_classification_code_definition)
81
+ end
82
+
83
+ ##
84
+ # @return [Uuid] The unique ID of this record, automatically assigned by Lockstep when this record is added to the Lockstep platform. For the ID of this record in its originating financial system, see `ErpKey`.
85
+ attr_accessor :company_id
86
+
87
+ ##
88
+ # @return [String] The short name of the company.
89
+ attr_accessor :company_name
90
+
91
+ ##
92
+ # @return [String] The unique ID of this record as it was known in its originating financial system. If this company record was imported from a financial system, it will have the value `ErpKey` set to the original primary key number of the record as it was known in the originating financial system. If this record was not imported, this value will be `null`. For more information, see [Identity Columns](https://developer.lockstep.io/docs/identity-columns).
93
+ attr_accessor :erp_key
94
+
95
+ ##
96
+ # @return [String] This field indicates the type of company. It can be one of a limited number of values: Company, Customer, Group, Vendor, or Third Party. A company that represents both a customer and a vendor is identified as a CustomerVendor. * `Company` - This record represents a company that is part of the organization of the account holder. * `Customer` - This record represents a business entity that purchases things from the account holder. * `Group` - Only one record of type `GROUP` exists in each account. Contains your account profile. * `Vendor` - This record represents a business entity that sells things to the account holder. * `Third Party` - This record represents a business entity that is neither a customer nor vendor. * `CustomerVendor` - Both a customer and a vendor.
97
+ attr_accessor :company_type
98
+
99
+ ##
100
+ # @return [String] The status of the company. Companies can be either `Active` or `Inactive`. When matched to a Lockstep corporate profile, this value will change to reflect that this record will be kept in sync with that company's identity.
101
+ attr_accessor :company_status
102
+
103
+ ##
104
+ # @return [Uuid] If this business entity is part of an organization, this value is non-null and it is set to the `CompanyId` value of the parent company of this business entity. If this value is null, this business entity is a standalone.
105
+ attr_accessor :parent_company_id
106
+
107
+ ##
108
+ # @return [Uuid] For convenience, this field indicates the top-level parent company. This can be used to jump directly to the top parent in complex organizational hierarchies.
109
+ attr_accessor :enterprise_id
110
+
111
+ ##
112
+ # @return [Uuid] The GroupKey uniquely identifies a single Lockstep Platform account. All records for this account will share the same GroupKey value. GroupKey values cannot be changed once created. For more information, see [Accounts and GroupKeys](https://developer.lockstep.io/docs/accounts-and-groupkeys).
113
+ attr_accessor :group_key
114
+
115
+ ##
116
+ # @return [Boolean] This flag indicates whether the company is currently active. An inactive company should be hidden from the user interface but will still be available for querying.
117
+ attr_accessor :is_active
118
+
119
+ ##
120
+ # @return [String] The default currency code used by this business entity. This value can be overridden for invoices in a different currency code. For a list of defined currency codes, see [Query Currencies](https://developer.lockstep.io/reference/get_api-v1-definitions-currencies)
121
+ attr_accessor :default_currency_code
122
+
123
+ ##
124
+ # @return [String] The URL of this company's logo, if known.
125
+ attr_accessor :company_logo_url
126
+
127
+ ##
128
+ # @return [Uuid] The Lockstep `ContactId` of the primary contact for this company.
129
+ attr_accessor :primary_contact_id
130
+
131
+ ##
132
+ # @return [String] Address info
133
+ attr_accessor :address1
134
+
135
+ ##
136
+ # @return [String] Address info
137
+ attr_accessor :address2
138
+
139
+ ##
140
+ # @return [String] Address info
141
+ attr_accessor :address3
142
+
143
+ ##
144
+ # @return [String] Corporate Address info
145
+ attr_accessor :corp_city
146
+
147
+ ##
148
+ # @return [String] Corporate Address info
149
+ attr_accessor :corp_state
150
+
151
+ ##
152
+ # @return [String] Corporate Address info
153
+ attr_accessor :corp_postal_code
154
+
155
+ ##
156
+ # @return [String] Corporate Address info
157
+ attr_accessor :corp_country
158
+
159
+ ##
160
+ # @return [String] Corporate phone number
161
+ attr_accessor :corp_phone
162
+
163
+ ##
164
+ # @return [String] Corporate fax number
165
+ attr_accessor :corp_fax
166
+
167
+ ##
168
+ # @return [String] Address info
169
+ attr_accessor :city
170
+
171
+ ##
172
+ # @return [String] Address info
173
+ attr_accessor :state_region
174
+
175
+ ##
176
+ # @return [String] Address info
177
+ attr_accessor :postal_code
178
+
179
+ ##
180
+ # @return [String] Address info
181
+ attr_accessor :country
182
+
183
+ ##
184
+ # @return [String] Phone number
185
+ attr_accessor :phone_number
186
+
187
+ ##
188
+ # @return [String] Fax number
189
+ attr_accessor :fax_number
190
+
191
+ ##
192
+ # @return [Date-time] The date this company was created
193
+ attr_accessor :created
194
+
195
+ ##
196
+ # @return [Uuid] The ID of the user who created this company
197
+ attr_accessor :created_user_id
198
+
199
+ ##
200
+ # @return [Date-time] The date this company was last modified
201
+ attr_accessor :modified
202
+
203
+ ##
204
+ # @return [Uuid] The ID of the user who last modified this company
205
+ attr_accessor :modified_user_id
206
+
207
+ ##
208
+ # @return [String] The name of the user who last modified this company
209
+ attr_accessor :modified_user_name
210
+
211
+ ##
212
+ # @return [String] Federal Tax ID
213
+ attr_accessor :tax_id
214
+
215
+ ##
216
+ # @return [String] Dun & Bradstreet Number
217
+ attr_accessor :duns_number
218
+
219
+ ##
220
+ # @return [Email] AP (Accounts Payable) Email Address
221
+ attr_accessor :ap_email_address
222
+
223
+ ##
224
+ # @return [Email] AR (Accounts Receivable) Email Address
225
+ attr_accessor :ar_email_address
226
+
227
+ ##
228
+ # @return [String] For companies that use a custom domain name for their email system, this is the domain name used by this company. If this value is known, new emails that come in from this domain will be connected to this company.
229
+ attr_accessor :domain_name
230
+
231
+ ##
232
+ # @return [Uuid] Identifier for classification of this company.
233
+ attr_accessor :company_classification_code_def_id
234
+
235
+ ##
236
+ # @return [String] Description of the company.
237
+ attr_accessor :description
238
+
239
+ ##
240
+ # @return [String] Website URL for this company.
241
+ attr_accessor :website
242
+
243
+ ##
244
+ # @return [Uuid] The AppEnrollmentId of the application that imported this company record. For accounts with more than one financial system connected, this field identifies the originating financial system that produced this record.
245
+ attr_accessor :app_enrollment_id
246
+
247
+ ##
248
+ # @return [NoteModel] All notes attached to this company. To retrieve this collection, specify `Notes` in the "Include" parameter for your query.
249
+ attr_accessor :notes
250
+
251
+ ##
252
+ # @return [AttachmentModel] All attachments attached to this company. To retrieve this collection, specify `Attachments` in the "Include" parameter for your query.
253
+ attr_accessor :attachments
254
+
255
+ ##
256
+ # @return [ContactModel] All contacts attached to this company. To retrieve this collection, specify `Contacts` in the "Include" parameter for your query.
257
+ attr_accessor :contacts
258
+
259
+ ##
260
+ # @return [Object] All invoices attached to this company. To retrieve this collection, specify `Invoices` in the "Include" parameter for your query. For more information on Invoices, see [InvoiceModel](https://developer.lockstep.io/reference/get_api-v1-invoices-id).
261
+ attr_accessor :invoices
262
+
263
+ ##
264
+ # @return [CustomFieldDefinitionModel] All definitions attached to this company. To retrieve this collection, specify `CustomFieldValues` in the "Include" parameter for your query.
265
+ attr_accessor :custom_field_definitions
266
+
267
+ ##
268
+ # @return [CustomFieldValueModel] All values attached to this company. To retrieve this collection, specify `CustomFieldValues` in the "Include" parameter for your query.
269
+ attr_accessor :custom_field_values
270
+
271
+ ##
272
+ # @return [CodeDefinitionModel] Classification code definition for this company. To retrieve this collection, specify `Classification` in the "Include" parameter for your query.
273
+ attr_accessor :company_classification_code_definition
274
+
275
+ ##
276
+ # @return [object] This object as a JSON key-value structure
277
+ def as_json(options={})
278
+ {
279
+ 'companyId' => @company_id,
280
+ 'companyName' => @company_name,
281
+ 'erpKey' => @erp_key,
282
+ 'companyType' => @company_type,
283
+ 'companyStatus' => @company_status,
284
+ 'parentCompanyId' => @parent_company_id,
285
+ 'enterpriseId' => @enterprise_id,
286
+ 'groupKey' => @group_key,
287
+ 'isActive' => @is_active,
288
+ 'defaultCurrencyCode' => @default_currency_code,
289
+ 'companyLogoUrl' => @company_logo_url,
290
+ 'primaryContactId' => @primary_contact_id,
291
+ 'address1' => @address1,
292
+ 'address2' => @address2,
293
+ 'address3' => @address3,
294
+ 'corpCity' => @corp_city,
295
+ 'corpState' => @corp_state,
296
+ 'corpPostalCode' => @corp_postal_code,
297
+ 'corpCountry' => @corp_country,
298
+ 'corpPhone' => @corp_phone,
299
+ 'corpFax' => @corp_fax,
300
+ 'city' => @city,
301
+ 'stateRegion' => @state_region,
302
+ 'postalCode' => @postal_code,
303
+ 'country' => @country,
304
+ 'phoneNumber' => @phone_number,
305
+ 'faxNumber' => @fax_number,
306
+ 'created' => @created,
307
+ 'createdUserId' => @created_user_id,
308
+ 'modified' => @modified,
309
+ 'modifiedUserId' => @modified_user_id,
310
+ 'modifiedUserName' => @modified_user_name,
311
+ 'taxId' => @tax_id,
312
+ 'dunsNumber' => @duns_number,
313
+ 'apEmailAddress' => @ap_email_address,
314
+ 'arEmailAddress' => @ar_email_address,
315
+ 'domainName' => @domain_name,
316
+ 'companyClassificationCodeDefId' => @company_classification_code_def_id,
317
+ 'description' => @description,
318
+ 'website' => @website,
319
+ 'appEnrollmentId' => @app_enrollment_id,
320
+ 'notes' => @notes,
321
+ 'attachments' => @attachments,
322
+ 'contacts' => @contacts,
323
+ 'invoices' => @invoices,
324
+ 'customFieldDefinitions' => @custom_field_definitions,
325
+ 'customFieldValues' => @custom_field_values,
326
+ 'companyClassificationCodeDefinition' => @company_classification_code_definition,
327
+ }
328
+ end
329
+
330
+ ##
331
+ # @return [String] This object converted to a JSON string
332
+ def to_json(*options)
333
+ "[#{as_json(*options).to_json(*options)}]"
334
+ end
335
+ end
336
+ end
@@ -0,0 +1,69 @@
1
+ #
2
+ # Lockstep Software Development Kit for Ruby
3
+ #
4
+ # (c) 2021-2022 Lockstep, Inc.
5
+ #
6
+ # For the full copyright and license information, please view the LICENSE
7
+ # file that was distributed with this source code.
8
+ #
9
+ # @author Ted Spence <tspence@lockstep.io>
10
+ # @author Manish Narayan B S <manish.n@lockstep.io>
11
+ # @author Rishi Rajkumar Jawahar <rjawahar@lockstep.io>
12
+ # @copyright 2021-2022 Lockstep, Inc.
13
+ # @version 2022.4
14
+ # @link https://github.com/Lockstep-Network/lockstep-sdk-ruby
15
+ #
16
+
17
+
18
+ require 'json'
19
+
20
+ module LockstepSdk
21
+
22
+ ##
23
+ # Represents all possible data required to set up an app enrollment for a connector.
24
+ # Only send required fields for the given connector.
25
+ class ConnectorInfoModel
26
+
27
+ ##
28
+ # Initialize the ConnectorInfoModel using the provided prototype
29
+ def initialize(params = {})
30
+ @auth_code = params.dig(:auth_code)
31
+ @realm_id = params.dig(:realm_id)
32
+ @redirect_uri = params.dig(:redirect_uri)
33
+ @email = params.dig(:email)
34
+ end
35
+
36
+ ##
37
+ # @return [String] The authorization code returned from the first step of the OAuth2 flow https://oauth.net/2/grant-types/authorization-code/
38
+ attr_accessor :auth_code
39
+
40
+ ##
41
+ # @return [String] The realm id of the account being granted permissions to access
42
+ attr_accessor :realm_id
43
+
44
+ ##
45
+ # @return [String] The redirect uri used for step one of the OAuth2.0 flow.
46
+ attr_accessor :redirect_uri
47
+
48
+ ##
49
+ # @return [String] The email an email connection is being created for.
50
+ attr_accessor :email
51
+
52
+ ##
53
+ # @return [object] This object as a JSON key-value structure
54
+ def as_json(options={})
55
+ {
56
+ 'authCode' => @auth_code,
57
+ 'realmId' => @realm_id,
58
+ 'redirectUri' => @redirect_uri,
59
+ 'email' => @email,
60
+ }
61
+ end
62
+
63
+ ##
64
+ # @return [String] This object converted to a JSON string
65
+ def to_json(*options)
66
+ "[#{as_json(*options).to_json(*options)}]"
67
+ end
68
+ end
69
+ end