lockstep_rails 0.3.68 → 0.3.70
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +85 -52
- data/app/models/lockstep/company_magic_link_summary.rb +6 -0
- data/app/models/lockstep/invoice.rb +8 -3
- data/app/models/lockstep/workflow_status.rb +8 -0
- data/app/platform_api/schema/application.rb +1 -0
- data/app/platform_api/schema/batch_sync.rb +2 -0
- data/app/platform_api/schema/company_magic_link_summary.rb +93 -0
- data/app/platform_api/schema/company_magic_link_summary_fetch_result.rb +26 -0
- data/app/platform_api/schema/company_sync.rb +15 -0
- data/app/platform_api/schema/contact_sync.rb +10 -0
- data/app/platform_api/schema/directory_company.rb +72 -0
- data/app/platform_api/schema/external_connector.rb +30 -0
- data/app/platform_api/schema/external_connector_auth.rb +14 -0
- data/app/platform_api/schema/external_connector_auth_request.rb +22 -0
- data/app/platform_api/schema/external_connector_token.rb +36 -0
- data/app/platform_api/schema/invoice_fetch_result.rb +4 -2
- data/app/platform_api/schema/invoice_line_sync.rb +10 -0
- data/app/platform_api/schema/invoice_sync.rb +15 -0
- data/app/platform_api/schema/journal_entry.rb +106 -0
- data/app/platform_api/schema/journal_entry_fetch_result.rb +26 -0
- data/app/platform_api/schema/journal_entry_line.rb +129 -0
- data/app/platform_api/schema/journal_entry_line_fetch_result.rb +26 -0
- data/app/platform_api/schema/journal_entry_line_sync.rb +92 -0
- data/app/platform_api/schema/journal_entry_sync.rb +66 -0
- data/app/platform_api/schema/magic_link.rb +8 -0
- data/app/platform_api/schema/magic_link_summary.rb +30 -0
- data/app/platform_api/schema/note.rb +28 -27
- data/app/platform_api/schema/payment_applied_sync.rb +15 -0
- data/app/platform_api/schema/payment_sync.rb +10 -0
- data/app/platform_api/schema/transaction.rb +5 -0
- data/app/platform_api/schema/workflow_status.rb +65 -0
- data/app/platform_api/schema/workflow_status_fetch_result.rb +26 -0
- data/app/platform_api/swagger.json +4237 -5291
- data/lib/lockstep_rails/version.rb +3 -2
- data/lib/tasks/update_api_schema.rake +5 -0
- metadata +20 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 24dea20381afb07c0769964a66d6654ac72b20912a5cfcb3f31b308495024752
|
4
|
+
data.tar.gz: e884043d30e05e7382f9d50016b0cfb37363c4a9192b2494cb99fb491f4a0b56
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9a7898f08919efef7f7b7f9047865d9cf306aac6b36b9aeedc050c05f6df70b6bd96f3996d2081fb78013c35ffbe27c2db434337737d14ba962ee398bfd42fb5
|
7
|
+
data.tar.gz: 782a7e8e7bd14969ce43aea26cf7576cd8d3a61366ae4b1f879ba5d5902c94fceee006ab83fe1224e21b95381baf27feb80313bd6475320e48e75abbb4e8e091
|
data/README.md
CHANGED
@@ -1,10 +1,13 @@
|
|
1
1
|
# Lockstep
|
2
|
+
|
2
3
|
A financial service SDK for rails for innovative accounting solutions providers.
|
3
4
|
|
4
5
|
### Who are we?
|
6
|
+
|
5
7
|
Lockstep automates accounting workflows to improve your operational efficiency and cash flow. Accelerate payments through automated customer communications, enhanced collections activity management, and innovative forecasting and reporting.
|
6
8
|
|
7
9
|
### lockstep_rails
|
10
|
+
|
8
11
|
lockstep_rails makes it easy to interact with lockstep.io's REST API. It adheres to the ActiveRecord pattern. LockstepRails is fully ActiveModel compliant, meaning you can use validations and Rails forms.
|
9
12
|
|
10
13
|
Ruby/Rails developers should feel right at home.
|
@@ -12,11 +15,13 @@ Ruby/Rails developers should feel right at home.
|
|
12
15
|
If you're used to `Lockstep::Contact.create(:email_address => "test@emaildomain.com")`, then this is for you.
|
13
16
|
|
14
17
|
### Features
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
+
|
19
|
+
- ActiveRecord-like API, almost no learning curve
|
20
|
+
- Validations
|
21
|
+
- Rails forms and scaffolds **just work**
|
18
22
|
|
19
23
|
## Installation
|
24
|
+
|
20
25
|
Add this line to your application's Gemfile:
|
21
26
|
|
22
27
|
```ruby
|
@@ -24,57 +29,64 @@ gem 'lockstep_rails'
|
|
24
29
|
```
|
25
30
|
|
26
31
|
And then execute:
|
32
|
+
|
27
33
|
```bash
|
28
34
|
$ bundle
|
29
35
|
```
|
30
36
|
|
31
37
|
Or install it yourself as:
|
38
|
+
|
32
39
|
```bash
|
33
40
|
$ gem install lockstep_rails
|
34
41
|
```
|
35
42
|
|
36
43
|
## License
|
44
|
+
|
37
45
|
The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
|
38
46
|
|
39
47
|
# Usage
|
40
48
|
|
41
49
|
### Available Records
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
50
|
+
|
51
|
+
- Lockstep::Account
|
52
|
+
- Lockstep::ApiKey
|
53
|
+
- Lockstep::AppEnrollment
|
54
|
+
- Lockstep::Attachment
|
55
|
+
- Lockstep::Connection
|
56
|
+
- Lockstep::Contact
|
57
|
+
- Lockstep::CustomerSummary
|
58
|
+
- Lockstep::CompanyMagicLinkSummary
|
59
|
+
- Lockstep::FeatureFlag
|
60
|
+
- Lockstep::Invoice
|
61
|
+
- Lockstep::InvoiceAtRiskSummary
|
62
|
+
- Lockstep::InvoiceSummary
|
63
|
+
- Lockstep::MagicLink
|
64
|
+
- Lockstep::Note
|
65
|
+
- Lockstep::Payments
|
66
|
+
- Lockstep::PaymentApplied
|
67
|
+
- Lockstep::PaymentSummary
|
68
|
+
- Lockstep::ReportApAgingHeader
|
69
|
+
- Lockstep::ReportArAgingHeader
|
70
|
+
- Lockstep::ReportCashflow
|
71
|
+
- Lockstep::ReportDailyPayableOutstanding
|
72
|
+
- Lockstep::ReportDailyPayableOutstandingSummary
|
73
|
+
- Lockstep::ReportDailySalesOutstanding
|
74
|
+
- Lockstep::ReportPayableComingDue
|
75
|
+
- Lockstep::ReportPayablesComingDueSummary
|
76
|
+
- Lockstep::ReportPayableSummary
|
77
|
+
- Lockstep::ReportRiskRate
|
78
|
+
- Lockstep::ServiceFabricPayment
|
79
|
+
- Lockstep::Status
|
80
|
+
- Lockstep::TranscriptionValidationRequest
|
81
|
+
- Lockstep::User
|
82
|
+
- Lockstep::WorkflowStatus
|
72
83
|
|
73
84
|
## ActiveModel Interfaces
|
74
85
|
|
75
86
|
`lockstep_rails` supports the standard CRUD interface of ActiveRecord.
|
76
87
|
|
77
88
|
### Create
|
89
|
+
|
78
90
|
You can create a record by calling `new` or `create`
|
79
91
|
|
80
92
|
```ruby
|
@@ -82,15 +94,18 @@ Lockstep::Contact.create(email_address: "inbox@companyemail.com")
|
|
82
94
|
```
|
83
95
|
|
84
96
|
You can create records from associations as well. This will automatically association the relationship with the parent record
|
97
|
+
|
85
98
|
```ruby
|
86
99
|
connection = Lockstep::Connection.find(company_id: "17544da8-7be8-4ee2-8c62-cbd81428c68b")
|
87
100
|
connection.contacts.create(email_address: "inbox@companyemail.com")
|
88
101
|
```
|
89
102
|
|
90
103
|
### Update
|
104
|
+
|
91
105
|
Similar to ActiveRecord, you can update a record by calling `update`, `update_attributes` or `update_attribute`
|
92
106
|
|
93
107
|
Examples:
|
108
|
+
|
94
109
|
```ruby
|
95
110
|
connection = Lockstep::Connection.find(company_id: "17544da8-7be8-4ee2-8c62-cbd81428c68b")
|
96
111
|
connection.update(company_name: "New name")
|
@@ -103,9 +118,11 @@ connection.update_attribute(:company_name, "New name")
|
|
103
118
|
```
|
104
119
|
|
105
120
|
### Find
|
121
|
+
|
106
122
|
Similar to ActiveRecord, you can find a record by calling `find`, `find_by` or `find_by_company_id`
|
107
123
|
|
108
124
|
Examples:
|
125
|
+
|
109
126
|
```ruby
|
110
127
|
connection = Lockstep::Connection.find(company_id: "17544da8-7be8-4ee2-8c62-cbd81428c68b")
|
111
128
|
connection.update(company_name: "New name")
|
@@ -118,16 +135,19 @@ connection.update_attribute(:company_name, "New name")
|
|
118
135
|
```
|
119
136
|
|
120
137
|
### Where
|
121
|
-
|
138
|
+
|
139
|
+
Similar to ActiveRecord, you can search for records by calling `where`.
|
122
140
|
|
123
141
|
Unless you are accessing the record via `first`, you will have to call `execute` to fetch the records
|
124
142
|
|
125
143
|
Examples:
|
144
|
+
|
126
145
|
```ruby
|
127
146
|
Lockstep::Connection.where(status: "Active").execute
|
128
147
|
```
|
129
148
|
|
130
149
|
#### Chaining
|
150
|
+
|
131
151
|
You can chain queries while calling where.
|
132
152
|
|
133
153
|
```ruby
|
@@ -135,6 +155,7 @@ Lockstep::Connection.where(status: "Active").where(default_currency_code: "USD")
|
|
135
155
|
```
|
136
156
|
|
137
157
|
#### OR Query
|
158
|
+
|
138
159
|
You can build an or query by calling `or`
|
139
160
|
|
140
161
|
```ruby
|
@@ -142,24 +163,26 @@ Lockstep::Connection.where(status: "Active").or(Lockstep::Connection.where(defau
|
|
142
163
|
```
|
143
164
|
|
144
165
|
#### Advanced Queries
|
166
|
+
|
145
167
|
[Searchlight](https://developer.lockstep.io/docs/querying-with-searchlight) supports building complex comparisons in the query.
|
146
168
|
|
147
|
-
| Suffice
|
148
|
-
|
149
|
-
| _eq | Equals | where(name_eq: "Test Name")
|
150
|
-
| _gt | Greater Than | where(amount_gt: 100)
|
151
|
-
| _ge | Greater Than Or Equal | where(amount_ge: 100)
|
152
|
-
| _lt | Less Than | where(amount_lt: 100)
|
153
|
-
| _le | Less Than Or Equal | where(amount_le: 100)
|
154
|
-
| _ne | Not Equal | where(name_ne: "tak")
|
155
|
-
| _in | IN | where(name_in: ["tik", "tok"])
|
156
|
-
| _contains | CONTAINS | where(name_contains: "kit")
|
157
|
-
| _starts_with | STARTSWITH | where(name_starts_with: "tik")
|
158
|
-
| _ends_with | ENDSWITH | where(name_ends_with: "tok")
|
159
|
-
| _is | IS | where(name_is: nil) where(name_is: "NOT NULL")
|
169
|
+
| Suffice | Searchlight Query | Example |
|
170
|
+
| ------------- | --------------------- | ---------------------------------------------- |
|
171
|
+
| \_eq | Equals | where(name_eq: "Test Name") |
|
172
|
+
| \_gt | Greater Than | where(amount_gt: 100) |
|
173
|
+
| \_ge | Greater Than Or Equal | where(amount_ge: 100) |
|
174
|
+
| \_lt | Less Than | where(amount_lt: 100) |
|
175
|
+
| \_le | Less Than Or Equal | where(amount_le: 100) |
|
176
|
+
| \_ne | Not Equal | where(name_ne: "tak") |
|
177
|
+
| \_in | IN | where(name_in: ["tik", "tok"]) |
|
178
|
+
| \_contains | CONTAINS | where(name_contains: "kit") |
|
179
|
+
| \_starts_with | STARTSWITH | where(name_starts_with: "tik") |
|
180
|
+
| \_ends_with | ENDSWITH | where(name_ends_with: "tok") |
|
181
|
+
| \_is | IS | where(name_is: nil) where(name_is: "NOT NULL") |
|
160
182
|
|
161
183
|
#### Searchlight Queries
|
162
|
-
|
184
|
+
|
185
|
+
Using the rails standard queries generates searchlight compatible queries.
|
163
186
|
if you wish, you can always write raw [Searchlight](https://developer.lockstep.io/docs/querying-with-searchlight) queries by passing a string in the where block
|
164
187
|
|
165
188
|
```ruby
|
@@ -167,6 +190,7 @@ Lockstep::Connection.where("isActive is true OR default_currency_code in ('USD',
|
|
167
190
|
```
|
168
191
|
|
169
192
|
### Destroy and Destroy all
|
193
|
+
|
170
194
|
You can destroy a single object by calling destroy method on one object
|
171
195
|
Lockstep::Connection.find(company_id: "17544da8-7be8-4ee2-8c62-cbd81428c68b").destroy
|
172
196
|
|
@@ -175,6 +199,7 @@ You can also destroy multiple objects at once by calling it on the model class a
|
|
175
199
|
Lockstep::Connection.destroy_all(id: ["17544da8-7be8-4ee2-8c62-cbd81428c68b"])
|
176
200
|
|
177
201
|
### Count
|
202
|
+
|
178
203
|
You can fetch the count of available records by calling `count`
|
179
204
|
|
180
205
|
```ruby
|
@@ -184,12 +209,16 @@ Lockstep::Connection.count
|
|
184
209
|
Lockstep::Connection.where(status: "Active").count
|
185
210
|
# 100
|
186
211
|
```
|
212
|
+
|
187
213
|
### With Count
|
214
|
+
|
188
215
|
```ruby
|
189
216
|
records , count = Lockstep::Connection.where(status: "active").with_count(true).execute
|
190
217
|
# records get the records for the query and the with count if used will return the total number of records present for that query.
|
191
218
|
```
|
219
|
+
|
192
220
|
### Limit
|
221
|
+
|
193
222
|
You can limit the number of records being fetched by passing `limit`
|
194
223
|
|
195
224
|
The default limit is 200.
|
@@ -201,6 +230,7 @@ Lockstep::Connection.where(status: "Active").limit(100).execute
|
|
201
230
|
```
|
202
231
|
|
203
232
|
### Pagination
|
233
|
+
|
204
234
|
You can paginate the records by passing the `page`
|
205
235
|
|
206
236
|
```ruby
|
@@ -210,11 +240,13 @@ Lockstep::Connection.where(status: "Active").limit(100).page(2).execute
|
|
210
240
|
```
|
211
241
|
|
212
242
|
## Adding relationships with ActiveRecord
|
243
|
+
|
213
244
|
If you would like to link the `Lockstep::ApiRecord` with an `ActiveRecord::Base`, you can do so by including `Lockstep::ActiveRecords::Association`
|
214
245
|
|
215
246
|
This gives you access to 2 methods for defining relationships
|
216
|
-
|
217
|
-
|
247
|
+
|
248
|
+
- lockstep_has_many
|
249
|
+
- lockstep_belongs_to
|
218
250
|
|
219
251
|
```ruby
|
220
252
|
class User < ActiveRecord::Base
|
@@ -222,11 +254,12 @@ class User < ActiveRecord::Base
|
|
222
254
|
|
223
255
|
lockstep_has_many :connections, class_name: "Lockstep::Connection", primary_key: 'company_id', foreign_key: "lockstep_company_id"
|
224
256
|
lockstep_belongs_to :account, class_name: "Lockstep::Account", primary_key: 'company_id', foreign_key: "lockstep_company_id"
|
225
|
-
|
257
|
+
|
226
258
|
end
|
227
259
|
```
|
228
260
|
|
229
261
|
#### Loader
|
262
|
+
|
230
263
|
You could define your own loader for fetching the records by passing a `loader` Proc
|
231
264
|
|
232
265
|
```ruby
|
@@ -235,7 +268,7 @@ class User < ActiveRecord::Base
|
|
235
268
|
|
236
269
|
lockstep_has_many :connections, class_name: "Lockstep::Connection", loader: -> (record) { Lockstep::Connection.where(is_active: true).where(company_id: record.lockstep_company_id) }
|
237
270
|
lockstep_belongs_to :account, class_name: "Lockstep::Account", loader: -> (record) { Lockstep::Account.where(is_active: true).first }
|
238
|
-
|
271
|
+
|
239
272
|
end
|
240
273
|
```
|
241
274
|
|
@@ -1,7 +1,12 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
class Lockstep::Invoice < Lockstep::ApiRecord
|
2
|
-
self.model_name_uri =
|
3
|
-
self.id_ref =
|
4
|
+
self.model_name_uri = 'v1/Invoices'
|
5
|
+
self.id_ref = 'invoice_id'
|
4
6
|
load_schema(Schema::Invoice)
|
5
7
|
|
6
|
-
belongs_to :connection, class_name:
|
8
|
+
belongs_to :connection, class_name: 'Lockstep::Connection', foreign_key: :customer_id
|
9
|
+
|
10
|
+
scope :einvoices, -> { include_object(:customer, :lines) }
|
11
|
+
scope :received_einvoices, -> { einvoices.where(invoice_type_code: 'AP E-Invoice') }
|
7
12
|
end
|
@@ -79,5 +79,6 @@ end
|
|
79
79
|
has_many :attachments, {:class_name=>"Schema::Attachment", :included=>true}
|
80
80
|
has_many :custom_field_definitions, {:class_name=>"Schema::CustomFieldDefinition", :included=>true}
|
81
81
|
has_many :custom_field_values, {:class_name=>"Schema::CustomFieldValue", :included=>true}
|
82
|
+
has_many :enrollments, {:class_name=>"Schema::AppEnrollment", :included=>true}
|
82
83
|
|
83
84
|
end
|
@@ -27,5 +27,7 @@ end
|
|
27
27
|
has_many :financial_accounts, {:class_name=>"Schema::FinancialAccountSync", :included=>true}
|
28
28
|
has_many :financial_account_balance_histories, {:class_name=>"Schema::FinancialAccountBalanceHistorySync", :included=>true}
|
29
29
|
has_many :base_currencies, {:class_name=>"Schema::BaseCurrencySync", :included=>true}
|
30
|
+
has_many :journal_entries, {:class_name=>"Schema::JournalEntrySync", :included=>true}
|
31
|
+
has_many :journal_entry_lines, {:class_name=>"Schema::JournalEntryLineSync", :included=>true}
|
30
32
|
|
31
33
|
end
|
@@ -0,0 +1,93 @@
|
|
1
|
+
class Schema::CompanyMagicLinkSummary < Lockstep::ApiRecord
|
2
|
+
|
3
|
+
# ApiRecord will crash unless `id_ref` is defined
|
4
|
+
def self.id_ref
|
5
|
+
nil
|
6
|
+
end
|
7
|
+
|
8
|
+
# The unique id for this company
|
9
|
+
# @type: string
|
10
|
+
# @format: uuid
|
11
|
+
field :company_id
|
12
|
+
|
13
|
+
# The short name of the company.
|
14
|
+
# @type: string
|
15
|
+
field :company_name
|
16
|
+
|
17
|
+
# This field indicates the type of company. It can be one of a limited number of values:
|
18
|
+
# Company, Customer, Group, Vendor, or Third Party. A company that represents both a customer and a vendor
|
19
|
+
# is identified as a CustomerVendor.
|
20
|
+
#
|
21
|
+
# * `Company` - This record represents a company that is part of the organization of the account holder.
|
22
|
+
# * `Customer` - This record represents a business entity that purchases things from the account holder.
|
23
|
+
# * `Group` - Only one record of type `GROUP` exists in each account. Contains your account profile.
|
24
|
+
# * `Vendor` - This record represents a business entity that sells things to the account holder.
|
25
|
+
# * `Third Party` - This record represents a business entity that is neither a customer nor vendor.
|
26
|
+
# * `CustomerVendor` - Both a customer and a vendor.
|
27
|
+
# * `CompanyProfile` - Profile for a Company, each Company should have at most 1 profile, used only for Profile Management.
|
28
|
+
# @type: string
|
29
|
+
field :company_type
|
30
|
+
|
31
|
+
# The GroupKey uniquely identifies a single Lockstep Platform account. All records for this
|
32
|
+
# account will share the same GroupKey value. GroupKey values cannot be changed once created.
|
33
|
+
#
|
34
|
+
# For more information, see [Accounts and GroupKeys](https://developer.lockstep.io/docs/accounts-and-groupkeys).
|
35
|
+
# @type: string
|
36
|
+
# @format: uuid
|
37
|
+
field :group_key
|
38
|
+
|
39
|
+
# The name of the primary contact for this company
|
40
|
+
# @type: string
|
41
|
+
field :primary_contact_name
|
42
|
+
|
43
|
+
# The email of the primary contact for this company
|
44
|
+
# @type: string
|
45
|
+
field :primary_contact_email_address
|
46
|
+
|
47
|
+
# The point of contact for this company
|
48
|
+
# @type: string
|
49
|
+
field :point_of_contact
|
50
|
+
|
51
|
+
# The total outstanding amount for this company
|
52
|
+
# @type: integer
|
53
|
+
# @format: int32
|
54
|
+
field :outstanding_amount
|
55
|
+
|
56
|
+
# The total number of open invoices for this company
|
57
|
+
# @type: integer
|
58
|
+
# @format: int32
|
59
|
+
field :total_open_invoices
|
60
|
+
|
61
|
+
# The total number of invoices that are past due for this company
|
62
|
+
# @type: integer
|
63
|
+
# @format: int32
|
64
|
+
field :past_due
|
65
|
+
|
66
|
+
# Total number of visits for all magic links sent for this company
|
67
|
+
# @type: integer
|
68
|
+
# @format: int32
|
69
|
+
field :total_visits
|
70
|
+
|
71
|
+
# Total number of sent links for this company
|
72
|
+
# @type: integer
|
73
|
+
# @format: int32
|
74
|
+
field :links_sent
|
75
|
+
|
76
|
+
# Created date of the most recent magic link made for this company
|
77
|
+
# @type: string
|
78
|
+
# @format: date-time
|
79
|
+
field :latest_magic_link_date, Types::Params::DateTime
|
80
|
+
|
81
|
+
# Id of the most recent magic link made for this company
|
82
|
+
# @type: string
|
83
|
+
# @format: uuid
|
84
|
+
field :latest_magic_link_id
|
85
|
+
|
86
|
+
# Possible statuses for a Magic Link.
|
87
|
+
field :latest_magic_link_status
|
88
|
+
|
89
|
+
belongs_to :company, {:class_name=>"Lockstep::Account", :primary_key=>:company_id, :foreign_key=>"company_id"}
|
90
|
+
belongs_to :account, {:class_name=>"Lockstep::Account", :primary_key=>:company_id, :foreign_key=>"company_id"}
|
91
|
+
|
92
|
+
|
93
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
class Schema::CompanyMagicLinkSummaryFetchResult < Lockstep::ApiRecord
|
2
|
+
|
3
|
+
# ApiRecord will crash unless `id_ref` is defined
|
4
|
+
def self.id_ref
|
5
|
+
nil
|
6
|
+
end
|
7
|
+
|
8
|
+
|
9
|
+
# @type: integer
|
10
|
+
# @format: int32
|
11
|
+
field :total_count
|
12
|
+
|
13
|
+
|
14
|
+
# @type: integer
|
15
|
+
# @format: int32
|
16
|
+
field :page_size
|
17
|
+
|
18
|
+
|
19
|
+
# @type: integer
|
20
|
+
# @format: int32
|
21
|
+
field :page_number
|
22
|
+
|
23
|
+
|
24
|
+
has_many :records, {:class_name=>"Schema::CompanyMagicLinkSummary", :included=>true}
|
25
|
+
|
26
|
+
end
|
@@ -8,6 +8,11 @@ end
|
|
8
8
|
# Indicates what action to take when an existing object has been found during the sync process.
|
9
9
|
field :on_match_action
|
10
10
|
|
11
|
+
# The unique identifier of this object in the Sage Network platform.
|
12
|
+
# @type: string
|
13
|
+
# @format: uuid
|
14
|
+
field :network_id
|
15
|
+
|
11
16
|
# This is the primary key of the Company record. For this field, you should use whatever the company's unique
|
12
17
|
# identifying number is in the originating system. Search for a unique, non-changing number within the
|
13
18
|
# originating financial system for this record.
|
@@ -49,6 +54,11 @@ end
|
|
49
54
|
# @type: string
|
50
55
|
field :parent_company_erp_key
|
51
56
|
|
57
|
+
# The network id of the parent Company.
|
58
|
+
# @type: string
|
59
|
+
# @format: uuid
|
60
|
+
field :parent_company_network_id
|
61
|
+
|
52
62
|
# This flag indicates whether the company is currently active. An inactive company will be hidden from the
|
53
63
|
# user interface but will still be available for querying.
|
54
64
|
# @type: boolean
|
@@ -68,6 +78,11 @@ end
|
|
68
78
|
# @type: string
|
69
79
|
field :primary_contact_erp_key
|
70
80
|
|
81
|
+
# The network id of the primary Contact.
|
82
|
+
# @type: string
|
83
|
+
# @format: uuid
|
84
|
+
field :primary_contact_network_id
|
85
|
+
|
71
86
|
# The company's primary mailing address information
|
72
87
|
# @type: string
|
73
88
|
field :address1
|
@@ -8,6 +8,11 @@ end
|
|
8
8
|
# Indicates what action to take when an existing object has been found during the sync process.
|
9
9
|
field :on_match_action
|
10
10
|
|
11
|
+
# The unique identifier of this object in the Sage Network platform.
|
12
|
+
# @type: string
|
13
|
+
# @format: uuid
|
14
|
+
field :network_id
|
15
|
+
|
11
16
|
# This is the primary key of the Contact record. For this field, you should use whatever the contact's unique
|
12
17
|
# identifying number is in the originating system. Search for a unique, non-changing number within the
|
13
18
|
# originating financial system for this record.
|
@@ -31,6 +36,11 @@ end
|
|
31
36
|
# @type: string
|
32
37
|
field :company_erp_key
|
33
38
|
|
39
|
+
# The network id of the related Company.
|
40
|
+
# @type: string
|
41
|
+
# @format: uuid
|
42
|
+
field :company_network_id
|
43
|
+
|
34
44
|
# The name of the contact.
|
35
45
|
# @type: string
|
36
46
|
field :contact_name
|
@@ -0,0 +1,72 @@
|
|
1
|
+
class Schema::DirectoryCompany < Lockstep::ApiRecord
|
2
|
+
|
3
|
+
# ApiRecord will crash unless `id_ref` is defined
|
4
|
+
def self.id_ref
|
5
|
+
nil
|
6
|
+
end
|
7
|
+
|
8
|
+
# The field indicates the dataset type used to generate the directory company.
|
9
|
+
field :data_set
|
10
|
+
|
11
|
+
# Unique identifier of this record based on the dataset.
|
12
|
+
# <remarks>
|
13
|
+
# Examples of this would be:
|
14
|
+
# * DataSet = Siren, Identifier = string
|
15
|
+
# * DataSet = Siret, Identifier = string
|
16
|
+
# </remarks>
|
17
|
+
# @type: string
|
18
|
+
field :id
|
19
|
+
|
20
|
+
# This field indicates the type of company.
|
21
|
+
# @type: string
|
22
|
+
field :company_type
|
23
|
+
|
24
|
+
# The name of the directory company entity.
|
25
|
+
# @type: string
|
26
|
+
field :name
|
27
|
+
|
28
|
+
# Address info
|
29
|
+
# @type: string
|
30
|
+
field :address1
|
31
|
+
|
32
|
+
# Address info
|
33
|
+
# @type: string
|
34
|
+
field :address2
|
35
|
+
|
36
|
+
# Address info
|
37
|
+
# @type: string
|
38
|
+
field :address3
|
39
|
+
|
40
|
+
# Address info
|
41
|
+
# @type: string
|
42
|
+
field :city
|
43
|
+
|
44
|
+
# Address info
|
45
|
+
# @type: string
|
46
|
+
field :country
|
47
|
+
|
48
|
+
# Address info
|
49
|
+
# @type: string
|
50
|
+
field :postal_code
|
51
|
+
|
52
|
+
# Phone number
|
53
|
+
# @type: string
|
54
|
+
field :phone_number
|
55
|
+
|
56
|
+
# Email address
|
57
|
+
# @type: string
|
58
|
+
field :email_address
|
59
|
+
|
60
|
+
# The date this directory company entity was created
|
61
|
+
# @type: string
|
62
|
+
# @format: date-time
|
63
|
+
field :created_date_time, Types::Params::DateTime
|
64
|
+
|
65
|
+
# The date this directory company entity was modified
|
66
|
+
# @type: string
|
67
|
+
# @format: date-time
|
68
|
+
field :modified_date_time, Types::Params::DateTime
|
69
|
+
|
70
|
+
|
71
|
+
|
72
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
class Schema::ExternalConnector < Lockstep::ApiRecord
|
2
|
+
|
3
|
+
# ApiRecord will crash unless `id_ref` is defined
|
4
|
+
def self.id_ref
|
5
|
+
nil
|
6
|
+
end
|
7
|
+
|
8
|
+
# External Connector ID
|
9
|
+
# @type: string
|
10
|
+
field :id
|
11
|
+
|
12
|
+
# External connector name
|
13
|
+
# @type: string
|
14
|
+
field :name
|
15
|
+
|
16
|
+
# URL to start onboarding with the given external connector
|
17
|
+
# @type: string
|
18
|
+
field :onboarding_url
|
19
|
+
|
20
|
+
# Information about the external connector.
|
21
|
+
# @type: string
|
22
|
+
field :description
|
23
|
+
|
24
|
+
# Categories external connector is associated with
|
25
|
+
# @type: array
|
26
|
+
field :categories
|
27
|
+
|
28
|
+
|
29
|
+
|
30
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
class Schema::ExternalConnectorAuth < Lockstep::ApiRecord
|
2
|
+
|
3
|
+
# ApiRecord will crash unless `id_ref` is defined
|
4
|
+
def self.id_ref
|
5
|
+
nil
|
6
|
+
end
|
7
|
+
|
8
|
+
# The URL to open a browser with. This begins the user authentication process driven by a provider.
|
9
|
+
# @type: string
|
10
|
+
field :authentication_url
|
11
|
+
|
12
|
+
|
13
|
+
|
14
|
+
end
|