lockstep_rails 0.3.68 → 0.3.70
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.
- 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
|