Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2023.40.72 updates #39

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Gemfile.lock
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
PATH
remote: .
specs:
LockstepSdk (2023.28.10.0)
LockstepSdk (2023.40.72.0)
awrence

GEM
Expand Down
4 changes: 2 additions & 2 deletions lib/lockstep_sdk/clients/applications_client.rb
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ def initialize(connection)
# See [Applications and Enrollments](https://developer.lockstep.io/docs/applications-and-enrollments) for more information.
#
# @param id [uuid] The unique ID number of the Application to retrieve
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Notes, Attachments, CustomFields
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Notes, Attachments, CustomFields, Enrollments
def retrieve_application(id:, include_param:)
path = "/api/v1/Applications/#{id}"
params = {:include => include_param}
Expand Down Expand Up @@ -91,7 +91,7 @@ def create_applications(body:)
# See [Applications and Enrollments](https://developer.lockstep.io/docs/applications-and-enrollments) for more information.
#
# @param filter [string] The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Notes, Attachments, CustomFields
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Notes, Attachments, CustomFields, Enrollments
# @param order [string] The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param page_size [int32] The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param page_number [int32] The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
Expand Down
14 changes: 14 additions & 0 deletions lib/lockstep_sdk/clients/companies_client.rb
Original file line number Diff line number Diff line change
Expand Up @@ -156,6 +156,20 @@ def query_vendor_summary(filter:, include_param:, order:, page_size:, page_numbe
@connection.request(:get, path, nil, params)
end

##
# See [Vendors, Customers, and Companies](https://developer.lockstep.io/docs/companies-customers-and-vendors) for more information.
#
# @param filter [string] The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. No collections are currently available but may be offered in the future
# @param order [string] The sort order for the results, in the [Searchlight order syntax](https://github.com/tspence/csharp-searchlight).
# @param page_size [int32] The page size for results (default 250, maximum of 500)
# @param page_number [int32] The page number for results (default 0)
def query_magic_link_summary(filter:, include_param:, order:, page_size:, page_number:)
path = "/api/v1/Companies/views/magic-link-summary"
params = {:filter => filter, :include => include_param, :order => order, :pageSize => page_size, :pageNumber => page_number}
@connection.request(:get, path, nil, params)
end

##
# Retrieves the Company Details specified by this unique identifier, optionally including nested data sets.
#
Expand Down
4 changes: 4 additions & 0 deletions lib/lockstep_sdk/clients/definitions_client.rb
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ def initialize(connection)
# More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the Lockstep Developer website.
#
# Your program may want to show a list of countries. The ISO maintains a list of countries called [ISO3166](https://www.iso.org/iso-3166-country-codes.html). For convenience, this list is available in the API.
#
# @param filter [string] The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. No collections are currently available, but may be offered in the future.
# @param order [string] The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
Expand All @@ -47,6 +48,7 @@ def query_countries(filter:, include_param:, order:, page_size:, page_number:)
# More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the Lockstep Developer website.
#
# Your app may wish to make use of a reference list that contains names and attributes for all ISO-4217 defined currency codes. This information is provided via a query endpoint so that you can use this API to provide a user selection screen.
#
# @param filter [string] The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. No collections are currently available, but may be offered in the future.
# @param order [string] The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
Expand All @@ -64,6 +66,7 @@ def query_currencies(filter:, include_param:, order:, page_size:, page_number:)
# More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the Lockstep Developer website.
#
# Your app may wish to make use of a reference list that contains names and codes for all states in the United States. This information is provided for the United States since many financial systems require mailing addresses that use codes for states.
#
# @param filter [string] The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. No collections are currently available, but may be offered in the future.
# @param order [string] The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
Expand All @@ -81,6 +84,7 @@ def query_states(filter:, include_param:, order:, page_size:, page_number:)
# More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the Lockstep Developer website.
#
# Lockstep provides a list of financial systems that may be useful as a selection screen that allows customers to select from a list. You can query these items by name or attributes and use this data source to help users complete a selection.
#
# @param filter [string] The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. No collections are currently available, but may be offered in the future.
# @param order [string] The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
Expand Down
43 changes: 37 additions & 6 deletions lib/lockstep_sdk/clients/invoices_client.rb
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ def initialize(connection)
# An Invoice represents a bill sent from one company to another. The creator of the invoice is identified by the `CompanyId` field, and the recipient of the invoice is identified by the `CustomerId` field. Most invoices are uniquely identified both by a Lockstep Platform ID number and a customer ERP "key" that was generated by the system that originated the invoice. Invoices have a total amount and a due date, and when some payments have been made on the Invoice the `TotalAmount` and the `OutstandingBalanceAmount` may be different.
#
# @param id [uuid] The unique Lockstep Platform ID number of this invoice; NOT the customer's ERP key
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Addresses, Lines, Payments, Notes, Attachments, Company, Customer, CustomFields, CreditMemos
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Addresses, Lines, Payments, Notes, Attachments, Company, Customer, CustomFields, CreditMemos, WorkflowStatuses
def retrieve_invoice(id:, include_param:)
path = "/api/v1/Invoices/#{id}"
params = {:include => include_param}
Expand Down Expand Up @@ -60,15 +60,29 @@ def delete_invoice(id:)
@connection.request(:delete, path, nil, nil)
end

##
# Retrieves the Invoice Workflow Status Histories specified by the unique identifier of the Invoice.
#
# An Invoice Workflow Status History represents a prior Workflow Status that was assigned to an Invoice.
#
# @param id [uuid] The unique Accounting Data Service Platform ID number of the Invoice.
def retrieve_invoice_workflow_status_histories(id:)
path = "/api/v1/Invoices/#{id}/workflow-status-history"
@connection.request(:get, path, nil, nil)
end

##
# Creates one or more Invoices within this account and returns the records as created.
#
# An Invoice represents a bill sent from one company to another. The creator of the invoice is identified by the `CompanyId` field, and the recipient of the invoice is identified by the `CustomerId` field. Most invoices are uniquely identified both by a Lockstep Platform ID number and a customer ERP "key" that was generated by the system that originated the invoice. Invoices have a total amount and a due date, and when some payments have been made on the Invoice the `TotalAmount` and the `OutstandingBalanceAmount` may be different.
#
# @param body [InvoiceModel] The Invoices to create
def create_invoices(body:)
# @param customer_company_id [uuid] The ID of the customer company. Only to be used with the UBL file upload multipart/form-data option.
# @param filename [File] The full path of a file to upload to the API
# @param body [InvoiceModel] Upload a UBL file or provide an InvoiceModel array
def create_invoices(customer_company_id:, filename:, body:)
path = "/api/v1/Invoices"
@connection.request(:post, path, body, nil)
params = {:customerCompanyId => customer_company_id}
@connection.request(:post, path, body, params)
end

##
Expand All @@ -90,7 +104,7 @@ def delete_invoices(body:)
# An Invoice represents a bill sent from one company to another. The creator of the invoice is identified by the `CompanyId` field, and the recipient of the invoice is identified by the `CustomerId` field. Most invoices are uniquely identified both by a Lockstep Platform ID number and a customer ERP "key" that was generated by the system that originated the invoice. Invoices have a total amount and a due date, and when some payments have been made on the Invoice the `TotalAmount` and the `OutstandingBalanceAmount` may be different.
#
# @param filter [string] The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Addresses, Lines, Payments, Notes, Attachments, Company, Customer, CustomFields, CreditMemos
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Addresses, Lines, Payments, Notes, Attachments, Company, Customer, CustomFields, CreditMemos, WorkflowStatuses
# @param order [string] The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param page_size [int32] The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param page_number [int32] The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
Expand All @@ -109,14 +123,31 @@ def query_invoices(filter:, include_param:, order:, page_size:, page_number:)
#
# Xero supports AR Invoices, AP Invoices, AR Credit Memos, and AP Credit Memos.
#
# Sage 50 supports AR Invoices and AR Credit Memos.
# For other ERPs, the supported types will depend on the synced data.
#
# @param id [uuid] The unique Lockstep Platform ID number of this invoice; NOT the customer's ERP key
def retrieve_invoice_pdf(id:)
path = "/api/v1/Invoices/#{id}/pdf"
@connection.request(:get, path, nil, nil)
end

##
# Checks for whether a PDF file for this invoice exists if it is of one of the supported invoice types and has been synced using an app enrollment to one of the supported apps.
#
# Sage Intacct supports AR Invoices.
#
# QuickBooks Online supports AR Invoices, and AR Credit Memos.
#
# Xero supports AR Invoices, AP Invoices, AR Credit Memos, and AP Credit Memos.
#
# For other ERPs, the supported types will depend on the synced data.
#
# @param id [uuid] The unique Lockstep Platform ID number of this invoice; NOT the customer's ERP key
def check_invoice_pdf(id:)
path = "/api/v1/Invoices/#{id}/pdf"
@connection.request(:head, path, nil, nil)
end

##
# Queries Invoices for this account using the specified filtering, sorting, nested fetch, and pagination rules requested. Display the results using the Invoice Summary View format.
#
Expand Down
62 changes: 62 additions & 0 deletions lib/lockstep_sdk/clients/journal_entries_client.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
#
# Lockstep Platform SDK for Ruby
#
# (c) 2021-2023 Lockstep, Inc.
#
# For the full copyright and license information, please view the LICENSE
# file that was distributed with this source code.
#
# @author Lockstep Network <[email protected]>
# @copyright 2021-2023 Lockstep, Inc.
# @link https://github.com/Lockstep-Network/lockstep-sdk-ruby
#


require 'awrence'

class JournalEntriesClient

##
# Initialize the JournalEntriesClient class with an API client instance.
# @param connection [LockstepApi] The API client object for this connection
def initialize(connection)
@connection = connection
end


##
# Retrieves the Journal Entry specified by this unique identifier, optionally including nested data sets.
#
# @param id [uuid] The unique Lockstep Platform ID number of this journal entry; NOT the customer's ERP key
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Lines, Attachments
def retrieve_journal_entry(id:, include_param:)
path = "/api/v1/journal-entries/#{id}"
params = {:include => include_param}
@connection.request(:get, path, nil, params)
end

##
# Creates one or more Journal Entries within this account and returns the records as created.
#
# @param body [JournalEntryModel] The Journal Entries to create
def create_journal_entries(body:)
path = "/api/v1/journal-entries"
@connection.request(:post, path, body, nil)
end

##
# Queries Journal Entries for this account using the specified filtering, sorting, nested fetch, and pagination rules requested.
#
# More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the Lockstep Developer website.
#
# @param filter [string] The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Lines, Attachments
# @param order [string] The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param page_size [int32] The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param page_number [int32] The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
def query_journal_entries(filter:, include_param:, order:, page_size:, page_number:)
path = "/api/v1/journal-entries/query"
params = {:filter => filter, :include => include_param, :order => order, :pageSize => page_size, :pageNumber => page_number}
@connection.request(:get, path, nil, params)
end
end
53 changes: 53 additions & 0 deletions lib/lockstep_sdk/clients/journal_entry_lines_client.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
#
# Lockstep Platform SDK for Ruby
#
# (c) 2021-2023 Lockstep, Inc.
#
# For the full copyright and license information, please view the LICENSE
# file that was distributed with this source code.
#
# @author Lockstep Network <[email protected]>
# @copyright 2021-2023 Lockstep, Inc.
# @link https://github.com/Lockstep-Network/lockstep-sdk-ruby
#


require 'awrence'

class JournalEntryLinesClient

##
# Initialize the JournalEntryLinesClient class with an API client instance.
# @param connection [LockstepApi] The API client object for this connection
def initialize(connection)
@connection = connection
end


##
# Retrieves the Journal Entry Line specified by this unique identifier, optionally including nested data sets.
#
# @param id [uuid] The unique Sage Network Platform ID number of this journal entry line; NOT the customer's ERP key
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. Available collections: JournalEntry
def retrieve_journal_entry_line(id:, include_param:)
path = "/api/v1/journal-entry-lines/#{id}"
params = {:include => include_param}
@connection.request(:get, path, nil, params)
end

##
# Queries Journal Entry Lines for this account using the specified filtering, sorting, nested fetch, and pagination rules requested.
#
# More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the Lockstep Developer website.
#
# @param filter [string] The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param include_param [string] To fetch additional data on this object, specify the list of elements to retrieve. Available collections: JournalEntry
# @param order [string] The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param page_size [int32] The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
# @param page_number [int32] The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
def query_journal_entry_lines(filter:, include_param:, order:, page_size:, page_number:)
path = "/api/v1/journal-entry-lines/query"
params = {:filter => filter, :include => include_param, :order => order, :pageSize => page_size, :pageNumber => page_number}
@connection.request(:get, path, nil, params)
end
end
Loading
Loading