diff --git a/.github/workflows/Nuget-publish.yml b/.github/workflows/Nuget-publish.yml index 40d6413..a181de6 100644 --- a/.github/workflows/Nuget-publish.yml +++ b/.github/workflows/Nuget-publish.yml @@ -18,22 +18,23 @@ jobs: uses: actions/checkout@v1 - name: Setup .NET Core @ Latest - uses: actions/setup-dotnet@v1 + uses: actions/setup-dotnet@v4 with: dotnet-version: "6.0.x" - include-prerelease: false - name: Build solution and generate NuGet package run: dotnet build -c Release - - name: Setup Nuget - uses: nuget/setup-nuget@v1 - with: - nuget-api-key: ${{ secrets.NUGET_API_KEY }} - nuget-version: "5.x" - - name: Run Nuget pack - run: nuget pack LockstepApi.nuspec + run: dotnet pack -c Release --output artifacts + + - name: Upload Nuget package as artifact + uses: actions/upload-artifact@v4 + with: + name: nuget + if-no-files-found: error + retention-days: 7 + path: 'artifacts/*.nupkg' - name: Push generated package to GitHub registry if: github.ref == 'refs/heads/main' && github.event_name == 'push' diff --git a/LockstepApi.nuspec b/LockstepApi.nuspec index c2e7587..b7758fc 100644 --- a/LockstepApi.nuspec +++ b/LockstepApi.nuspec @@ -2,7 +2,7 @@ LockstepSdk - 2023.35.16 + 2025.8.6 LockstepSdk Lockstep Network Lockstep, Inc. @@ -14,11 +14,11 @@ docs/README.md Lockstep Platform SDK for CSharp - # 2023.35.16 + # 2025.8.6 For full patch notes see [Patch Notes](https://medium.com/lockstep-developer/tagged/patch-notes) on the [Lockstep Developer website](https://developer.lockstep.io) - Copyright 2021 - 2023 + Copyright 2021 - 2025 Lockstep fintech api client sdk connector diff --git a/src/Clients/AttachmentLinksClient.cs b/src/Clients/AttachmentLinksClient.cs deleted file mode 100644 index 00d29c1..0000000 --- a/src/Clients/AttachmentLinksClient.cs +++ /dev/null @@ -1,124 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -using System; -using System.Collections.Generic; -using System.Net.Http; -using System.Threading.Tasks; -using LockstepSDK.Models; - - -namespace LockstepSDK.Clients -{ - /// - /// API methods related to AttachmentLinks - /// - public class AttachmentLinksClient - { - private readonly LockstepApi _client; - - /// - /// Constructor - /// - public AttachmentLinksClient(LockstepApi client) - { - _client = client; - } - - /// - /// Retrieves the Attachment Link with the provided Attachment Link identifier. - /// - /// An Attachment Link is a link that associates one Attachment with one object within Lockstep. - /// - /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. - /// - /// - /// - /// - /// - public async Task> RetrieveAttachmentLink(Guid attachmentId, Guid objectKey, string tableName) - { - var url = $"/api/v1/AttachmentLinks"; - var options = new Dictionary(); - options["attachmentId"] = attachmentId; - options["objectKey"] = objectKey; - options["tableName"] = tableName; - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Creates one Attachment Link from the provided arguments. - /// - /// An Attachment Link is a link that associates one Attachment with one object within Lockstep. - /// - /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. - /// - /// - /// - public async Task> UploadAttachment(AttachmentLinkModel[] body) - { - var url = $"/api/v1/AttachmentLinks"; - return await _client.Request(HttpMethod.Post, url, null, body, null); - } - - /// - /// Delete the specified link between an object and its attachment. - /// - /// An Attachment Link is a link that associates one Attachment with one object within Lockstep. - /// - /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. - /// - /// - /// - /// - /// - public async Task> DeleteAttachmentLink(Guid? attachmentId = null, Guid? objectKey = null, string tableName = null) - { - var url = $"/api/v1/AttachmentLinks"; - var options = new Dictionary(); - if (attachmentId != null) { options["attachmentId"] = attachmentId; } - if (objectKey != null) { options["objectKey"] = objectKey; } - if (tableName != null) { options["tableName"] = tableName; } - return await _client.Request(HttpMethod.Delete, url, options, null, null); - } - - /// - /// Queries Attachment Links 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. - /// - /// An Attachment Link is a link that associates one Attachment with one object within Lockstep. - /// - /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. - /// - /// - /// The filter to use to select from the list of available Attachments, in the [Searchlight query syntax](https://github.com/tspence/csharp-searchlight). - /// To fetch additional data on this object, specify the list of elements to retrieve. No collections are currently available for querying but may be available in the future. - /// The sort order for the results, in the [Searchlight order syntax](https://github.com/tspence/csharp-searchlight). - /// The page size for results (default 250, maximum of 500) - /// The page number for results (default 0) - public async Task>> QueryAttachmentLinks(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) - { - var url = $"/api/v1/AttachmentLinks/query"; - var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); - } - } -} diff --git a/src/Clients/CreditMemosAppliedClient.cs b/src/Clients/CreditMemosAppliedClient.cs index 722e079..d557c2b 100644 --- a/src/Clients/CreditMemosAppliedClient.cs +++ b/src/Clients/CreditMemosAppliedClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -40,10 +40,10 @@ public CreditMemosAppliedClient(LockstepApi client) /// /// Retrieves the Credit Memo Applied specified by this unique identifier, optionally including nested data sets. /// - /// Credit Memos reflect credits granted to a customer for various reasons, such as discounts or refunds. Credit Memos may be applied to Invoices as Payments. When a Credit Memo is applied as payment to an Invoice, Lockstep creates a Credit Memo Applied record to track the amount from the Credit Memo that was applied as payment to the Invoice. You can examine Credit Memo Applied records to track which Invoices were paid using this Credit. + /// Credit Memos reflect credits granted to a customer for various reasons, such as discounts or refunds. Credit Memos may be applied to Invoices as Payments. When a Credit Memo is applied as payment to an Invoice, ADS Platform creates a Credit Memo Applied record to track the amount from the Credit Memo that was applied as payment to the Invoice. You can examine Credit Memo Applied records to track which Invoices were paid using this Credit. /// /// - /// The unique Lockstep Platform ID number of this Credit Memo Applied; NOT the customer's ERP key + /// The unique ADS Platform ID number of this Credit Memo Applied; NOT the customer's ERP key /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Attachments, CustomFields, Notes, Invoice, CreditMemoInvoice public async Task> RetrieveCreditMemoApplied(Guid id, string include = null) { @@ -58,10 +58,10 @@ public async Task> RetrieveCreditMemoAp /// /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired. /// - /// Credit Memos reflect credits granted to a customer for various reasons, such as discounts or refunds. Credit Memos may be applied to Invoices as Payments. When a Credit Memo is applied as payment to an Invoice, Lockstep creates a Credit Memo Applied record to track the amount from the Credit Memo that was applied as payment to the Invoice. You can examine Credit Memo Applied records to track which Invoices were paid using this Credit. + /// Credit Memos reflect credits granted to a customer for various reasons, such as discounts or refunds. Credit Memos may be applied to Invoices as Payments. When a Credit Memo is applied as payment to an Invoice, ADS Platform creates a Credit Memo Applied record to track the amount from the Credit Memo that was applied as payment to the Invoice. You can examine Credit Memo Applied records to track which Invoices were paid using this Credit. /// /// - /// The unique Lockstep Platform ID number of the Credit Memo Applied to update; NOT the customer's ERP key + /// The unique ADS Platform ID number of the Credit Memo Applied to update; NOT the customer's ERP key /// A list of changes to apply to this Credit Memo Applied public async Task> UpdateCreditMemosApplied(Guid id, object body) { @@ -72,10 +72,10 @@ public async Task> UpdateCreditMemosApp /// /// Deletes the Credit Memo Applied referred to by this unique identifier. /// - /// Credit Memos reflect credits granted to a customer for various reasons, such as discounts or refunds. Credit Memos may be applied to Invoices as Payments. When a Credit Memo is applied as payment to an Invoice, Lockstep creates a Credit Memo Applied record to track the amount from the Credit Memo that was applied as payment to the Invoice. You can examine Credit Memo Applied records to track which Invoices were paid using this Credit. + /// Credit Memos reflect credits granted to a customer for various reasons, such as discounts or refunds. Credit Memos may be applied to Invoices as Payments. When a Credit Memo is applied as payment to an Invoice, ADS Platform creates a Credit Memo Applied record to track the amount from the Credit Memo that was applied as payment to the Invoice. You can examine Credit Memo Applied records to track which Invoices were paid using this Credit. /// /// - /// The unique Lockstep Platform ID number of the Credit Memo Applied to delete; NOT the customer's ERP key + /// The unique ADS Platform ID number of the Credit Memo Applied to delete; NOT the customer's ERP key public async Task> DeleteCreditMemoApplied(Guid id) { var url = $"/api/v1/credit-memos-applied/{id}"; @@ -85,7 +85,7 @@ public async Task> DeleteCreditMemoApplied(G /// /// Creates one or more Credit Memos Applied within this account and returns the records as created. /// - /// Credit Memos reflect credits granted to a customer for various reasons, such as discounts or refunds. Credit Memos may be applied to Invoices as Payments. When a Credit Memo is applied as payment to an Invoice, Lockstep creates a Credit Memo Applied record to track the amount from the Credit Memo that was applied as payment to the Invoice. You can examine Credit Memo Applied records to track which Invoices were paid using this Credit. + /// Credit Memos reflect credits granted to a customer for various reasons, such as discounts or refunds. Credit Memos may be applied to Invoices as Payments. When a Credit Memo is applied as payment to an Invoice, ADS Platform creates a Credit Memo Applied record to track the amount from the Credit Memo that was applied as payment to the Invoice. You can examine Credit Memo Applied records to track which Invoices were paid using this Credit. /// /// /// The Credit Memos Applied to create @@ -98,9 +98,9 @@ public async Task> CreateCreditMemosA /// /// Queries Credit Memos Applied 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// - /// Credit Memos reflect credits granted to a customer for various reasons, such as discounts or refunds. Credit Memos may be applied to Invoices as Payments. When a Credit Memo is applied as payment to an Invoice, Lockstep creates a Credit Memo Applied record to track the amount from the Credit Memo that was applied as payment to the Invoice. You can examine Credit Memo Applied records to track which Invoices were paid using this Credit. + /// Credit Memos reflect credits granted to a customer for various reasons, such as discounts or refunds. Credit Memos may be applied to Invoices as Payments. When a Credit Memo is applied as payment to an Invoice, ADS Platform creates a Credit Memo Applied record to track the amount from the Credit Memo that was applied as payment to the Invoice. You can examine Credit Memo Applied records to track which Invoices were paid using this Credit. /// /// /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) diff --git a/src/Clients/FeatureFlagsClient.cs b/src/Clients/FeatureFlagsClient.cs deleted file mode 100644 index 55a7bff..0000000 --- a/src/Clients/FeatureFlagsClient.cs +++ /dev/null @@ -1,51 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -using System; -using System.Collections.Generic; -using System.Net.Http; -using System.Threading.Tasks; -using LockstepSDK.Models; - - -namespace LockstepSDK.Clients -{ - /// - /// API methods related to FeatureFlags - /// - public class FeatureFlagsClient - { - private readonly LockstepApi _client; - - /// - /// Constructor - /// - public FeatureFlagsClient(LockstepApi client) - { - _client = client; - } - - /// - /// Retrieves the specified feature flags. True if they are enabled, false otherwise. - /// - /// - /// - public async Task> RetrieveFeatureFlags(FeatureFlagsRequestModel body) - { - var url = $"/api/v1/feature-flags"; - return await _client.Request(HttpMethod.Post, url, null, body, null); - } - } -} diff --git a/src/Clients/InvoiceAddressesClient.cs b/src/Clients/InvoiceAddressesClient.cs index 761f4f7..8cfea9f 100644 --- a/src/Clients/InvoiceAddressesClient.cs +++ b/src/Clients/InvoiceAddressesClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -98,7 +98,7 @@ public async Task> CreateInvoiceAddress( /// /// Queries Invoice Addresses 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// /// /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) diff --git a/src/Clients/InvoiceLinesClient.cs b/src/Clients/InvoiceLinesClient.cs index 8868842..12ce59d 100644 --- a/src/Clients/InvoiceLinesClient.cs +++ b/src/Clients/InvoiceLinesClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -52,7 +52,7 @@ public async Task> CreateInvoiceLine(Invoic /// /// /// - /// The unique Lockstep Platform ID numbers of the Invoice Lines to delete; NOT the customer's ERP keys + /// The unique ADS Platform ID numbers of the Invoice Lines to delete; NOT the customer's ERP keys public async Task> DeleteInvoiceLines(BulkDeleteRequestModel body) { var url = $"/api/v1/invoice-lines"; @@ -96,7 +96,7 @@ public async Task> DeletesInvoiceLine(Guid invoic } /// - /// Queries Invoice Lines for the account using specified filtering 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. + /// Queries Invoice Lines for the account using specified filtering More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// /// /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) diff --git a/src/Clients/MagicLinksClient.cs b/src/Clients/MagicLinksClient.cs index f13c01b..e87f125 100644 --- a/src/Clients/MagicLinksClient.cs +++ b/src/Clients/MagicLinksClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -42,7 +42,7 @@ public MagicLinksClient(LockstepApi client) /// /// /// The id of the Magic Link - /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: User + /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: User, CustomFields, Notes public async Task> RetrieveMagicLink(Guid id, string include = null) { var url = $"/api/v1/useraccounts/magic-links/{id}"; @@ -57,19 +57,32 @@ public async Task> RetrieveMagicLink(Guid id, s /// Revocation will be received by all servers within five minutes of revocation. API calls made using this magic link after the revocation will fail. A revoked magic link cannot be un-revoked. /// /// - /// The unique Lockstep Platform ID number of this magic link + /// The unique ADS Platform ID number of this magic link public async Task> RevokeMagicLink(Guid id) { var url = $"/api/v1/useraccounts/magic-links/{id}"; return await _client.Request(HttpMethod.Delete, url, null, null, null); } + /// + /// Revokes the bounced magic link with the specified id so it cannot be used to call the API. + /// + /// Revocation will be received by all servers within five minutes of revocation. API calls made using this magic link after the revocation will fail. A revoked magic link cannot be un-revoked. + /// + /// + /// The unique ADS Platform ID number of this magic link + public async Task> RevokeBouncedMagicLink(Guid id) + { + var url = $"/api/v1/useraccounts/magic-links/{id}/bounced"; + return await _client.Request(HttpMethod.Delete, url, null, null, null); + } + /// /// Queries Magic Links for this account using the specified filtering, sorting, nested fetch, and pagination rules requested. /// /// /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: User + /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: User, CustomFields, Notes /// The sort order for the results, in the [Searchlight order syntax](https://github.com/tspence/csharp-searchlight). /// The page size for results (default 250, maximum of 500) /// The page number for results (default 0) diff --git a/src/Clients/PaymentsAppliedClient.cs b/src/Clients/PaymentsAppliedClient.cs index 6bb5e96..1c7640d 100644 --- a/src/Clients/PaymentsAppliedClient.cs +++ b/src/Clients/PaymentsAppliedClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -42,9 +42,11 @@ public PaymentsAppliedClient(LockstepApi client) /// /// A Payment Applied is created by a business who receives a Payment from a customer. A customer may make a single Payment to match an Invoice exactly, a partial Payment for an Invoice, or a single Payment may be made for multiple smaller Invoices. The Payment Applied contains information about which Invoices are connected to which Payments and for which amounts. /// + /// A Payment Applied can also be used to add funds to a Payment by way of a refund Payment. In this scenario the Payment Applied contains information about which Payment is being funded and which refund Payment supplied the funds. + /// /// - /// The unique Lockstep Platform ID number of this Payment Applied; NOT the customer's ERP key - /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Invoice, Payment + /// The unique ADS Platform ID number of this Payment Applied; NOT the customer's ERP key + /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Invoice, Payment, Refund public async Task> RetrievePaymentApplied(Guid id, string include = null) { var url = $"/api/v1/payments-applied/{id}"; @@ -60,8 +62,10 @@ public async Task> RetrievePaymentApplied( /// /// A Payment Applied is created by a business who receives a Payment from a customer. A customer may make a single Payment to match an Invoice exactly, a partial Payment for an Invoice, or a single Payment may be made for multiple smaller Invoices. The Payment Applied contains information about which Invoices are connected to which Payments and for which amounts. /// + /// A Payment Applied can also be used to add funds to a Payment by way of a refund Payment. In this scenario the Payment Applied contains information about which Payment is being funded and which refund Payment supplied the funds. + /// /// - /// The unique Lockstep Platform ID number of the Payment Applied to update; NOT the customer's ERP key + /// The unique ADS Platform ID number of the Payment Applied to update; NOT the customer's ERP key /// A list of changes to apply to this Payment Applied public async Task> UpdatePaymentApplied(Guid id, object body) { @@ -74,8 +78,10 @@ public async Task> UpdatePaymentApplied(Gu /// /// A Payment Applied is created by a business who receives a Payment from a customer. A customer may make a single Payment to match an Invoice exactly, a partial Payment for an Invoice, or a single Payment may be made for multiple smaller Invoices. The Payment Applied contains information about which Invoices are connected to which Payments and for which amounts. /// + /// A Payment Applied can also be used to add funds to a Payment by way of a refund Payment. In this scenario the Payment Applied contains information about which Payment is being funded and which refund Payment supplied the funds. + /// /// - /// The unique Lockstep Platform ID number of the Payment Applied to delete; NOT the customer's ERP key + /// The unique ADS Platform ID number of the Payment Applied to delete; NOT the customer's ERP key public async Task> DeletePaymentApplied(Guid id) { var url = $"/api/v1/payments-applied/{id}"; @@ -87,6 +93,8 @@ public async Task> DeletePaymentApplied(Guid /// /// A Payment Applied is created by a business who receives a Payment from a customer. A customer may make a single Payment to match an Invoice exactly, a partial Payment for an Invoice, or a single Payment may be made for multiple smaller Invoices. The Payment Applied contains information about which Invoices are connected to which Payments and for which amounts. /// + /// A Payment Applied can also be used to add funds to a Payment by way of a refund Payment. In this scenario the Payment Applied contains information about which Payment is being funded and which refund Payment supplied the funds. + /// /// /// The Payments Applied to create public async Task> CreatePaymentsApplied(PaymentAppliedModel[] body) @@ -98,13 +106,15 @@ public async Task> CreatePaymentsApplied /// /// Queries Payments Applied 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// /// A Payment Applied is created by a business who receives a Payment from a customer. A customer may make a single Payment to match an Invoice exactly, a partial Payment for an Invoice, or a single Payment may be made for multiple smaller Invoices. The Payment Applied contains information about which Invoices are connected to which Payments and for which amounts. /// + /// A Payment Applied can also be used to add funds to a Payment by way of a refund Payment. In this scenario the Payment Applied contains information about which Payment is being funded and which refund Payment supplied the funds. + /// /// /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Invoice + /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Invoice, Payment, Refund /// The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) diff --git a/src/Clients/ProfilesAccountingClient.cs b/src/Clients/ProfilesAccountingClient.cs deleted file mode 100644 index 1e0520a..0000000 --- a/src/Clients/ProfilesAccountingClient.cs +++ /dev/null @@ -1,123 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -using System; -using System.Collections.Generic; -using System.Net.Http; -using System.Threading.Tasks; -using LockstepSDK.Models; - - -namespace LockstepSDK.Clients -{ - /// - /// API methods related to ProfilesAccounting - /// - public class ProfilesAccountingClient - { - private readonly LockstepApi _client; - - /// - /// Constructor - /// - public ProfilesAccountingClient(LockstepApi client) - { - _client = client; - } - - /// - /// Retrieves the Accounting Profile specified by this unique identifier, optionally including nested data sets. - /// - /// An Accounting Profile is a child of a Company Profile, and collectively, they comprise the identity and necessary information for an accounting team to work with trading partners, financial institutions, auditors, and others. You can use Accounting Profiles to define an accounting function by what the function does and how to interface with the function. - /// - /// - /// The unique Lockstep Platform ID number of this Accounting Profile - /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Attachments, CustomFields, Notes - public async Task> RetrieveAccountingProfile(Guid id, string include = null) - { - var url = $"/api/v1/profiles/accounting/{id}"; - var options = new Dictionary(); - if (include != null) { options["include"] = include; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Updates an accounting profile that matches the specified id with the requested information. - /// - /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired. - /// - /// An Accounting Profile is a child of a Company Profile, and collectively, they comprise the identity and necessary information for an accounting team to work with trading partners, financial institutions, auditors, and others. You can use Accounting Profiles to define an accounting function by what the function does and how to interface with the function. - /// - /// - /// The unique Lockstep Platform ID number of the Accounting Profile to update - /// A list of changes to apply to this Accounting Profile - public async Task> UpdateAccountingProfile(Guid id, object body) - { - var url = $"/api/v1/profiles/accounting/{id}"; - return await _client.Request(new HttpMethod("PATCH"), url, null, body, null); - } - - /// - /// Delete the Accounting Profile referred to by this unique identifier. - /// - /// An Accounting Profile is a child of a Company Profile, and collectively, they comprise the identity and necessary information for an accounting team to work with trading partners, financial institutions, auditors, and others. You can use Accounting Profiles to define an accounting function by what the function does and how to interface with the function. - /// - /// - /// The unique Lockstep Platform ID number of the Accounting Profile to disable - public async Task> DeleteAccountingProfile(Guid id) - { - var url = $"/api/v1/profiles/accounting/{id}"; - return await _client.Request(HttpMethod.Delete, url, null, null, null); - } - - /// - /// Creates one or more accounting profiles from a given model. - /// - /// An Accounting Profile is a child of a Company Profile, and collectively, they comprise the identity and necessary information for an accounting team to work with trading partners, financial institutions, auditors, and others. You can use Accounting Profiles to define an accounting function by what the function does and how to interface with the function. - /// - /// - /// The Accounting Profiles to create - public async Task> CreateAccountingProfiles(AccountingProfileRequest[] body) - { - var url = $"/api/v1/profiles/accounting"; - return await _client.Request(HttpMethod.Post, url, null, body, null); - } - - /// - /// Queries Accounting Profiles 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. - /// - /// An Accounting Profile is a child of a Company Profile, and collectively, they comprise the identity and necessary information for an accounting team to work with trading partners, financial institutions, auditors, and others. You can use Accounting Profiles to define an accounting function by what the function does and how to interface with the function. - /// - /// - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Attachments, CustomFields, Notes - /// The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - public async Task>> QueryAccountingProfiles(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) - { - var url = $"/api/v1/profiles/accounting/query"; - var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); - } - } -} diff --git a/src/Clients/ProfilesAccountingContactsClient.cs b/src/Clients/ProfilesAccountingContactsClient.cs deleted file mode 100644 index 0edb5e3..0000000 --- a/src/Clients/ProfilesAccountingContactsClient.cs +++ /dev/null @@ -1,144 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -using System; -using System.Collections.Generic; -using System.Net.Http; -using System.Threading.Tasks; -using LockstepSDK.Models; - - -namespace LockstepSDK.Clients -{ - /// - /// API methods related to ProfilesAccountingContacts - /// - public class ProfilesAccountingContactsClient - { - private readonly LockstepApi _client; - - /// - /// Constructor - /// - public ProfilesAccountingContactsClient(LockstepApi client) - { - _client = client; - } - - /// - /// Retrieves the Accounting Profile Contact specified by this unique identifier, optionally including nested data sets. - /// - /// A Contact has a link to a Contact that is associated with your company's Accounting Profile. A profile has one primary contact and any number of secondary contacts. - /// - /// - /// The unique Lockstep Platform ID number of this Accounting Profile Contact - public async Task> RetrieveAccountingProfileContact(Guid id) - { - var url = $"/api/v1/profiles/accounting/contacts/{id}"; - return await _client.Request(HttpMethod.Get, url, null, null, null); - } - - /// - /// Delete the Accounting Profile Contact referred to by this unique identifier. - /// - /// An Accounting Profile Contact has a link to a Contact that is associated with your company's Accounting Profile. A profile has one primary contact and any number of secondary contacts. - /// - /// - /// The unique Lockstep Platform ID number of the Accounting Profile Contact to delete - public async Task> DeleteAccountingProfileContact(Guid id) - { - var url = $"/api/v1/profiles/accounting/contacts/{id}"; - return await _client.Request(HttpMethod.Delete, url, null, null, null); - } - - /// - /// Creates one or more Accounting Profile Contacts from a given model. - /// - /// An Accounting Profile Contact has a link to a Contact that is associated with your company's Accounting Profile. A profile has one primary contact and any number of secondary contacts. - /// - /// - /// The Accounting Profile Contacts to create - public async Task> CreateAccountingProfileContacts(AccountingProfileContactModel[] body) - { - var url = $"/api/v1/profiles/accounting/contacts"; - return await _client.Request(HttpMethod.Post, url, null, body, null); - } - - /// - /// Queries Accounting Profile Contacts 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. - /// - /// An Accounting Profile Contact has a link to a Contact that is associated with your company's Accounting Profile. A profile has one primary contact and any number of secondary contacts. - /// - /// - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: None - /// The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - public async Task>> QueryAccountingProfileContacts(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) - { - var url = $"/api/v1/profiles/accounting/contacts/query"; - var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); - } - - /// - /// Queries Accounting Profile Contacts and Contacts 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. - /// - /// An Accounting Profile Contact has a link to a Contact that is associated with your company's Accounting Profile. A profile has one primary contact and any number of secondary contacts. - /// - /// A Contact contains information about a person or role within a Company. You can use Contacts to track information about who is responsible for a specific project, who handles invoices, or information about which role at a particular customer or vendor you should speak with about invoices. - /// - /// - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: None - /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - public async Task>> QueryLinkedAccountingProfileContacts(string filter = null, string order = null, string include = null, int? pageSize = null, int? pageNumber = null) - { - var url = $"/api/v1/profiles/accounting/contacts/query/models"; - var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (order != null) { options["order"] = order; } - if (include != null) { options["include"] = include; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); - } - - /// - /// Reverses the isPrimary fields on the primary and secondary contact to reflect a swap and returns the new primary accounting profile contact model. - /// - /// An Accounting Profile Contact has a link to a Contact that is associated with your company's Accounting Profile. A profile has one primary contact and any number of secondary contacts. - /// - /// - /// The unique Lockstep Platform ID number of the Accounting Profile Contact to set as primary - public async Task> SetSecondaryContactasPrimary(Guid id) - { - var url = $"/api/v1/profiles/accounting/contacts/{id}/primary"; - return await _client.Request(new HttpMethod("PATCH"), url, null, null, null); - } - } -} diff --git a/src/Clients/ProfilesCompaniesClient.cs b/src/Clients/ProfilesCompaniesClient.cs deleted file mode 100644 index dba3682..0000000 --- a/src/Clients/ProfilesCompaniesClient.cs +++ /dev/null @@ -1,76 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -using System; -using System.Collections.Generic; -using System.Net.Http; -using System.Threading.Tasks; -using LockstepSDK.Models; - - -namespace LockstepSDK.Clients -{ - /// - /// API methods related to ProfilesCompanies - /// - public class ProfilesCompaniesClient - { - private readonly LockstepApi _client; - - /// - /// Constructor - /// - public ProfilesCompaniesClient(LockstepApi client) - { - _client = client; - } - - /// - /// Retrieves the Public Company Profile specified by the public url slug. - /// - /// A Public Company Profile makes available the following information: <ul><li>Company Name</li><li>Company Logo Url</li><li>Description</li><li>Website</li></ul> - /// - /// - public async Task> RetrievePublicCompanyProfile(string urlSlug) - { - var url = $"/api/v1/profiles/companies/{urlSlug}"; - return await _client.Request(HttpMethod.Get, url, null, null, null); - } - - /// - /// Queries Public Company Profiles - /// - /// 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. - /// - /// A Public Company Profile makes available the following information: - /// - /// <ul><li>Company Name</li><li>Company Logo Url</li><li>Description</li><li>Website</li></ul> - /// - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The sort order for the results, in the [Searchlight order syntax](https://github.com/tspence/csharp-searchlight). - /// The page size for results (default 250, maximum of 500) - /// The page number for results (default 0) - public async Task>> QueryPublicCompanyProfiles(string filter = null, string order = null, int? pageSize = null, int? pageNumber = null) - { - var url = $"/api/v1/profiles/companies/query"; - var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); - } - } -} diff --git a/src/Clients/TransactionsClient.cs b/src/Clients/TransactionsClient.cs index 90d3414..0948a8a 100644 --- a/src/Clients/TransactionsClient.cs +++ b/src/Clients/TransactionsClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -40,7 +40,7 @@ public TransactionsClient(LockstepApi client) /// /// Queries transactions (invoices/credit memos/payments) 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// /// /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) @@ -49,7 +49,8 @@ public TransactionsClient(LockstepApi client) /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) /// The date the days past due value will be calculated against. If no currentDate is provided the current UTC date will be used. - public async Task> QueryTransactions(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null, DateTime? currentDate = null) + /// Generates query data based on legacy approach of executing SQL view queries. + public async Task> QueryTransactions(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null, DateTime? currentDate = null, bool? legacy = null) { var url = $"/api/v1/Transactions/query"; var options = new Dictionary(); @@ -59,6 +60,7 @@ public async Task(HttpMethod.Get, url, options, null, null); } diff --git a/src/Clients/TranscriptionsClient.cs b/src/Clients/TranscriptionsClient.cs deleted file mode 100644 index aecb288..0000000 --- a/src/Clients/TranscriptionsClient.cs +++ /dev/null @@ -1,212 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -using System; -using System.Collections.Generic; -using System.Net.Http; -using System.Threading.Tasks; -using LockstepSDK.Models; - - -namespace LockstepSDK.Clients -{ - /// - /// API methods related to Transcriptions - /// - public class TranscriptionsClient - { - private readonly LockstepApi _client; - - /// - /// Constructor - /// - public TranscriptionsClient(LockstepApi client) - { - _client = client; - } - - /// - /// Retrieves the Transcription Validation Request specified by this unique identifier, optionally including nested data sets. - /// - /// A Transcription Validation Request represents a collection of files sent from the client to verify the file type using the machine learning platform Sage AI. - /// - /// - /// The unique Lockstep Platform ID number of the transcription validation request - /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Items - public async Task> RetrieveTranscriptionValidationRequest(Guid id, string include = null) - { - var url = $"/api/v1/Transcriptions/validate/{id}"; - var options = new Dictionary(); - if (include != null) { options["include"] = include; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Updates an existing Transcription Validation Request with the information supplied to this PATCH call. - /// - /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired. - /// - /// A Transcription Validation Request represents a collection of files sent from the client to verify the file type using the machine learning platform Sage AI. - /// - /// - /// The unique Lockstep Platform ID number of the Transcription Validation Request to update - /// A list of changes to apply to this Transcription Validation Request - public async Task> UpdateTranscriptionValidationRequest(Guid id, object body) - { - var url = $"/api/v1/Transcriptions/validate/{id}"; - return await _client.Request(new HttpMethod("PATCH"), url, null, body, null); - } - - /// - /// Deletes the Transcription Validation Request and all associated items referred to by this unique identifier. - /// - /// A Transcription Validation Request represents a collection of files sent from the client to verify the file type using the machine learning platform Sage AI. - /// - /// - /// The unique Lockstep Platform ID number of the transcription validation request to delete - public async Task> DeleteTranscriptionValidationRequest(Guid id) - { - var url = $"/api/v1/Transcriptions/validate/{id}"; - return await _client.Request(HttpMethod.Delete, url, null, null, null); - } - - /// - /// Creates one Transcription Validation Request with all the associated request items within this account and returns the record as created. - /// - /// A Transcription Validation Request represents a collection of files sent from the client to verify the file type using the machine learning platform Sage AI. - /// - /// - /// The files which will be verified - public async Task> CreateTranscriptionValidationRequest(TranscriptionRequestSubmit[] body) - { - var url = $"/api/v1/Transcriptions/validate"; - return await _client.Request(HttpMethod.Post, url, null, body, null); - } - - /// - /// Queries transcription validation requests transactions 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. - /// - /// - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Items - /// The sort order for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - public async Task>> QueryTranscriptionValidationRequests(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) - { - var url = $"/api/v1/Transcriptions/validate/query"; - var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); - } - - /// - /// Retrieves the TranscriptionValidationRequestItemModel specified by this unique identifier. - /// - /// A TranscriptionValidationRequestItemModel represents a file sent from the client to verify the file type using the machine learning platform Sage AI. - /// - /// - /// The TranscriptionValidationRequestItemModels to add to an existing TranscriptionValidationRequestItemModel - public async Task> CreatesaTranscriptionValidationRequestItemModel(TranscriptionRequestSubmit[] body) - { - var url = $"/api/v1/Transcriptions/validation-items"; - return await _client.Request(HttpMethod.Post, url, null, body, null); - } - - /// - /// Retrieves the TranscriptionValidationRequestItemModel specified by this unique identifier. - /// - /// A TranscriptionValidationRequestItemModel represents a file sent from the client to verify the file type using the machine learning platform Sage AI. - /// - /// - /// The unique Lockstep Platform ID number of the TranscriptionValidationRequestItemModel - public async Task> RetrieveaTranscriptionValidationRequestItemModel(Guid id) - { - var url = $"/api/v1/Transcriptions/validation-items/{id}"; - return await _client.Request(HttpMethod.Get, url, null, null, null); - } - - /// - /// Updates the TranscriptionValidationRequestItemModel specified by this unique identifier. - /// - /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired. - /// - /// A TranscriptionValidationRequestItemModel represents a file sent from the client to verify the file type using the machine learning platform Sage AI. - /// - /// - /// The unique Lockstep Platform ID number of the TranscriptionValidationRequestItemModel - /// A list of changes to apply to this TranscriptionValidationRequestItemModel - public async Task> UpdateaTranscriptionValidationRequestItemModel(Guid id, object body) - { - var url = $"/api/v1/Transcriptions/validation-items/{id}"; - return await _client.Request(new HttpMethod("PATCH"), url, null, body, null); - } - - /// - /// Deletes the TranscriptionValidationRequestItemModel specified by this unique identifier. - /// - /// A TranscriptionValidationRequestItemModel represents a file sent from the client to verify the file type using the machine learning platform Sage AI. - /// - /// - /// The unique Lockstep Platform ID number of the TranscriptionValidationRequestItemModel - public async Task> DeleteaTranscriptionValidationRequestItemModel(Guid id) - { - var url = $"/api/v1/Transcriptions/validation-items/{id}"; - return await _client.Request(HttpMethod.Delete, url, null, null, null); - } - - /// - /// Queries TranscriptionValidationRequestItemModels 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. - /// - /// - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// 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 /// - /// The sort order for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - public async Task>> QueryTranscriptionValidationRequestItems(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) - { - var url = $"/api/v1/Transcriptions/validation-items/query"; - var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); - } - - /// - /// Retrieves the Email Reply Generator Response containing a list of email reply suggestions - /// - /// An Email Reply Generator Request represents an email to be sent for a list of email reply suggestions. - /// - /// - /// The Email Reply Generator Request to be sent - public async Task> RetrieveanEmailReplyGeneratorResponse(EmailReplyGeneratorRequest body) - { - var url = $"/api/v1/Transcriptions/email-reply-suggestions"; - return await _client.Request(HttpMethod.Post, url, null, body, null); - } - } -} diff --git a/src/Clients/FinancialInstitutionAccountsClient.cs b/src/Clients/WorkflowStatusesClient.cs similarity index 51% rename from src/Clients/FinancialInstitutionAccountsClient.cs rename to src/Clients/WorkflowStatusesClient.cs index fbfa80c..01519ec 100644 --- a/src/Clients/FinancialInstitutionAccountsClient.cs +++ b/src/Clients/WorkflowStatusesClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -23,50 +23,57 @@ namespace LockstepSDK.Clients { /// - /// API methods related to FinancialInstitutionAccounts + /// API methods related to WorkflowStatuses /// - public class FinancialInstitutionAccountsClient + public class WorkflowStatusesClient { private readonly LockstepApi _client; /// /// Constructor /// - public FinancialInstitutionAccountsClient(LockstepApi client) + public WorkflowStatusesClient(LockstepApi client) { _client = client; } /// - /// Retrieves the financial institution account specified by this unique identifier. + /// Retrieves the Workflow Status specified by this unique identifier. + /// + /// A Workflow Status represents the state for a specific workflow for an entity. A Workflow Status may be generic for common use cases or specific to a set of predefined statuses. /// /// - /// The unique Lockstep Platform ID number of this institution account; NOT the customer's ERP key - public async Task> RetrieveFinancialInstitutionAccounts(Guid id) + /// The unique ID number of the Workflow Status to retrieve + /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Children, Parents + public async Task> RetrieveWorkflowStatus(Guid id, string include = null) { - var url = $"/api/v1/financial-institution-accounts/{id}"; - return await _client.Request(HttpMethod.Get, url, null, null, null); + var url = $"/api/v1/workflow-statuses/{id}"; + var options = new Dictionary(); + if (include != null) { options["include"] = include; } + return await _client.Request(HttpMethod.Get, url, options, null, null); } /// + /// Queries Workflow Statuses 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 Accounting Data Services Developer website. + /// + /// A Workflow Status represents the state for a specific workflow for an entity. A Workflow Status may be generic for common use cases or specific to a set of predefined statuses. /// /// /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// 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. /// The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - public async Task>> QueryFinancialInstitutionAccounts(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) + public async Task>> QueryWorkflowStatuses(string filter = null, string order = null, int? pageSize = null, int? pageNumber = null) { - var url = $"/api/v1/financial-institution-accounts/query"; + var url = $"/api/v1/workflow-statuses/query"; var options = new Dictionary(); if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } if (order != null) { options["order"] = order; } if (pageSize != null) { options["pageSize"] = pageSize; } if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); + return await _client.Request>(HttpMethod.Get, url, options, null, null); } } } diff --git a/src/Enums.cs b/src/Enums.cs index b797f3d..faf5efd 100644 --- a/src/Enums.cs +++ b/src/Enums.cs @@ -7,39 +7,33 @@ public class LockstepEnv { /// - /// Production environment - https://api.lockstep.io + /// Development environment /// - public static string PRD = "prd"; + public const string Dev = "dev"; /// - /// Sandbox environment - https://api.sbx.lockstep.io + /// QA environment /// - public static string SBX = "sbx"; - } + public const string QA = "qa"; - /// - /// The different depths of describing an account. See the Financial Account Model for possible values for each depth - /// - public enum ReportDepth - { /// - /// the classification of the account + /// INT environment /// - Classification = 0, - + public const string INT = "int"; + /// - /// the category of the account + /// PreProd environment /// - Category = 1, - + public const string PreProd = "preprod"; + /// - /// the subcategory of the account + /// Production environment /// - Subcategory = 2, - + public const string Production = "prd"; + /// - /// the account + /// Sandbox environment /// - Account = 3 + public const string Sandbox = "sbx"; } } \ No newline at end of file diff --git a/src/LockstepApi.cs b/src/LockstepApi.cs index ba4f9e4..f86cd8e 100644 --- a/src/LockstepApi.cs +++ b/src/LockstepApi.cs @@ -1,15 +1,15 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network * - * @copyright 2021-2023 Lockstep, Inc. - * @version 2023.35.16 + * @copyright 2021-2025 Lockstep, Inc. + * @version 2025.8.6 * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -39,7 +39,7 @@ public class LockstepApi /// /// The version of the SDK /// - public const string SdkVersion = "2023.35.16"; + public const string SdkVersion = "2025.8.6"; private readonly string _apiUrl; private readonly HttpClient _client; @@ -64,11 +64,6 @@ public class LockstepApi /// public ApplicationsClient Applications { get; } - /// - /// API methods related to AttachmentLinks - /// - public AttachmentLinksClient AttachmentLinks { get; } - /// /// API methods related to Attachments /// @@ -94,11 +89,6 @@ public class LockstepApi /// public CreditMemosAppliedClient CreditMemosApplied { get; } - /// - /// API methods related to Currencies - /// - public CurrenciesClient Currencies { get; } - /// /// API methods related to CustomFieldDefinitions /// @@ -114,11 +104,6 @@ public class LockstepApi /// public DefinitionsClient Definitions { get; } - /// - /// API methods related to FeatureFlags - /// - public FeatureFlagsClient FeatureFlags { get; } - /// /// API methods related to FinancialAccount /// @@ -129,21 +114,11 @@ public class LockstepApi /// public FinancialAccountBalanceHistoryClient FinancialAccountBalanceHistory { get; } - /// - /// API methods related to FinancialInstitutionAccounts - /// - public FinancialInstitutionAccountsClient FinancialInstitutionAccounts { get; } - /// /// API methods related to FinancialYearSettings /// public FinancialYearSettingsClient FinancialYearSettings { get; } - /// - /// API methods related to GroupAccounts - /// - public GroupAccountsClient GroupAccounts { get; } - /// /// API methods related to InvoiceAddresses /// @@ -159,11 +134,6 @@ public class LockstepApi /// public InvoicesClient Invoices { get; } - /// - /// API methods related to Leads - /// - public LeadsClient Leads { get; } - /// /// API methods related to MagicLinks /// @@ -184,26 +154,6 @@ public class LockstepApi /// public PaymentsAppliedClient PaymentsApplied { get; } - /// - /// API methods related to ProfilesAccounting - /// - public ProfilesAccountingClient ProfilesAccounting { get; } - - /// - /// API methods related to ProfilesAccountingContacts - /// - public ProfilesAccountingContactsClient ProfilesAccountingContacts { get; } - - /// - /// API methods related to ProfilesCompanies - /// - public ProfilesCompaniesClient ProfilesCompanies { get; } - - /// - /// API methods related to Provisioning - /// - public ProvisioningClient Provisioning { get; } - /// /// API methods related to Reports /// @@ -224,16 +174,6 @@ public class LockstepApi /// public TransactionsClient Transactions { get; } - /// - /// API methods related to Transcriptions - /// - public TranscriptionsClient Transcriptions { get; } - - /// - /// API methods related to UserAccounts - /// - public UserAccountsClient UserAccounts { get; } - /// /// API methods related to UserRoles /// @@ -249,6 +189,11 @@ public class LockstepApi /// public WebhooksClient Webhooks { get; } + /// + /// API methods related to WorkflowStatuses + /// + public WorkflowStatusesClient WorkflowStatuses { get; } + /// /// Internal constructor for the client. You should always begin with `WithEnvironment()` or `WithCustomEnvironment`. @@ -269,43 +214,32 @@ private LockstepApi(string url, HttpClientHandler clientHandler) ApiKeys = new ApiKeysClient(this); AppEnrollments = new AppEnrollmentsClient(this); Applications = new ApplicationsClient(this); - AttachmentLinks = new AttachmentLinksClient(this); Attachments = new AttachmentsClient(this); CodeDefinitions = new CodeDefinitionsClient(this); Companies = new CompaniesClient(this); Contacts = new ContactsClient(this); CreditMemosApplied = new CreditMemosAppliedClient(this); - Currencies = new CurrenciesClient(this); CustomFieldDefinitions = new CustomFieldDefinitionsClient(this); CustomFieldValues = new CustomFieldValuesClient(this); Definitions = new DefinitionsClient(this); - FeatureFlags = new FeatureFlagsClient(this); FinancialAccount = new FinancialAccountClient(this); FinancialAccountBalanceHistory = new FinancialAccountBalanceHistoryClient(this); - FinancialInstitutionAccounts = new FinancialInstitutionAccountsClient(this); FinancialYearSettings = new FinancialYearSettingsClient(this); - GroupAccounts = new GroupAccountsClient(this); InvoiceAddresses = new InvoiceAddressesClient(this); InvoiceLines = new InvoiceLinesClient(this); Invoices = new InvoicesClient(this); - Leads = new LeadsClient(this); MagicLinks = new MagicLinksClient(this); Notes = new NotesClient(this); Payments = new PaymentsClient(this); PaymentsApplied = new PaymentsAppliedClient(this); - ProfilesAccounting = new ProfilesAccountingClient(this); - ProfilesAccountingContacts = new ProfilesAccountingContactsClient(this); - ProfilesCompanies = new ProfilesCompaniesClient(this); - Provisioning = new ProvisioningClient(this); Reports = new ReportsClient(this); Status = new StatusClient(this); Sync = new SyncClient(this); Transactions = new TransactionsClient(this); - Transcriptions = new TranscriptionsClient(this); - UserAccounts = new UserAccountsClient(this); UserRoles = new UserRolesClient(this); WebhookRules = new WebhookRulesClient(this); Webhooks = new WebhooksClient(this); + WorkflowStatuses = new WorkflowStatusesClient(this); // Configure JSON serializer options _options = new JsonSerializerOptions @@ -323,12 +257,20 @@ private LockstepApi(string url, HttpClientHandler clientHandler) /// The API client to use public static LockstepApi WithEnvironment(string env, HttpClientHandler clientHandler = null) { - switch (env) + switch (env.ToLower()) { + case "dev": + return new LockstepApi("https://api-dev.network-eng.sage.com/", clientHandler); + case "qa": + return new LockstepApi("https://api-qa.network-eng.sage.com/", clientHandler); + case "int": + return new LockstepApi("https://api-int.network-eng.sage.com/", clientHandler); + case "preprod": + return new LockstepApi("https://api-preprod.network-eng.sage.com/", clientHandler); case "sbx": - return new LockstepApi("https://api.sbx.lockstep.io/", clientHandler); + return new LockstepApi("https://api-sbx.network.sage.com/", clientHandler); case "prd": - return new LockstepApi("https://api.lockstep.io/", clientHandler); + return new LockstepApi("https://api.network.sage.com/", clientHandler); } throw new InvalidOperationException($"Unknown environment: {env}"); diff --git a/src/Models/AccountingProfileContactModel.cs b/src/Models/AccountingProfileContactModel.cs deleted file mode 100644 index 5a7c2f9..0000000 --- a/src/Models/AccountingProfileContactModel.cs +++ /dev/null @@ -1,79 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// An Accounting Profile Contact has a link to a Contact that is associated with your company's - /// Accounting Profile. These Contacts are secondary contacts to the primary that is on the profile. - /// - public class AccountingProfileContactModel - { - - /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. - /// - public Guid? AccountingProfileContactId { get; set; } - - /// - /// The ID of the profile this contact is belongs to. - /// - public Guid? AccountingProfileId { get; set; } - - /// - /// The ID of the contact that is linked to this profile. - /// - public Guid? ContactId { get; set; } - - /// - /// Determines whether the contact is primary or secondary. - /// - public bool? IsPrimary { get; set; } - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The date on which this record was created. - /// - public DateTime? Created { get; set; } - - /// - /// The ID of the user who created this contact. - /// - public Guid? CreatedUserId { get; set; } - - /// - /// The date on which this record was last modified. - /// - public DateTime? Modified { get; set; } - - /// - /// The ID of the user who last modified this contact. - /// - public Guid? ModifiedUserId { get; set; } - } -} diff --git a/src/Models/AccountingProfileContactResultModel.cs b/src/Models/AccountingProfileContactResultModel.cs deleted file mode 100644 index 78d74a6..0000000 --- a/src/Models/AccountingProfileContactResultModel.cs +++ /dev/null @@ -1,240 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// A Contact contains information about a person or role within a Company. - /// You can use Contacts to track information about who is responsible for a specific project, - /// who handles invoices, or information about which role at a particular customer or - /// vendor you should speak with about invoices. - /// - /// An Accounting Profile Contact has a link to a Contact that is associated with your company's - /// Accounting Profile. These Contacts are secondary contacts to the primary that is on the profile. - /// - public class AccountingProfileContactResultModel - { - - /// - /// 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`. - /// - public Guid? ContactId { get; set; } - - /// - /// The ID of the company to which this contact belongs. - /// - public Guid? CompanyId { get; set; } - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The unique ID of this record as it was known in its originating financial system. - /// - /// If this contact 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). - /// - public string ErpKey { get; set; } - - /// - /// The name of the contact. - /// - public string ContactName { get; set; } - - /// - /// A friendly human-readable code that describes this Contact. - /// - public string ContactCode { get; set; } - - /// - /// The title of the contact. - /// - public string Title { get; set; } - - /// - /// The role code for the contact. - /// - public string RoleCode { get; set; } - - /// - /// The email address of the contact. - /// - public string EmailAddress { get; set; } - - /// - /// The phone number of the contact. - /// - public string Phone { get; set; } - - /// - /// The fax number of the contact. - /// - public string Fax { get; set; } - - /// - /// The first line of the address. - /// - public string Address1 { get; set; } - - /// - /// The second line of the address. - /// - public string Address2 { get; set; } - - /// - /// The third line of the address. - /// - public string Address3 { get; set; } - - /// - /// The city of the address. - /// - public string City { get; set; } - - /// - /// The state/region of the address. - /// - public string StateRegion { get; set; } - - /// - /// The postal/zip code of the address. - /// - public string PostalCode { get; set; } - - /// - /// The two character country code of the address. This will be validated by the /api/v1/definitions/countries data set - /// - public string CountryCode { get; set; } - - /// - /// Flag indicating if the contact is active. - /// - public bool? IsActive { get; set; } - - /// - /// The webpage url of the contact. - /// - public string WebpageUrl { get; set; } - - /// - /// The picture/avatar url of the contact. - /// - public string PictureUrl { get; set; } - - /// - /// The date on which this record was created. - /// - public DateTime? Created { get; set; } - - /// - /// The ID of the user who created this contact. - /// - public Guid? CreatedUserId { get; set; } - - /// - /// The date on which this record was last modified. - /// - public DateTime? Modified { get; set; } - - /// - /// The ID of the user who last modified this contact. - /// - public Guid? ModifiedUserId { get; set; } - - /// - /// The AppEnrollmentId of the application that imported this record. For accounts - /// with more than one financial system connected, this field identifies the originating - /// financial system that produced this record. This value is null if this record - /// was not loaded from an external ERP or financial system. - /// - public Guid? AppEnrollmentId { get; set; } - - /// - /// A collection of notes linked to this record. To retrieve this collection, specify `Notes` in the - /// `include` parameter when retrieving data. - /// - /// To create a note, use the [Create Note](https://developer.lockstep.io/reference/post_api-v1-notes) - /// endpoint with the `TableKey` to `Contact` and the `ObjectKey` set to the `ContactId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). - /// - public NoteModel[] Notes { get; set; } - - /// - /// A collection of attachments linked to this record. To retrieve this collection, specify `Attachments` in - /// the `include` parameter when retrieving data. - /// - /// To create an attachment, use the [Upload Attachment](https://developer.lockstep.io/reference/post_api-v1-attachments) - /// endpoint with the `TableKey` to `Contact` and the `ObjectKey` set to the `ContactId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). - /// - public AttachmentModel[] Attachments { get; set; } - - /// - /// A collection of custom fields linked to this record. To retrieve this collection, specify - /// `CustomFieldDefinitions` in the `include` parameter when retrieving data. - /// - /// To create a custom field, use the [Create Custom Field](https://developer.lockstep.io/reference/post_api-v1-customfieldvalues) - /// endpoint with the `TableKey` to `Contact` and the `ObjectKey` set to the `ContactId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). - /// - public CustomFieldDefinitionModel[] CustomFieldDefinitions { get; set; } - - /// - /// A collection of custom fields linked to this record. To retrieve this collection, specify - /// `CustomFieldValues` in the `include` parameter when retrieving data. - /// - /// To create a custom field, use the [Create Custom Field](https://developer.lockstep.io/reference/post_api-v1-customfieldvalues) - /// endpoint with the `TableKey` to `Contact` and the `ObjectKey` set to the `ContactId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). - /// - public CustomFieldValueModel[] CustomFieldValues { get; set; } - - /// - /// Determines whether the contact is primary or secondary. - /// - public bool? IsPrimary { get; set; } - - /// - /// The ID of the profile this contact belongs to. - /// - public Guid? AccountingProfileId { get; set; } - - /// - /// The ID of the accounting profile contact this contact matches. - /// - public Guid? AccountingProfileContactId { get; set; } - - /// - /// The Name of the profile this contact belongs to. - /// - public string Name { get; set; } - } -} diff --git a/src/Models/AccountingProfileModel.cs b/src/Models/AccountingProfileModel.cs deleted file mode 100644 index 31b8e2f..0000000 --- a/src/Models/AccountingProfileModel.cs +++ /dev/null @@ -1,168 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// An Accounting Profile is a child of a Company Profile, and collectively, - /// they comprise the identity and necessary information for an accounting team - /// to work with trading partners, financial institutions, auditors, and others. - /// You can use Accounting Profiles to define an accounting function by what - /// the function does and how to interface with the function. - /// - public class AccountingProfileModel - { - - /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. - /// - public Guid? AccountingProfileId { get; set; } - - /// - /// The ID of the company profile to which this accounting profile belongs. - /// - public Guid? CompanyId { get; set; } - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The name of the accounting profile. - /// - public string Name { get; set; } - - /// - /// The type of the accounting profile. - /// Some examples include 'AR', 'AP', 'AR+AP', 'General Accounting', 'Treasury', 'Payroll', 'Finance' - /// - public string Type { get; set; } - - /// - /// The email address associated with the accounting profile. - /// - public string EmailAddress { get; set; } - - /// - /// The phone number associated with the accounting profile. - /// - public string Phone { get; set; } - - /// - /// The first line of the address. - /// - public string Address1 { get; set; } - - /// - /// The second line of the address. - /// - public string Address2 { get; set; } - - /// - /// The third line of the address. - /// - public string Address3 { get; set; } - - /// - /// The city of the address. - /// - public string City { get; set; } - - /// - /// The state/region of the address. - /// - public string Region { get; set; } - - /// - /// The postal/zip code of the address. - /// - public string PostalCode { get; set; } - - /// - /// The two character country code of the address. - /// - public string Country { get; set; } - - /// - /// The date on which this record was created. - /// - public DateTime? Created { get; set; } - - /// - /// The ID of the user who created this accounting profile. - /// - public Guid? CreatedUserId { get; set; } - - /// - /// The date on which this record was last modified. - /// - public DateTime? Modified { get; set; } - - /// - /// The ID of the user who last modified this accounting profile. - /// - public Guid? ModifiedUserId { get; set; } - - /// - /// A collection of notes linked to this record. To retrieve this collection, specify `Notes` in the - /// `include` parameter when retrieving data. - /// - /// To create a note, use the [Create Note](https://developer.lockstep.io/reference/post_api-v1-notes) - /// endpoint with the `TableKey` to `AccountingProfile` and the `ObjectKey` set to the `AccountingProfileId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). - /// - public NoteModel[] Notes { get; set; } - - /// - /// A collection of attachments linked to this record. To retrieve this collection, specify `Attachments` in - /// the `include` parameter when retrieving data. - /// - /// To create an attachment, use the [Upload Attachment](https://developer.lockstep.io/reference/post_api-v1-attachments) - /// endpoint with the `TableKey` to `AccountingProfile` and the `ObjectKey` set to the `AccountingProfileId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). - /// - public AttachmentModel[] Attachments { get; set; } - - /// - /// A collection of custom fields linked to this record. To retrieve this collection, specify - /// `CustomFieldDefinitions` in the `include` parameter when retrieving data. - /// - /// To create a custom field, use the [Create Custom Field](https://developer.lockstep.io/reference/post_api-v1-customfieldvalues) - /// endpoint with the `TableKey` to `AccountingProfile` and the `ObjectKey` set to the `AccountingProfileId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). - /// - public CustomFieldDefinitionModel[] CustomFieldDefinitions { get; set; } - - /// - /// A collection of custom fields linked to this record. To retrieve this collection, specify - /// `CustomFieldValues` in the `include` parameter when retrieving data. - /// - /// To create a custom field, use the [Create Custom Field](https://developer.lockstep.io/reference/post_api-v1-customfieldvalues) - /// endpoint with the `TableKey` to `AccountingProfile` and the `ObjectKey` set to the `AccountingProfileId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). - /// - public CustomFieldValueModel[] CustomFieldValues { get; set; } - } -} diff --git a/src/Models/AccountingProfileRequest.cs b/src/Models/AccountingProfileRequest.cs deleted file mode 100644 index 35f508d..0000000 --- a/src/Models/AccountingProfileRequest.cs +++ /dev/null @@ -1,173 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// An Accounting Profile is a child of a Company Profile, and collectively, - /// they comprise the identity and necessary information for an accounting team - /// to work with trading partners, financial institutions, auditors, and others. - /// You can use Accounting Profiles to define an accounting function by what - /// the function does and how to interface with the function. - /// - public class AccountingProfileRequest - { - - /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. - /// - public Guid? AccountingProfileId { get; set; } - - /// - /// The ID of the company profile to which this accounting profile belongs. - /// - public Guid? CompanyId { get; set; } - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The name of the accounting profile. - /// - public string Name { get; set; } - - /// - /// The type of the accounting profile. - /// Some examples include 'AR', 'AP', 'AR+AP', 'General Accounting', 'Treasury', 'Payroll', 'Finance' - /// - public string Type { get; set; } - - /// - /// The email address associated with the accounting profile. - /// - public string EmailAddress { get; set; } - - /// - /// The phone number associated with the accounting profile. - /// - public string Phone { get; set; } - - /// - /// The first line of the address. - /// - public string Address1 { get; set; } - - /// - /// The second line of the address. - /// - public string Address2 { get; set; } - - /// - /// The third line of the address. - /// - public string Address3 { get; set; } - - /// - /// The city of the address. - /// - public string City { get; set; } - - /// - /// The state/region of the address. - /// - public string Region { get; set; } - - /// - /// The postal/zip code of the address. - /// - public string PostalCode { get; set; } - - /// - /// The two character country code of the address. - /// - public string Country { get; set; } - - /// - /// The date on which this record was created. - /// - public DateTime? Created { get; set; } - - /// - /// The ID of the user who created this accounting profile. - /// - public Guid? CreatedUserId { get; set; } - - /// - /// The date on which this record was last modified. - /// - public DateTime? Modified { get; set; } - - /// - /// The ID of the user who last modified this accounting profile. - /// - public Guid? ModifiedUserId { get; set; } - - /// - /// A collection of notes linked to this record. To retrieve this collection, specify `Notes` in the - /// `include` parameter when retrieving data. - /// - /// To create a note, use the [Create Note](https://developer.lockstep.io/reference/post_api-v1-notes) - /// endpoint with the `TableKey` to `AccountingProfile` and the `ObjectKey` set to the `AccountingProfileId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). - /// - public NoteModel[] Notes { get; set; } - - /// - /// A collection of attachments linked to this record. To retrieve this collection, specify `Attachments` in - /// the `include` parameter when retrieving data. - /// - /// To create an attachment, use the [Upload Attachment](https://developer.lockstep.io/reference/post_api-v1-attachments) - /// endpoint with the `TableKey` to `AccountingProfile` and the `ObjectKey` set to the `AccountingProfileId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). - /// - public AttachmentModel[] Attachments { get; set; } - - /// - /// A collection of custom fields linked to this record. To retrieve this collection, specify - /// `CustomFieldDefinitions` in the `include` parameter when retrieving data. - /// - /// To create a custom field, use the [Create Custom Field](https://developer.lockstep.io/reference/post_api-v1-customfieldvalues) - /// endpoint with the `TableKey` to `AccountingProfile` and the `ObjectKey` set to the `AccountingProfileId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). - /// - public CustomFieldDefinitionModel[] CustomFieldDefinitions { get; set; } - - /// - /// A collection of custom fields linked to this record. To retrieve this collection, specify - /// `CustomFieldValues` in the `include` parameter when retrieving data. - /// - /// To create a custom field, use the [Create Custom Field](https://developer.lockstep.io/reference/post_api-v1-customfieldvalues) - /// endpoint with the `TableKey` to `AccountingProfile` and the `ObjectKey` set to the `AccountingProfileId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). - /// - public CustomFieldValueModel[] CustomFieldValues { get; set; } - - /// - /// The ID of the primary contact that is linked to this profile. - /// - public Guid? PrimaryContactId { get; set; } - } -} diff --git a/src/Models/InvoiceSummaryTotalsModel.cs b/src/Models/AgingBucketResult.cs similarity index 58% rename from src/Models/InvoiceSummaryTotalsModel.cs rename to src/Models/AgingBucketResult.cs index 09b65e2..ae18911 100644 --- a/src/Models/InvoiceSummaryTotalsModel.cs +++ b/src/Models/AgingBucketResult.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,19 +21,19 @@ namespace LockstepSDK.Models { /// - /// The totals for an Invoice Summary + /// The aging data for an individual bucket /// - public class InvoiceSummaryTotalsModel + public class AgingBucketResult { /// - /// The total amount invoiced. + /// The different buckets used for aging. /// - public decimal? TotalInvoiceAmount { get; set; } + public int? Bucket { get; set; } /// - /// The total outstanding balance + /// The outstanding amount for the given bucket in the group's base currency. /// - public decimal? TotalInvoiceBalance { get; set; } + public decimal? Value { get; set; } } } diff --git a/src/Models/AppEnrollmentReconnectInfo.cs b/src/Models/AppEnrollmentReconnectInfo.cs index e2924cf..cf97f5f 100644 --- a/src/Models/AppEnrollmentReconnectInfo.cs +++ b/src/Models/AppEnrollmentReconnectInfo.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ diff --git a/src/Models/AttachmentLinkModel.cs b/src/Models/AttachmentLinkModel.cs deleted file mode 100644 index 1d663a6..0000000 --- a/src/Models/AttachmentLinkModel.cs +++ /dev/null @@ -1,78 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// An Attachment Link represents a single link between any nestable object and an attachment - /// - public class AttachmentLinkModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The unique ID of an attachment record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. - /// - public Guid? AttachmentId { get; set; } - - /// - /// An Attachment is connected to an existing item within the Lockstep Platform by the fields `TableKey` and - /// `ObjectKey`. For example, an Attachment connected to Invoice 12345 would have a `TableKey` value of - /// `Invoice` and an `ObjectKey` value of `12345`. - /// - /// The `ObjectKey` value contains the primary key of the record within the Lockstep Platform to which this - /// Attachment is connected. - /// - /// For more information, see [linking metadata to an object](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). - /// - public Guid? ObjectKey { get; set; } - - /// - /// An Attachment is connected to an existing item within the Lockstep Platform by the fields `TableKey` and - /// `ObjectKey`. For example, an Attachment connected to Invoice 12345 would have a `TableKey` value of - /// `Invoice` and an `ObjectKey` value of `12345`. - /// - /// The `TableKey` value contains the name of the table within the Lockstep Platform to which this Attachment - /// is connected. - /// - /// For more information, see [linking metadata to an object](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). - /// - public string TableKey { get; set; } - - /// - /// The date the Attachment Link was created. - /// - public DateTime? Created { get; set; } - - /// - /// The unique ID of the [UserAccount](https://developer.lockstep.io/docs/useraccountmodel) of the user - /// who created this Attachment Link. - /// - public Guid? CreatedUserId { get; set; } - } -} diff --git a/src/Models/BaseCurrencySyncModel.cs b/src/Models/BaseCurrencySyncModel.cs index d62619e..194e0a0 100644 --- a/src/Models/BaseCurrencySyncModel.cs +++ b/src/Models/BaseCurrencySyncModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,11 +21,11 @@ namespace LockstepSDK.Models { /// - /// The BaseCurrencySyncModel represents information coming into Lockstep from an external financial system or other + /// The BaseCurrencySyncModel represents information coming into ADS from an external financial system or other /// enterprise resource planning system. To import data from an external system, convert your original data into /// the BaseCurrencySyncModel format and call the [Upload Sync File API](https://developer.lockstep.io/reference/post_api-v1-sync-zip). - /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the Lockstep - /// platform. + /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the ADS + /// Platform. /// /// Once imported, this record will be used to update the Group Account base currency code. /// diff --git a/src/Models/BulkDeleteRequestModel.cs b/src/Models/BulkDeleteRequestModel.cs index 7d18fe6..d4cb31c 100644 --- a/src/Models/BulkDeleteRequestModel.cs +++ b/src/Models/BulkDeleteRequestModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ diff --git a/src/Models/CompanyMagicLinkSummaryModel.cs b/src/Models/CompanyMagicLinkSummaryModel.cs index 04e46ab..576d984 100644 --- a/src/Models/CompanyMagicLinkSummaryModel.cs +++ b/src/Models/CompanyMagicLinkSummaryModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -27,10 +27,7 @@ public class CompanyMagicLinkSummaryModel { /// - /// 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`. + /// The unique id for this company /// public Guid? CompanyId { get; set; } @@ -39,17 +36,6 @@ public class CompanyMagicLinkSummaryModel /// public string CompanyName { get; set; } - /// - /// 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). - /// - public string ErpKey { get; set; } - /// /// 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 @@ -66,21 +52,7 @@ public class CompanyMagicLinkSummaryModel public string CompanyType { get; set; } /// - /// 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. - /// - public Guid? ParentCompanyId { get; set; } - - /// - /// 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. - /// - public Guid? EnterpriseId { get; set; } - - /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -88,278 +60,94 @@ public class CompanyMagicLinkSummaryModel public Guid? GroupKey { get; set; } /// - /// 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. - /// - public bool? IsActive { get; set; } - - /// - /// 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) - /// - public string DefaultCurrencyCode { get; set; } - - /// - /// The URL of this company's logo, if known. - /// - public string CompanyLogoUrl { get; set; } - - /// - /// The Lockstep `ContactId` of the primary contact for this company. - /// - public Guid? PrimaryContactId { get; set; } - - /// - /// Address info - /// - public string Address1 { get; set; } - - /// - /// Address info - /// - public string Address2 { get; set; } - - /// - /// Address info - /// - public string Address3 { get; set; } - - /// - /// Address info - /// - public string City { get; set; } - - /// - /// Address info + /// The name of the primary contact for this company /// - public string StateRegion { get; set; } + public string PrimaryContactName { get; set; } /// - /// Address info + /// The email of the primary contact for this company /// - public string PostalCode { get; set; } + public string PrimaryContactEmailAddress { get; set; } /// - /// Address info + /// The point of contact for this company /// - public string Country { get; set; } + public string PointOfContact { get; set; } /// - /// Time zone + /// The total outstanding amount for this company /// - public string TimeZone { get; set; } + public decimal? OutstandingAmount { get; set; } /// - /// Phone number + /// The total amount past due for this company /// - public string PhoneNumber { get; set; } + public decimal? AmountPastDue { get; set; } /// - /// Fax number + /// The total number of open invoices for this company /// - public string FaxNumber { get; set; } + public int? TotalOpenInvoices { get; set; } /// - /// The date this company was created + /// The total number of invoices that are past due for this company /// - public DateTime? Created { get; set; } + public int? PastDue { get; set; } /// - /// The ID of the user who created this company + /// Total number of visits for all magic links sent for this company /// - public Guid? CreatedUserId { get; set; } + public int? TotalVisits { get; set; } /// - /// The date this company was last modified + /// Total number of sent links for this company /// - public DateTime? Modified { get; set; } + public int? LinksSent { get; set; } /// - /// The ID of the user who last modified this company - /// - public Guid? ModifiedUserId { get; set; } - - /// - /// Federal Tax ID - /// - public string TaxId { get; set; } - - /// - /// Dun & Bradstreet Number - /// - public string DunsNumber { get; set; } - - /// - /// Indicates the preferred invoice delivery method. Examples include Print, Email, Fax - /// - public string PreferredDeliveryMethod { get; set; } - - /// - /// 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. - /// - public string DomainName { get; set; } - - /// - /// Identifier for classification of this company. - /// - public Guid? CompanyClassificationCodeDefId { get; set; } - - /// - /// Description of the company. - /// - public string Description { get; set; } - - /// - /// Website URL for this company. - /// - public string Website { get; set; } - - /// - /// The AppEnrollmentId of the application that imported this record. For accounts - /// with more than one financial system connected, this field identifies the originating - /// financial system that produced this record. This value is null if this record - /// was not loaded from an external ERP or financial system. - /// - public Guid? AppEnrollmentId { get; set; } - - /// - /// Company Email Address - /// - public string EmailAddress { get; set; } - - /// - /// The public url slug for the Company. - /// - public string PublicUrlSlug { get; set; } - - /// - /// State Tax ID - /// - public string StateTaxId { get; set; } - - /// - /// The state where the company was registered. - /// - public string StateOfIncorporation { get; set; } - - /// - /// Linkedin Url - /// - public string LinkedInUrlSlug { get; set; } - - /// - /// This flag indicates whether the company is verified. - /// - public bool? IsVerified { get; set; } - - /// - /// The date this company was last verified. - /// - public DateTime? LastVerifiedDate { get; set; } - - /// - /// View box settings for the company logo. - /// - public ViewBoxSettingsModel ViewBoxSettings { get; set; } - - /// - /// The unique ID of the Service Fabric organisation to which this record belongs. - /// - public Guid? ServiceFabricOrgId { get; set; } - - /// - /// The unique ID of this record within Service Fabric. - /// - public Guid? ServiceFabricCompanyId { get; set; } - - /// - /// A unique identification number assigned to the company by the national registration office. - /// - public string CompanyRegistrationNumber { get; set; } - - /// - /// An optional reference to a real company, making this a profile. - /// - public Guid? ProfileReferenceId { get; set; } - - /// - /// A collection of notes linked to this record. To retrieve this collection, specify `Notes` in the - /// `include` parameter when retrieving data. - /// - /// To create a note, use the [Create Note](https://developer.lockstep.io/reference/post_api-v1-notes) - /// endpoint with the `TableKey` to `Company` and the `ObjectKey` set to the `CompanyId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). - /// - public NoteModel[] Notes { get; set; } - - /// - /// A collection of attachments linked to this record. To retrieve this collection, specify `Attachments` in - /// the `include` parameter when retrieving data. - /// - /// To create an attachment, use the [Upload Attachment](https://developer.lockstep.io/reference/post_api-v1-attachments) - /// endpoint with the `TableKey` to `Company` and the `ObjectKey` set to the `CompanyId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). + /// Created date of the most recent magic link made for this company /// - public AttachmentModel[] Attachments { get; set; } + public DateTime? LatestMagicLinkDate { get; set; } /// - /// All contacts attached to this company. - /// - /// To retrieve this collection, specify `Contacts` in the "Include" parameter for your query. + /// Id of the most recent magic link made for this company /// - public ContactModel[] Contacts { get; set; } + public Guid? LatestMagicLinkId { get; set; } /// - /// 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). + /// Status of the most recent magic link made for this company /// - public object[] Invoices { get; set; } + public int? LatestMagicLinkStatus { get; set; } /// - /// A collection of custom fields linked to this record. To retrieve this collection, specify - /// `CustomFieldDefinitions` in the `include` parameter when retrieving data. - /// - /// To create a custom field, use the [Create Custom Field](https://developer.lockstep.io/reference/post_api-v1-customfieldvalues) - /// endpoint with the `TableKey` to `Company` and the `ObjectKey` set to the `CompanyId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). + /// Expiration date of the most recent magic link made for this company /// - public CustomFieldDefinitionModel[] CustomFieldDefinitions { get; set; } + public DateTime? LatestMagicLinkExpirationDate { get; set; } /// - /// A collection of custom fields linked to this record. To retrieve this collection, specify - /// `CustomFieldValues` in the `include` parameter when retrieving data. - /// - /// To create a custom field, use the [Create Custom Field](https://developer.lockstep.io/reference/post_api-v1-customfieldvalues) - /// endpoint with the `TableKey` to `Company` and the `ObjectKey` set to the `CompanyId` for this record. For - /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). + /// The currency code associated with this company based on the related invoices and payments. + /// `Multi` - Multiple currency codes are present. /// - public CustomFieldValueModel[] CustomFieldValues { get; set; } + public string CurrencyCode { get; set; } /// - /// Classification code definition for this company. - /// - /// To retrieve this collection, specify `Classification` in the "Include" parameter for your query. + /// The invite status of this company /// - public CodeDefinitionModel CompanyClassificationCodeDefinition { get; set; } + public string InviteStatus { get; set; } /// - /// Created date of the most recent magic link made for this company + /// The UTC date and time the invite status was last modified /// - public DateTime? LatestMagicLinkDate { get; set; } + public DateTime? InviteStatusModified { get; set; } /// - /// Id of the most recent magic link made for this company + /// The user id of the user who last modified the invite status /// - public Guid? LatestMagicLinkId { get; set; } + public Guid? InviteStatusModifiedUserId { get; set; } /// - /// Possible statuses for a Magic Link. + /// This flag indicates whether the company is currently active. /// - public int? LatestMagicLinkStatus { get; set; } + public bool? IsActive { get; set; } } } diff --git a/src/Models/DeleteResult.cs b/src/Models/DeleteResult.cs index acaf309..aa35fb0 100644 --- a/src/Models/DeleteResult.cs +++ b/src/Models/DeleteResult.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ diff --git a/src/Models/EmailReplyGeneratorRequest.cs b/src/Models/EmailReplyGeneratorRequest.cs deleted file mode 100644 index 0392054..0000000 --- a/src/Models/EmailReplyGeneratorRequest.cs +++ /dev/null @@ -1,44 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents the request to the SAGE GMS API - /// - public class EmailReplyGeneratorRequest - { - - /// - /// The date associated with the email - /// - public DateTime? Date { get; set; } - - /// - /// The body associated with the email - /// - public string Body { get; set; } - - /// - /// The subject associated with the email - /// - public string Subject { get; set; } - } -} diff --git a/src/Models/EmailReplyGeneratorResponse.cs b/src/Models/EmailReplyGeneratorResponse.cs deleted file mode 100644 index 8658ad6..0000000 --- a/src/Models/EmailReplyGeneratorResponse.cs +++ /dev/null @@ -1,39 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents the response from SAGE GMS API - /// - public class EmailReplyGeneratorResponse - { - - /// - /// The id for this request in the GMS system - /// - public Guid? Message_id { get; set; } - - /// - /// A list of suggested email reply responses - /// - public EmailReplyGeneratorSuggestions[] Suggestions { get; set; } - } -} diff --git a/src/Models/EmailReplyGeneratorSuggestions.cs b/src/Models/EmailReplyGeneratorSuggestions.cs deleted file mode 100644 index d847b55..0000000 --- a/src/Models/EmailReplyGeneratorSuggestions.cs +++ /dev/null @@ -1,39 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents the email reply suggestion from the SAGE GMS API - /// - public class EmailReplyGeneratorSuggestions - { - - /// - /// The kind of reply generated by the GMS Api - /// - public string Kind { get; set; } - - /// - /// The body of the reply generated by the GMS Api - /// - public string Body { get; set; } - } -} diff --git a/src/Models/FeatureFlagsRequestModel.cs b/src/Models/FeatureFlagsRequestModel.cs deleted file mode 100644 index 78ba584..0000000 --- a/src/Models/FeatureFlagsRequestModel.cs +++ /dev/null @@ -1,34 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Request information for Feature Flags - /// - public class FeatureFlagsRequestModel - { - - /// - /// The names of Feature Flags - /// - public string[] Names { get; set; } - } -} diff --git a/src/Models/FeatureFlagsResponseModel.cs b/src/Models/FeatureFlagsResponseModel.cs deleted file mode 100644 index 1b63df2..0000000 --- a/src/Models/FeatureFlagsResponseModel.cs +++ /dev/null @@ -1,34 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Response information for Feature Flags - /// - public class FeatureFlagsResponseModel - { - - /// - /// State of the requested Feature Flags - /// - public object Values { get; set; } - } -} diff --git a/src/Models/FinancialAccountBalanceHistorySyncModel.cs b/src/Models/FinancialAccountBalanceHistorySyncModel.cs index 32048c0..4ead13d 100644 --- a/src/Models/FinancialAccountBalanceHistorySyncModel.cs +++ b/src/Models/FinancialAccountBalanceHistorySyncModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,16 +21,16 @@ namespace LockstepSDK.Models { /// - /// The FinancialAccountBalanceHistorySyncModel represents information coming into Lockstep from an external financial system or other + /// The FinancialAccountBalanceHistorySyncModel represents information coming into ADS from an external financial system or other /// enterprise resource planning system. To import data from an external system, convert your original data into /// the FinancialAccountBalanceHistorySyncModel format and call the [Upload Sync File API](https://developer.lockstep.io/reference/post_api-v1-sync-zip). - /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the Lockstep - /// platform. + /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the ADS + /// Platform. /// /// If the FinancialAccountBalanceHistorySyncModels are imported via a connector instead, please ensure that all records are passed in /// on every sync. Records that are not passed in will be assumed to be deleted. /// - /// Once imported, this record will be available in the Lockstep API as a [FinancialAccountBalanceHistoryModel](https://developer.lockstep.io/docs/financialaccountbalancehistorymodel). + /// Once imported, this record will be available in the ADS Platform API as a [FinancialAccountBalanceHistoryModel](https://developer.lockstep.io/docs/financialaccountbalancehistorymodel). /// /// For more information on writing your own connector, see [Connector Data](https://developer.lockstep.io/docs/connector-data). /// diff --git a/src/Models/FinancialAccountSyncModel.cs b/src/Models/FinancialAccountSyncModel.cs index 446dce4..ef5551e 100644 --- a/src/Models/FinancialAccountSyncModel.cs +++ b/src/Models/FinancialAccountSyncModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,13 +21,13 @@ namespace LockstepSDK.Models { /// - /// The FinancialAccountSyncModel represents information coming into Lockstep from an external financial system or other + /// The FinancialAccountSyncModel represents information coming into ADS from an external financial system or other /// enterprise resource planning system. To import data from an external system, convert your original data into /// the FinancialAccountSyncModel format and call the [Upload Sync File API](https://developer.lockstep.io/reference/post_api-v1-sync-zip). - /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the Lockstep - /// platform. + /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the ADS + /// Platform. /// - /// Once imported, this record will be available in the Lockstep API as a [FinancialAccountModel](https://developer.lockstep.io/docs/financialaccountmodel). + /// Once imported, this record will be available in the ADS Platform API as a [FinancialAccountModel](https://developer.lockstep.io/docs/financialaccountmodel). /// /// For more information on writing your own connector, see [Connector Data](https://developer.lockstep.io/docs/connector-data). /// @@ -87,5 +87,10 @@ public class FinancialAccountSyncModel /// The subcategory for the Financial Account. Examples include Cash, Property, Bank Loan, etc. /// public string Subcategory { get; set; } + + /// + /// The system account type of the Financial Account. + /// + public string SystemAccountType { get; set; } } } diff --git a/src/Models/FinancialInstitutionAccountModel.cs b/src/Models/FinancialInstitutionAccountModel.cs deleted file mode 100644 index b3a127b..0000000 --- a/src/Models/FinancialInstitutionAccountModel.cs +++ /dev/null @@ -1,99 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// An Financial Institution Account represents an account used for monetary transactions. E.g. - checking, savings, or credit card accounts. - /// - public class FinancialInstitutionAccountModel - { - - /// - /// The unique identifier for the Financial Institution Account. - /// - public Guid? FinancialInstitutionAccountId { get; set; } - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// An alternate account id for the Financial Institution Account. - /// - public string BankAccountId { get; set; } - - /// - /// The External Id for the Financial Institution Account. - /// - public string ErpKey { get; set; } - - /// - /// The App Enrollment Id this Financial Institution is associated with. - /// - public Guid? AppEnrollmentId { get; set; } - - /// - /// The name of the Financial Institution Account. - /// - public string Name { get; set; } - - /// - /// The status of the Financial Institution Account. Possible values are active, - /// inactive, deleted or archived. - /// - public string Status { get; set; } - - /// - /// The description for the Financial Institution Account. - /// - public string Description { get; set; } - - /// - /// The classification for the Financial Institution Account. Possible values are Asset, Equity, - /// Expense, Liability or Income. - /// - public string AccountType { get; set; } - - /// - /// The date the Financial Institution Account was created. - /// - public DateTime? Created { get; set; } - - /// - /// The user that has created the Financial Institution Account. - /// - public Guid? CreatedUserId { get; set; } - - /// - /// The date the Financial Institution Account was modified. - /// - public DateTime? Modified { get; set; } - - /// - /// The user that has modified the Financial Institution Account. - /// - public Guid? ModifiedUserId { get; set; } - } -} diff --git a/src/Models/FinancialYearSettingSyncModel.cs b/src/Models/FinancialYearSettingSyncModel.cs index f616bc0..4f95c39 100644 --- a/src/Models/FinancialYearSettingSyncModel.cs +++ b/src/Models/FinancialYearSettingSyncModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,13 +21,13 @@ namespace LockstepSDK.Models { /// - /// The FinancialYearSettingSyncModel represents information coming into Lockstep from an external financial system or other + /// The FinancialYearSettingSyncModel represents information coming into ADS from an external financial system or other /// enterprise resource planning system. To import data from an external system, convert your original data into /// the FinancialYearSettingSyncModel format and call the [Upload Sync File API](https://developer.lockstep.io/reference/post_api-v1-sync-zip). - /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the Lockstep - /// platform. + /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the ADS + /// Platform. /// - /// Once imported, this record will be available in the Lockstep API as a [FinancialYearSettingModel](https://developer.lockstep.io/docs/financialyearsettingmodel). + /// Once imported, this record will be available in the ADS Platform API as a [FinancialYearSettingModel](https://developer.lockstep.io/docs/financialyearsettingmodel). /// Sync is supported for only one FinancialYearSetting per app enrollment and one FinancialYearSetting imported outside of /// an app enrollment - please submit only one model here. If multiple models are submitted, only the latest one is considered for Sync. /// diff --git a/src/Models/InsertPaymentAppliedRequestModel.cs b/src/Models/InsertPaymentAppliedRequestModel.cs deleted file mode 100644 index 9b704e1..0000000 --- a/src/Models/InsertPaymentAppliedRequestModel.cs +++ /dev/null @@ -1,73 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// A request to insert a payment application - /// - public class InsertPaymentAppliedRequestModel - { - - /// - /// 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`. - /// - public Guid? PaymentAppliedId { get; set; } - - /// - /// The Invoice this payment is applied to. - /// - public Guid? InvoiceId { get; set; } - - /// - /// The Payment this application applies from. - /// - public Guid? PaymentId { get; set; } - - /// - /// 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). - /// - public string ErpKey { get; set; } - - /// - /// The ERP key of the Invoice this payment is applied to. - /// - public string InvoiceErpKey { get; set; } - - /// - /// The date this payment was applied to this invoice. - /// - public DateTime? ApplyToInvoiceDate { get; set; } - - /// - /// The total amount that was applied to this Invoice from the Payment. - /// - public decimal? PaymentAppliedAmount { get; set; } - } -} diff --git a/src/Models/InsertPaymentRequestModel.cs b/src/Models/InsertPaymentRequestModel.cs deleted file mode 100644 index 73c972f..0000000 --- a/src/Models/InsertPaymentRequestModel.cs +++ /dev/null @@ -1,167 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// A request to insert a new Payment - /// - public class InsertPaymentRequestModel - { - - /// - /// The AppEnrollmentId of the application to write this record to. - /// - public Guid? AppEnrollmentId { get; set; } - - /// - /// 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`. - /// - public Guid? PaymentId { get; set; } - - /// - /// The ID of the company to which this payment belongs. - /// - public Guid? CompanyId { get; set; } - - /// - /// The ERP key for the company to which this payment belongs. - /// - public string CompanyErpKey { get; set; } - - /// - /// A additional reference that may be used in the ERP - /// - public string CompanyExternalReference { get; set; } - - /// - /// 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). - /// - public string ErpKey { get; set; } - - /// - /// The type of payment, AR Payment or AP Payment. - /// - /// Recognized PaymentType values are: - /// * `AR Payment` - A payment made by a Customer to the Company - /// * `AP Payment` - A payment made by the Company to a Vendor - /// - public string PaymentType { get; set; } - - /// - /// Cash, check, credit card, wire transfer. - /// - /// Recognized TenderType values are: - /// * `Cash` - A cash payment or other direct transfer. - /// * `Check` - A check payment. - /// * `Credit Card` - A payment made via a credit card. - /// * `Wire Transfer` - A payment made via wire transfer from another financial institution. - /// * `Other` - A payment made via another method not listed above. - /// - public string TenderType { get; set; } - - /// - /// Memo or reference text (ex. memo field on a check). - /// - public string MemoText { get; set; } - - /// - /// The date when this payment was received. - /// - public DateTime? PaymentDate { get; set; } - - /// - /// The date when a payment was posted to a ledger. - /// - public DateTime? PostDate { get; set; } - - /// - /// Total amount of this payment in it's received currency. - /// - public decimal? PaymentAmount { get; set; } - - /// - /// Unapplied balance of this payment in it's received currency. If this amount is nonzero, the field `IsOpen` will be true. - /// - public decimal? UnappliedAmount { get; set; } - - /// - /// The ISO 4217 currency code for this payment. - /// - /// For a list of ISO 4217 currency codes, see [Query Currencies](https://developer.lockstep.io/reference/get_api-v1-definitions-currencies). - /// - public string CurrencyCode { get; set; } - - /// - /// Reference code for the payment for the given Erp system. - /// - public string ReferenceCode { get; set; } - - /// - /// Is the payment voided? - /// - public bool? IsVoided { get; set; } - - /// - /// Is the payment in dispute? - /// - public bool? InDispute { get; set; } - - /// - /// The Currency Rate used to get from the account's base currency to the payment amount. - /// - public decimal? CurrencyRate { get; set; } - - /// - /// Total amount of this payment in the group's base currency. - /// - public decimal? BaseCurrencyPaymentAmount { get; set; } - - /// - /// Unapplied balance of this payment in the group's base currency. If this amount is nonzero, the field `IsOpen` will be true. - /// - public decimal? BaseCurrencyUnappliedAmount { get; set; } - - /// - /// The Bank account id for the company to which this payment belongs. - /// - public string BankAccountId { get; set; } - - /// - /// The GroupKey this request belongs to. - /// - public Guid? GroupKey { get; set; } - - /// - /// All applications this payment is associated with. - /// To retrieve this collection, specify `Applications` in the "Include" parameter for your query. - /// - public InsertPaymentAppliedRequestModel[] Applications { get; set; } - } -} diff --git a/src/Models/InsertPaymentRequestModelErpWriteSyncSubmitModel.cs b/src/Models/InsertPaymentRequestModelErpWriteSyncSubmitModel.cs deleted file mode 100644 index a1aaec4..0000000 --- a/src/Models/InsertPaymentRequestModelErpWriteSyncSubmitModel.cs +++ /dev/null @@ -1,40 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Lockstep.Shared.Models.Sync.ErpWriteSyncSubmitModel`1 represents a request to write back a collection - /// of requests to the connected AppEnrollment. - /// - public class InsertPaymentRequestModelErpWriteSyncSubmitModel - { - - /// - /// The connected App Enrollment id. - /// - public Guid? AppEnrollmentId { get; set; } - - /// - /// An array of requests to write back. - /// - public InsertPaymentRequestModel[] Requests { get; set; } - } -} diff --git a/src/Models/InvoiceSummaryModelInvoiceSummaryTotalsModelSummaryFetchResult.cs b/src/Models/InvoiceSummaryModelInvoiceSummaryTotalsModelSummaryFetchResult.cs deleted file mode 100644 index 3312219..0000000 --- a/src/Models/InvoiceSummaryModelInvoiceSummaryTotalsModelSummaryFetchResult.cs +++ /dev/null @@ -1,41 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - public class InvoiceSummaryModelInvoiceSummaryTotalsModelSummaryFetchResult - { - - public int? TotalCount { get; set; } - - public int? PageSize { get; set; } - - public int? PageNumber { get; set; } - - public InvoiceSummaryModel[] Records { get; set; } - - /// - /// The totals for an Invoice Summary - /// - public InvoiceSummaryTotalsModel Summary { get; set; } - - public SummaryAgingTotalsModel[] AgingSummary { get; set; } - } -} diff --git a/src/Models/InvoiceWorkflowStatusHistoryModel.cs b/src/Models/InvoiceWorkflowStatusHistoryModel.cs new file mode 100644 index 0000000..36dea58 --- /dev/null +++ b/src/Models/InvoiceWorkflowStatusHistoryModel.cs @@ -0,0 +1,85 @@ +/*** + * Lockstep Platform SDK for C# + * + * (c) 2021-2025 Lockstep, Inc. + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + * + * @author Lockstep Network + * @copyright 2021-2025 Lockstep, Inc. + * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp + */ + + + +#pragma warning disable CS8618 + +using System; + +namespace LockstepSDK.Models +{ + + /// + /// A Invoice Workflow Status History represents prior workflow statuses of an E-Invoice. + /// + public class InvoiceWorkflowStatusHistoryModel + { + + /// + /// The unique ID of this record, automatically assigned by ADS Platform when this record is + /// added to the Accounting Data Services platform. + /// + public Guid? InvoiceWorkflowStatusHistoryId { get; set; } + + /// + /// The invoice ID associated with the invoice workflow status history. + /// + public Guid? InvoiceId { get; set; } + + /// + /// The workflow status ID associated with the invoice workflow status history. + /// + public Guid? WorkflowStatusId { get; set; } + + /// + /// The workflow status name associated with the invoice workflow status history. + /// + public string WorkflowStatusName { get; set; } + + /// + /// The workflow transition ID associated with the invoice workflow status history. + /// + public Guid? WorkflowTransitionId { get; set; } + + /// + /// The GroupKey uniquely identifies a single Accounting Data Services 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). + /// + public Guid? GroupKey { get; set; } + + /// + /// The notes for the invoice workflow status history. + /// + public string WorkflowStatusNotes { get; set; } + + /// + /// The reason code for the invoice workflow status history. + /// + /// Specific reason codes are defined by the workflow status. + /// + public string WorkflowStatusReasonCode { get; set; } + + /// + /// The date that the invoice workflow status history was created. + /// + public DateTime? Created { get; set; } + + /// + /// The ID of the user who created the invoice workflow status history. + /// + public Guid? CreatedUserId { get; set; } + } +} diff --git a/src/Models/InvoiceWorkflowStatusSyncModel.cs b/src/Models/InvoiceWorkflowStatusSyncModel.cs new file mode 100644 index 0000000..c687b92 --- /dev/null +++ b/src/Models/InvoiceWorkflowStatusSyncModel.cs @@ -0,0 +1,69 @@ +/*** + * Lockstep Platform SDK for C# + * + * (c) 2021-2025 Lockstep, Inc. + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + * + * @author Lockstep Network + * @copyright 2021-2025 Lockstep, Inc. + * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp + */ + + + +#pragma warning disable CS8618 + +using System; + +namespace LockstepSDK.Models +{ + + /// + /// The InvoiceWorkflowStatusSyncModel represents information coming into ADS from an external financial system or other + /// enterprise resource planning system. To import data from an external system, convert your original data into + /// the InvoiceWorkflowStatusSyncModel format and call the [Upload Sync File API](https://developer.lockstep.io/reference/post_api-v1-sync-zip). + /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the ADS + /// Platform. + /// + /// Once imported, this record will be available in the ADS Platform API as an [InvoiceWorkflowStatusHistoryModel](https://developer.lockstep.io/docs/invoiceworkflowstatushistorymodel). + /// + /// For more information on writing your own connector, see [Connector Data](https://developer.lockstep.io/docs/connector-data). + /// + public class InvoiceWorkflowStatusSyncModel + { + + /// + /// This is the primary key of the Invoice record. For this field, you should use whatever the invoice's unique + /// identifying number is in the originating system. Search for a unique, non-changing number within the + /// originating financial system for this record. + /// + /// Example: If you store your invoice records in a database, whatever the primary key for the invoice table is + /// in the database should be the "ErpKey". + /// + /// For more information, see [Identity Columns](https://developer.lockstep.io/docs/identity-columns). + /// + public string InvoiceErpKey { get; set; } + + /// + /// Workflow status of the invoice. + /// + public Guid? WorkflowStatusId { get; set; } + + /// + /// Notes associated to workflow status + /// + public string Notes { get; set; } + + /// + /// Workflow status code dictated by government standards + /// + public string Code { get; set; } + + /// + /// The date when the workflow status was updated for the e-invoice + /// + public DateTime? Created { get; set; } + } +} diff --git a/src/Models/JournalEntryLineSyncModel.cs b/src/Models/JournalEntryLineSyncModel.cs new file mode 100644 index 0000000..93b1ef1 --- /dev/null +++ b/src/Models/JournalEntryLineSyncModel.cs @@ -0,0 +1,150 @@ +/*** + * Lockstep Platform SDK for C# + * + * (c) 2021-2025 Lockstep, Inc. + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + * + * @author Lockstep Network + * @copyright 2021-2025 Lockstep, Inc. + * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp + */ + + + +#pragma warning disable CS8618 + +using System; + +namespace LockstepSDK.Models +{ + + /// + /// The JournalEntryLineSyncModel represents information coming into ADS from an external financial system or other + /// enterprise resource planning system. To import data from an external system, convert your original data into + /// the JournalEntryLineSyncModel format and call the [Upload Sync File API](https://developer.lockstep.io/reference/post_api-v1-sync-zip). + /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the ADS + /// Platform. + /// + /// Once imported, this record will be available in the ADS Platform API as a JournalEntryLineModel + /// + /// For more information on writing your own connector, see [Connector Data](https://developer.lockstep.io/docs/connector-data). + /// + public class JournalEntryLineSyncModel + { + + /// + /// Indicates what action to take when an existing object has been found during the sync process. + /// + public int? OnMatchAction { get; set; } + + /// + /// This is the primary key of the Journal Entry Line record. For this field, you should use whatever the Journal Entry Line's unique + /// identifying number is in the originating system. Search for a unique, non-changing number within the + /// originating financial system for this record. + /// + /// Example: If you store your Journal Entry Line records in a database, whatever the primary key for the Journal Entry Line table is + /// in the database should be the "ErpKey". + /// + /// For more information, see [Identity Columns](https://developer.lockstep.io/docs/identity-columns). + /// + public string ErpKey { get; set; } + + /// + /// The original primary key or unique ID of the journal entry to which this line belongs. This value should + /// match the Journal Entry ErpKey field on the JournalEntrySyncModel. + /// + public string JournalEntryErpKey { get; set; } + + /// + /// An optional Financial Account with which this line is associated. This value should + /// match the Financial Account ErpKey field on the FinancialAccountSyncModel. + /// + public string FinancialAccountErpKey { get; set; } + + /// + /// The unique code/identifier assigned to each account in the chart of accounts. + /// + public string AccountNumber { get; set; } + + /// + /// The name of the account. + /// + public string AccountName { get; set; } + + /// + /// Debit to account. + /// + public decimal? Debit { get; set; } + + /// + /// Credit to account. + /// + public decimal? Credit { get; set; } + + /// + /// The transaction currency in which the entry is recorded, especially useful for multi-currency environments. + /// + public string CurrencyCode { get; set; } + + /// + /// The CurrencyRate of the connected Payment + /// + public decimal? CurrencyRate { get; set; } + + /// + /// The base currency debit amount for the account. + /// + public decimal? BaseDebit { get; set; } + + /// + /// The base currency credit amount for the account. + /// + public decimal? BaseCredit { get; set; } + + /// + /// The base currency in which the entry is recorded, especially useful for multi-currency environments. + /// + public string BaseCurrencyCode { get; set; } + + /// + /// The ERP’s identifier for the user who recorded the journal entry line. + /// + public string SourceCreatedUser { get; set; } + + /// + /// A memo related to this line. + /// + public string Memo { get; set; } + + /// + /// A JSON string representing the dimensions for this journal entry line. + /// + public object Dimensions { get; set; } + + /// + /// The source object ERP key for this journal entry line. + /// + public string SourceObjectErpKey { get; set; } + + /// + /// The ID of the SourceObjectType for this journal entry line. + /// + public int? SourceObjectType { get; set; } + + /// + /// If known, the date when this record was created according to the originating financial system + /// in which this record is maintained. If the originating financial system does not maintain a + /// created-date, leave this field null. + /// + public DateTime? Created { get; set; } + + /// + /// If known, the date when this record was most recently modified according to the originating + /// financial system in which this record is maintained. If the originating financial system does + /// not maintain a most-recently-modified-date, leave this field null. + /// + public DateTime? Modified { get; set; } + } +} diff --git a/src/Models/JournalEntrySyncModel.cs b/src/Models/JournalEntrySyncModel.cs new file mode 100644 index 0000000..b0ba337 --- /dev/null +++ b/src/Models/JournalEntrySyncModel.cs @@ -0,0 +1,104 @@ +/*** + * Lockstep Platform SDK for C# + * + * (c) 2021-2025 Lockstep, Inc. + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + * + * @author Lockstep Network + * @copyright 2021-2025 Lockstep, Inc. + * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp + */ + + + +#pragma warning disable CS8618 + +using System; + +namespace LockstepSDK.Models +{ + + /// + /// The JournalEntrySyncModel represents information coming into ADS from an external financial system or other + /// enterprise resource planning system. To import data from an external system, convert your original data into + /// the JournalEntrySyncModel format and call the [Upload Sync File API](https://developer.lockstep.io/reference/post_api-v1-sync-zip). + /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the ADS + /// Platform. + /// + /// Once imported, this record will be available in the ADS Platform API as a JournalEntryModel + /// + /// For more information on writing your own connector, see [Connector Data](https://developer.lockstep.io/docs/connector-data). + /// + public class JournalEntrySyncModel + { + + /// + /// Indicates what action to take when an existing object has been found during the sync process. + /// + public int? OnMatchAction { get; set; } + + /// + /// This is the primary key of the Journal Entry record. For this field, you should use whatever the Journal Entry's unique + /// identifying number is in the originating system. Search for a unique, non-changing number within the + /// originating financial system for this record. + /// + /// Example: If you store your Journal Entry records in a database, whatever the primary key for the Journal Entry table is + /// in the database should be the "ErpKey". + /// + /// For more information, see [Identity Columns](https://developer.lockstep.io/docs/identity-columns). + /// + public string ErpKey { get; set; } + + /// + /// The ERP’s identifier for this journal entry, usually has meaning to the user. + /// May be the same value of the ERP Key. + /// + public string JournalId { get; set; } + + /// + /// Possible sources for a Journal Entry. + /// + public int? Source { get; set; } + + /// + /// Possible statuses for a Journal Entry. + /// + public int? Status { get; set; } + + /// + /// A brief description explaining the purpose of the journal entry. + /// + public string Description { get; set; } + + /// + /// An additional comment related to the entry. + /// + public string Comment { get; set; } + + /// + /// Any reference number or identifier associated with the entry, such as an invoice number or purchase order. + /// + public string ReferenceNumber { get; set; } + + /// + /// The raw posting date from the source. + /// + public DateTime? SourcePostingDate { get; set; } + + /// + /// If known, the date when this record was created according to the originating financial system + /// in which this record is maintained. If the originating financial system does not maintain a + /// created-date, leave this field null. + /// + public DateTime? Created { get; set; } + + /// + /// If known, the date when this record was most recently modified according to the originating + /// financial system in which this record is maintained. If the originating financial system does + /// not maintain a most-recently-modified-date, leave this field null. + /// + public DateTime? Modified { get; set; } + } +} diff --git a/src/Models/MagicLinkModel.cs b/src/Models/MagicLinkModel.cs index c4d38ee..7e3ccde 100644 --- a/src/Models/MagicLinkModel.cs +++ b/src/Models/MagicLinkModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,19 +21,19 @@ namespace LockstepSDK.Models { /// - /// Represents a magic link that can be used to log in to a Lockstep application. + /// Represents a magic link that can be used to log in to a ADS Platform application. /// public class MagicLinkModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS when this record is + /// added to the ADS Platform. /// public Guid? MagicLinkId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS Platform account. All records for this /// account will share the same GroupKey value. GroupKey values cannot be changed once created. /// public Guid? GroupKey { get; set; } @@ -88,11 +88,6 @@ public class MagicLinkModel /// public Guid? CompanyId { get; set; } - /// - /// The ID of the accounting profile associated to this magic link - /// - public Guid? AccountingProfileId { get; set; } - /// /// The created magic link URL. This will only be returned upon creation of the magic link. /// All other times, this value will be `null`. @@ -114,5 +109,25 @@ public class MagicLinkModel /// Possible statuses for a Magic Link. /// public int? Status { get; set; } + + /// + /// A collection of notes linked to this record. To retrieve this collection, specify `Notes` in the + /// `include` parameter when retrieving data. + /// + /// To create a note, use the [Create Note](https://developer.lockstep.io/reference/post_api-v1-notes) + /// endpoint with the `TableKey` to `MagicLink` and the `ObjectKey` set to the `MagicLinkId` for this record. For + /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). + /// + public NoteModel[] Notes { get; set; } + + /// + /// A collection of custom fields linked to this record. To retrieve this collection, specify + /// `CustomFieldValues` in the `include` parameter when retrieving data. + /// + /// To create a custom field, use the [Create Custom Field](https://developer.lockstep.io/reference/post_api-v1-customfieldvalues) + /// endpoint with the `TableKey` to `MagicLink` and the `ObjectKey` set to the `MagicLinkId` for this record. For + /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). + /// + public CustomFieldValueModel[] CustomFieldValues { get; set; } } } diff --git a/src/Models/MagicLinkStatusModel.cs b/src/Models/MagicLinkStatusModel.cs index 8c7a99e..9559659 100644 --- a/src/Models/MagicLinkStatusModel.cs +++ b/src/Models/MagicLinkStatusModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -41,11 +41,6 @@ public class MagicLinkStatusModel /// public Guid? CompanyId { get; set; } - /// - /// The id of the accounting profile for the Magic Link - /// - public Guid? AccountingProfileId { get; set; } - /// /// The UTC date and time when this magic link expires. /// diff --git a/src/Models/MagicLinkSummaryModel.cs b/src/Models/MagicLinkSummaryModel.cs index 8e502fc..f9f7f46 100644 --- a/src/Models/MagicLinkSummaryModel.cs +++ b/src/Models/MagicLinkSummaryModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ diff --git a/src/Models/PaymentModelErpWriteResult.cs b/src/Models/PaymentModelErpWriteResult.cs deleted file mode 100644 index b86dc05..0000000 --- a/src/Models/PaymentModelErpWriteResult.cs +++ /dev/null @@ -1,62 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Contains results of a write back request - /// - public class PaymentModelErpWriteResult - { - - /// - /// The id of the connected AppEnrollmentModel - /// - public Guid? AppEnrollmentId { get; set; } - - /// - /// The ErpKey for the object written to the Erp if created - /// - public string ErpKey { get; set; } - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// An optional message to return with the result - /// - public string Message { get; set; } - - /// - /// The id of the SyncRequestModel the requests were added to - /// - public Guid? SyncRequestId { get; set; } - - /// - /// Results from the ERP write operation - /// - public PaymentModel[] Results { get; set; } - } -} diff --git a/src/Models/PaymentSummaryModelPaymentSummaryTotalsModelSummaryFetchResult.cs b/src/Models/PaymentSummaryModelPaymentSummaryTotalsModelSummaryFetchResult.cs deleted file mode 100644 index 4e051e7..0000000 --- a/src/Models/PaymentSummaryModelPaymentSummaryTotalsModelSummaryFetchResult.cs +++ /dev/null @@ -1,41 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - public class PaymentSummaryModelPaymentSummaryTotalsModelSummaryFetchResult - { - - public int? TotalCount { get; set; } - - public int? PageSize { get; set; } - - public int? PageNumber { get; set; } - - public PaymentSummaryModel[] Records { get; set; } - - /// - /// The totals for a Payment Summary - /// - public PaymentSummaryTotalsModel Summary { get; set; } - - public SummaryAgingTotalsModel[] AgingSummary { get; set; } - } -} diff --git a/src/Models/PaymentSummaryTotalsModel.cs b/src/Models/PaymentSummaryTotalsModel.cs deleted file mode 100644 index fa9926c..0000000 --- a/src/Models/PaymentSummaryTotalsModel.cs +++ /dev/null @@ -1,39 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// The totals for a Payment Summary - /// - public class PaymentSummaryTotalsModel - { - - /// - /// The total amount paid. - /// - public decimal? TotalPaidAmount { get; set; } - - /// - /// The total amount unapplied. - /// - public decimal? TotalUnappliedBalance { get; set; } - } -} diff --git a/src/Models/PublicCompanyProfileModel.cs b/src/Models/PublicCompanyProfileModel.cs deleted file mode 100644 index 864fe93..0000000 --- a/src/Models/PublicCompanyProfileModel.cs +++ /dev/null @@ -1,59 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Contains Public Company Profile data. - /// - public class PublicCompanyProfileModel - { - - /// - /// The unique ID of the company associated with this profile. - /// - public Guid? CompanyId { get; set; } - - /// - /// The short name of the company associated with this profile. - /// - public string CompanyName { get; set; } - - /// - /// The URL of this company's logo, if known. - /// - public string CompanyLogoUrl { get; set; } - - /// - /// Website URL for the company associated with this profile. - /// - public string Website { get; set; } - - /// - /// Description of the company associated with this profile. - /// - public string Description { get; set; } - - /// - /// The public url slug for this Public Company Profile. - /// - public string PublicUrlSlug { get; set; } - } -} diff --git a/src/Models/SummaryAgingTotalsModel.cs b/src/Models/SummaryAgingTotalsModel.cs index 116f2f4..47d25de 100644 --- a/src/Models/SummaryAgingTotalsModel.cs +++ b/src/Models/SummaryAgingTotalsModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ diff --git a/src/Models/SupportAccessModel.cs b/src/Models/SupportAccessModel.cs index dd8b559..af111b2 100644 --- a/src/Models/SupportAccessModel.cs +++ b/src/Models/SupportAccessModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,7 +21,7 @@ namespace LockstepSDK.Models { /// - /// Contains information for Lockstep to support/assist a user. + /// Contains information for ADS Platform to support/assist a user. /// public class SupportAccessModel { diff --git a/src/Models/SupportAccessRequest.cs b/src/Models/SupportAccessRequest.cs deleted file mode 100644 index 0e5dc8b..0000000 --- a/src/Models/SupportAccessRequest.cs +++ /dev/null @@ -1,34 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Sets support access data for a user. - /// - public class SupportAccessRequest - { - - /// - /// The UTC date and time when support access should expire. - /// - public DateTime? ExpiresAt { get; set; } - } -} diff --git a/src/Models/SyncOperationType.cs b/src/Models/SyncOperationType.cs deleted file mode 100644 index dd64925..0000000 --- a/src/Models/SyncOperationType.cs +++ /dev/null @@ -1,22 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ -} diff --git a/src/models/InviteModel.cs b/src/Models/TaxSummaryModel.cs similarity index 52% rename from src/models/InviteModel.cs rename to src/Models/TaxSummaryModel.cs index c8ee06c..0deeda9 100644 --- a/src/models/InviteModel.cs +++ b/src/Models/TaxSummaryModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,29 +21,29 @@ namespace LockstepSDK.Models { /// - /// Model from the User invite process + /// Represents the tax information for this invoice /// - public class InviteModel + public class TaxSummaryModel { /// - /// The invited email address + /// The tax code for this invoice /// - public string Email { get; set; } + public string TaxCode { get; set; } /// - /// True if the invite was sent successfully + /// The tax rate for this invoice /// - public bool? Success { get; set; } + public decimal? TaxRate { get; set; } /// - /// The invited user, may be null if the user could not be invited + /// The tax total for this invoice /// - public UserAccountModel InvitedUser { get; set; } + public decimal? TaxTotal { get; set; } /// - /// The error message if the invite was not successful + /// The base currency tax total for this invoice /// - public string ErrorMessage { get; set; } + public decimal? BaseCurrencyTaxTotal { get; set; } } } diff --git a/src/Models/TransactionCurrencySummaryModel.cs b/src/Models/TransactionCurrencySummaryModel.cs new file mode 100644 index 0000000..e5617e3 --- /dev/null +++ b/src/Models/TransactionCurrencySummaryModel.cs @@ -0,0 +1,44 @@ +/*** + * Lockstep Platform SDK for C# + * + * (c) 2021-2025 Lockstep, Inc. + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + * + * @author Lockstep Network + * @copyright 2021-2025 Lockstep, Inc. + * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp + */ + + + +#pragma warning disable CS8618 + +using System; + +namespace LockstepSDK.Models +{ + + /// + /// Represents transaction summary information based on the query request within the group account, grouped by currency. + /// + public class TransactionCurrencySummaryModel + { + + /// + /// The currency code for the summary. + /// + public string CurrencyCode { get; set; } + + /// + /// Total value of all transactions from the query request for the specified currency. + /// + public decimal? TotalAmount { get; set; } + + /// + /// Total outstanding amount value of all transactions from the query request for the specified currency. + /// + public decimal? OutstandingAmount { get; set; } + } +} diff --git a/src/Models/TransactionDetailModel.cs b/src/Models/TransactionDetailModel.cs index 57ade75..eeb844b 100644 --- a/src/Models/TransactionDetailModel.cs +++ b/src/Models/TransactionDetailModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -118,5 +118,17 @@ public class TransactionDetailModel /// call to Invoices/{id}/pdf or Payments/{id}/pdf can be made to retrieve a pdf directly from the erp. /// public bool? SupportsErpPdfRetrieval { get; set; } + + /// + /// Specific payment transactions have a status with Service Fabric. + /// + /// Recognized values are: + /// * PENDING + /// * PAID + /// * PAID_OFFLINE + /// * PARTIALLY + /// * PARTIALLY_REFUNDED + /// + public string ServiceFabricStatus { get; set; } } } diff --git a/src/Models/TransactionModel.cs b/src/Models/TransactionModel.cs index 8e892fb..6666752 100644 --- a/src/Models/TransactionModel.cs +++ b/src/Models/TransactionModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -135,5 +135,27 @@ public class TransactionModel /// call to Invoices/{id}/pdf or Payments/{id}/pdf can be made to retrieve a pdf directly from the erp. /// public bool? SupportsErpPdfRetrieval { get; set; } + + /// + /// The customer associated with this transaction + /// + public Guid? TransactionCustomerId { get; set; } + + /// + /// The name of the customer associated with this transaction + /// + public string TransactionCustomerName { get; set; } + + /// + /// Specific payment transactions have a status with Service Fabric. + /// + /// Recognized values are: + /// * PENDING + /// * PAID + /// * PAID_OFFLINE + /// * PARTIALLY + /// * PARTIALLY_REFUNDED + /// + public string ServiceFabricStatus { get; set; } } } diff --git a/src/Models/TransactionModelTransactionSummaryTotalModelSummaryFetchResult.cs b/src/Models/TransactionModelTransactionSummaryTotalModelSummaryFetchResult.cs index 67be2fb..6584ac5 100644 --- a/src/Models/TransactionModelTransactionSummaryTotalModelSummaryFetchResult.cs +++ b/src/Models/TransactionModelTransactionSummaryTotalModelSummaryFetchResult.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -37,5 +37,7 @@ public class TransactionModelTransactionSummaryTotalModelSummaryFetchResult public TransactionSummaryTotalModel Summary { get; set; } public SummaryAgingTotalsModel[] AgingSummary { get; set; } + + public TransactionCurrencySummaryModel[] CurrencySummaries { get; set; } } } diff --git a/src/Models/TransactionSummaryTotalModel.cs b/src/Models/TransactionSummaryTotalModel.cs index 84b1ec4..9998a69 100644 --- a/src/Models/TransactionSummaryTotalModel.cs +++ b/src/Models/TransactionSummaryTotalModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ diff --git a/src/Models/TranscriptionRequestSubmit.cs b/src/Models/TranscriptionRequestSubmit.cs deleted file mode 100644 index ef29cf3..0000000 --- a/src/Models/TranscriptionRequestSubmit.cs +++ /dev/null @@ -1,54 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// A request to transcribe the provided file content to a Lockstep Platform object. - /// - public class TranscriptionRequestSubmit - { - - /// - /// The base64 string of document content - /// - public string FileContent { get; set; } - - /// - /// The location of the file provided - /// - public string FileContentUrl { get; set; } - - /// - /// The name of the file provided - /// - public string FileName { get; set; } - - /// - /// The type of TranscriptionRequestSubmit.InvoiceTypeCode requested to transcribe content to. - /// - public string InvoiceTypeCode { get; set; } - - /// - /// Group account transcription validation request item is associated with. - /// - public Guid? TranscriptionValidationRequestId { get; set; } - } -} diff --git a/src/Models/TranscriptionValidationRequestItemModel.cs b/src/Models/TranscriptionValidationRequestItemModel.cs deleted file mode 100644 index 65b373d..0000000 --- a/src/Models/TranscriptionValidationRequestItemModel.cs +++ /dev/null @@ -1,125 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents a transcription validation request item to be validated. - /// - public class TranscriptionValidationRequestItemModel - { - - /// - /// The unique identifier of the transcription validation request item. - /// - public Guid? TranscriptionValidationRequestItemId { get; set; } - - /// - /// The ID number of the transcription validation request this item belongs to. - /// - public Guid? TranscriptionValidationRequestId { get; set; } - - /// - /// Group account transcription validation request item is associated with. - /// - public Guid? GroupKey { get; set; } - - /// - /// Generated hash of the file being validated. - /// - public string FileHash { get; set; } - - /// - /// Original name of the file on disk, without its extension. - /// - public string FileName { get; set; } - - /// - /// Original extension name of the file on disk. - /// - public string FileExt { get; set; } - - /// - /// Location of file in blob storage to be validated. - /// - public string FileLocation { get; set; } - - /// - /// Transcription result - /// - public string TranscriptionResult { get; set; } - - /// - /// Transcription process start date - /// - public DateTime? ProcessStart { get; set; } - - /// - /// Transcription process end date - /// - public DateTime? ProcessEnd { get; set; } - - /// - /// Amount of times item was processed to retrieve the transcription data - /// - public int? RetryCount { get; set; } - - /// - /// Feedback result specified by the client when the transcription result is not correct. This feedback result will be sent back to the transcription services to retrain and improve models over time. - /// - public string FeedbackResult { get; set; } - - /// - /// Date when feedback result was sent back to transcription service. - /// - public DateTime? FeedbackSent { get; set; } - - /// - /// A code identifying the status of this transcription validation request item. - /// - /// Recognized Transcription Validation Request status codes are: - /// * `New` - Represents a transcription validation request item that is considered new and needs work to complete - /// * `In Progress` - Represents a transcription validation request item that is currently being worked on - /// * `Failed` - Represents a transcription validation request item that could not complete the validation process - /// * `Complete` - Represents a transcription validation request item that is considered complete and does not need any further work - /// - public string StatusCode { get; set; } - - /// - /// The date on which this transcription validation request item was created. - /// - public DateTime? Created { get; set; } - - /// - /// The ID number of the user who created this transcription validation request item. - /// - public Guid? CreatedUserId { get; set; } - - /// - /// The date on which this transcription validation request item was last modified. - /// - public DateTime? Modified { get; set; } - - /// - /// The ID number of the user who most recently modified this transcription validation request item. - /// - public Guid? ModifiedUserId { get; set; } - } -} diff --git a/src/Models/TranscriptionValidationRequestModel.cs b/src/Models/TranscriptionValidationRequestModel.cs deleted file mode 100644 index c842d9e..0000000 --- a/src/Models/TranscriptionValidationRequestModel.cs +++ /dev/null @@ -1,76 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents a transcription validation request that is used to validate if file is of a specific type. - /// - public class TranscriptionValidationRequestModel - { - - /// - /// The unique identifier of the transcription validation request. - /// - public Guid? TranscriptionValidationRequestId { get; set; } - - /// - /// Group account transcription validation request is associated with. - /// - public Guid? GroupKey { get; set; } - - /// - /// A code identifying the status of this transcription validation request. - /// - /// Recognized Transcription Validation Request status codes are: - /// * `New` - Represents a transcription validation request that is considered new and needs work to complete - /// * `In Progress` - Represents a transcription validation request that is currently being worked on - /// * `Failed` - Represents a transcription validation request that could not complete the validation process - /// * `Complete` - Represents a transcription validation request that is considered complete and does not need any further work - /// - public string StatusCode { get; set; } - - /// - /// The date on which this transcription validation request was created. - /// - public DateTime? Created { get; set; } - - /// - /// The ID number of the user who created this transcription validation request. - /// - public Guid? CreatedUserId { get; set; } - - /// - /// The date on which this transcription validation request was last modified. - /// - public DateTime? Modified { get; set; } - - /// - /// The ID number of the user who most recently modified this transcription validation request. - /// - public Guid? ModifiedUserId { get; set; } - - /// - /// All items attached to this transcription validation request. - /// To retrieve this collection, specify `Items` in the "Include" parameter for your query. - /// - public TranscriptionValidationRequestItemModel[] Items { get; set; } - } -} diff --git a/src/Models/UserDataResponseModel.cs b/src/Models/UserDataResponseModel.cs deleted file mode 100644 index d2fd2a5..0000000 --- a/src/Models/UserDataResponseModel.cs +++ /dev/null @@ -1,39 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Contains data about the current user. - /// - public class UserDataResponseModel - { - - /// - /// Data about the user, the properties returned will depend on the requested information. - /// - public object Data { get; set; } - - /// - /// The Lockstep Platform ID of the user - /// - public Guid? UserId { get; set; } - } -} diff --git a/src/Models/ViewBoxSettingsModel.cs b/src/Models/ViewBoxSettingsModel.cs deleted file mode 100644 index ce1e611..0000000 --- a/src/Models/ViewBoxSettingsModel.cs +++ /dev/null @@ -1,49 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Optional meta data for image view box settings. - /// - public class ViewBoxSettingsModel - { - - /// - /// ViewBox minX setting for this Company's logo. - /// - public decimal? LogoViewBoxMinX { get; set; } - - /// - /// ViewBox minY setting for this Company's logo. - /// - public decimal? LogoViewBoxMinY { get; set; } - - /// - /// ViewBox width setting for this Company's logo. - /// - public decimal? LogoViewBoxWidth { get; set; } - - /// - /// ViewBox height setting for this Company's logo. - /// - public decimal? LogoViewBoxHeight { get; set; } - } -} diff --git a/src/Models/WorkflowStatusModel.cs b/src/Models/WorkflowStatusModel.cs new file mode 100644 index 0000000..163960c --- /dev/null +++ b/src/Models/WorkflowStatusModel.cs @@ -0,0 +1,109 @@ +/*** + * Lockstep Platform SDK for C# + * + * (c) 2021-2025 Lockstep, Inc. + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + * + * @author Lockstep Network + * @copyright 2021-2025 Lockstep, Inc. + * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp + */ + + + +#pragma warning disable CS8618 + +using System; + +namespace LockstepSDK.Models +{ + + /// + /// A Workflow Status represents the state for a specific workflow for an entity. + /// + public class WorkflowStatusModel + { + + /// + /// The unique ID of this record, automatically assigned by ADS Platform when this record is + /// added to the Accounting Data Services platform. + /// + public Guid? Id { get; set; } + + /// + /// The name of the workflow status. + /// + public string Name { get; set; } + + /// + /// The description explaining the use of the workflow status. + /// + public string Description { get; set; } + + /// + /// The category of the workflow status. + /// + public string Category { get; set; } + + /// + /// The code of the workflow status. + /// + public string Code { get; set; } + + /// + /// Indicates whether notes are required or not. + /// + public bool? IsNotesRequired { get; set; } + + /// + /// Indicates whether a reason is required or not. + /// + public bool? IsReasonRequired { get; set; } + + /// + /// Indicates whether the status change should be reported to the ERP or not. + /// + public bool? PromoteToErp { get; set; } + + /// + /// Possible sources for a Workflow Status. + /// + public int? StatusSource { get; set; } + + /// + /// The date that the workflow status was created. + /// + public DateTime? Created { get; set; } + + /// + /// The ID of the user who created the workflow status. + /// + public Guid? CreatedUserId { get; set; } + + /// + /// The date that the workflow status was last modified. + /// + public DateTime? Modified { get; set; } + + /// + /// The ID of the user who last modified the workflow status. + /// + public Guid? ModifiedUserId { get; set; } + + /// + /// The parent workflow statuses for the workflow status. + /// + /// To retrieve this collection, specify `Parents` in the "Include" parameter for your query. + /// + public WorkflowStatusModel[] Parents { get; set; } + + /// + /// The children workflow statuses for the workflow status. + /// + /// To retrieve this collection, specify `Children` in the "Include" parameter for your query. + /// + public WorkflowStatusModel[] Children { get; set; } + } +} diff --git a/src/clients/ApiKeysClient.cs b/src/clients/ApiKeysClient.cs index 4a7fabe..227a09e 100644 --- a/src/clients/ApiKeysClient.cs +++ b/src/clients/ApiKeysClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -40,7 +40,7 @@ public ApiKeysClient(LockstepApi client) /// /// Retrieves the API Key with this identifier. /// - /// An API Key is an authentication token that you may use with the Lockstep API. Because API Keys do not have an expiration date, they are well suited for unattended processes. Each API Key is associated with a user, and may be revoked to prevent it from accessing the Lockstep API. When you create an API Key, make sure to save the value in a secure location. Lockstep cannot retrieve an API Key once it is created. + /// An API Key is an authentication token that you may use with the ADS Platform API. Because API Keys do not have an expiration date, they are well suited for unattended processes. Each API Key is associated with a user, and may be revoked to prevent it from accessing the ADS Platform API. When you create an API Key, make sure to save the value in a secure location. ADS Platform cannot retrieve an API Key once it is created. /// /// For more information, see [API Keys](https://developer.lockstep.io/docs/api-keys). /// @@ -58,14 +58,14 @@ public async Task> RetrieveAPIKey(Guid id, string /// /// Immediately revokes the API Key with the specified id so it cannot be used to call the API. /// - /// The Lockstep Platform guarantees that revocation will be received by all servers within five minutes of revocation. API calls made using this API key after the revocation will fail. A revoked API Key cannot be un-revoked and may be removed 60 days after revocation. + /// The ADS Platform guarantees that revocation will be received by all servers within five minutes of revocation. API calls made using this API key after the revocation will fail. A revoked API Key cannot be un-revoked and may be removed 60 days after revocation. /// - /// An API Key is an authentication token that you may use with the Lockstep API. Because API Keys do not have an expiration date, they are well suited for unattended processes. Each API Key is associated with a user, and may be revoked to prevent it from accessing the Lockstep API. When you create an API Key, make sure to save the value in a secure location. Lockstep cannot retrieve an API Key once it is created. + /// An API Key is an authentication token that you may use with the ADS Platform API. Because API Keys do not have an expiration date, they are well suited for unattended processes. Each API Key is associated with a user, and may be revoked to prevent it from accessing the ADS Platform API. When you create an API Key, make sure to save the value in a secure location. ADS Platform cannot retrieve an API Key once it is created. /// /// For more information, see [API Keys](https://developer.lockstep.io/docs/api-keys). /// /// - /// The unique Lockstep Platform ID number of this API Key + /// The unique ADS Platform ID number of this API Key public async Task> RevokeAPIKey(Guid id) { var url = $"/api/v1/ApiKeys/{id}"; @@ -75,7 +75,7 @@ public async Task> RevokeAPIKey(Guid id) /// /// Creates an API key with the specified name. /// - /// An API Key is an authentication token that you may use with the Lockstep API. Because API Keys do not have an expiration date, they are well suited for unattended processes. Each API Key is associated with a user, and may be revoked to prevent it from accessing the Lockstep API. When you create an API Key, make sure to save the value in a secure location. Lockstep cannot retrieve an API Key once it is created. + /// An API Key is an authentication token that you may use with the ADS Platform API. Because API Keys do not have an expiration date, they are well suited for unattended processes. Each API Key is associated with a user, and may be revoked to prevent it from accessing the ADS Platform API. When you create an API Key, make sure to save the value in a secure location. ADS Platform cannot retrieve an API Key once it is created. /// /// For more information, see [API Keys](https://developer.lockstep.io/docs/api-keys). /// @@ -90,7 +90,7 @@ public async Task> CreateAPIKey(ApiKeyModel body) /// /// Queries API Keys for this user using the specified filtering, sorting, nested fetch, and pagination rules requested. /// - /// An API Key is an authentication token that you may use with the Lockstep API. Because API Keys do not have an expiration date, they are well suited for unattended processes. Each API Key is associated with a user, and may be revoked to prevent it from accessing the Lockstep API. When you create an API Key, make sure to save the value in a secure location. Lockstep cannot retrieve an API Key once it is created. + /// An API Key is an authentication token that you may use with the ADS Platform API. Because API Keys do not have an expiration date, they are well suited for unattended processes. Each API Key is associated with a user, and may be revoked to prevent it from accessing the ADS Platform API. When you create an API Key, make sure to save the value in a secure location. ADS Platform cannot retrieve an API Key once it is created. /// /// For more information, see [API Keys](https://developer.lockstep.io/docs/api-keys). /// diff --git a/src/clients/AppEnrollmentsClient.cs b/src/clients/AppEnrollmentsClient.cs index 001dd8a..2441f73 100644 --- a/src/clients/AppEnrollmentsClient.cs +++ b/src/clients/AppEnrollmentsClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -40,7 +40,7 @@ public AppEnrollmentsClient(LockstepApi client) /// /// Retrieves the App Enrollment with this identifier. /// - /// An App Enrollment represents an app that has been enrolled to the current account. When you sign up for an app using the Lockstep Platform, you obtain an enrollment record for that app. Example types of apps include connectors and feature enhancement apps. The App Enrollment object contains information about this app, its configuration, and settings. + /// An App Enrollment represents an app that has been enrolled to the current account. When you sign up for an app using the ADS Platform, you obtain an enrollment record for that app. Example types of apps include connectors and feature enhancement apps. The App Enrollment object contains information about this app, its configuration, and settings. /// /// See [Applications and Enrollments](https://developer.lockstep.io/docs/applications-and-enrollments) for more information. /// @@ -60,7 +60,7 @@ public async Task> RetrieveAppEnrollment(Gu /// /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. For example, you can provide the field name "IsActive" and specify the new value "False"; this API will then change the value of IsActive to false. /// - /// An App Enrollment represents an app that has been enrolled to the current account. When you sign up for an app using the Lockstep Platform, you obtain an enrollment record for that app. Example types of apps include connectors and feature enhancement apps. The App Enrollment object contains information about this app, its configuration, and settings. + /// An App Enrollment represents an app that has been enrolled to the current account. When you sign up for an app using the ADS Platform, you obtain an enrollment record for that app. Example types of apps include connectors and feature enhancement apps. The App Enrollment object contains information about this app, its configuration, and settings. /// /// See [Applications and Enrollments](https://developer.lockstep.io/docs/applications-and-enrollments) for more information. /// @@ -74,7 +74,7 @@ public async Task> UpdateAppEnrollment(Guid } /// - /// Deletes the App Enrollment referred to by this unique identifier. An App Enrollment represents an app that has been enrolled to the current account. When you sign up for an app using the Lockstep Platform, you obtain an enrollment record for that app. Example types of apps include connectors and feature enhancement apps. The App Enrollment object contains information about this app, its configuration, and settings. + /// Deletes the App Enrollment referred to by this unique identifier. An App Enrollment represents an app that has been enrolled to the current account. When you sign up for an app using the ADS Platform, you obtain an enrollment record for that app. Example types of apps include connectors and feature enhancement apps. The App Enrollment object contains information about this app, its configuration, and settings. /// /// See [Applications and Enrollments](https://developer.lockstep.io/docs/applications-and-enrollments) for more information. /// @@ -92,7 +92,7 @@ public async Task> DeleteAppEnrollment(Guid id, b /// /// Creates one or more App Enrollments within this account and returns the records as created. /// - /// An App Enrollment represents an app that has been enrolled to the current account. When you sign up for an app using the Lockstep Platform, you obtain an enrollment record for that app. Example types of apps include connectors and feature enhancement apps. The App Enrollment object contains information about this app, its configuration, and settings. + /// An App Enrollment represents an app that has been enrolled to the current account. When you sign up for an app using the ADS Platform, you obtain an enrollment record for that app. Example types of apps include connectors and feature enhancement apps. The App Enrollment object contains information about this app, its configuration, and settings. /// /// See [Applications and Enrollments](https://developer.lockstep.io/docs/applications-and-enrollments) for more information. /// @@ -122,9 +122,9 @@ public async Task> ReconnectAppEnrollm /// /// Queries App Enrollments 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// - /// An App Enrollment represents an app that has been enrolled to the current account. When you sign up for an app using the Lockstep Platform, you obtain an enrollment record for that app. Example types of apps include connectors and feature enhancement apps. The App Enrollment object contains information about this app, its configuration, and settings. + /// An App Enrollment represents an app that has been enrolled to the current account. When you sign up for an app using the ADS Platform, you obtain an enrollment record for that app. Example types of apps include connectors and feature enhancement apps. The App Enrollment object contains information about this app, its configuration, and settings. /// /// See [Applications and Enrollments](https://developer.lockstep.io/docs/applications-and-enrollments) for more information. /// @@ -147,11 +147,11 @@ public async Task>> QueryAppEnr } /// - /// Queries custom fields settings for app enrollment within the Lockstep platform using the specified filtering, sorting, nested fetch, and pagination rules requested. + /// Queries custom fields settings for app enrollment within the ADS Platform 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// - /// An App Enrollment represents an app that has been enrolled to the current account. When you sign up for an app using the Lockstep Platform, you obtain an enrollment record for that app. Example types of apps include connectors and feature enhancement apps. The App Enrollment object contains information about this app, its configuration, and settings. + /// An App Enrollment represents an app that has been enrolled to the current account. When you sign up for an app using the ADS Platform, you obtain an enrollment record for that app. Example types of apps include connectors and feature enhancement apps. The App Enrollment object contains information about this app, its configuration, and settings. /// /// See [Applications and Enrollments](https://developer.lockstep.io/docs/applications-and-enrollments) for more information. /// diff --git a/src/clients/ApplicationsClient.cs b/src/clients/ApplicationsClient.cs index a5f055c..d10d152 100644 --- a/src/clients/ApplicationsClient.cs +++ b/src/clients/ApplicationsClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -40,7 +40,7 @@ public ApplicationsClient(LockstepApi client) /// /// Retrieves the Application with this identifier. /// - /// An Application represents a feature available to customers within the Lockstep Platform. You can create Applications by working with your Lockstep business development manager and publish them on the platform so that customers can browse and find your Application on the Lockstep Platform Marketplace. When a customer adds an Application to their account, they obtain an AppEnrollment which represents that customer's instance of this Application. The customer-specific AppEnrollment contains a customer's configuration data for the Application, which is not customer-specific. + /// An Application represents a feature available to customers within the ADS Platform. You can create Applications by working with your ADS Platform business development manager and publish them on the platform so that customers can browse and find your Application on the ADS Platform Marketplace. When a customer adds an Application to their account, they obtain an AppEnrollment which represents that customer's instance of this Application. The customer-specific AppEnrollment contains a customer's configuration data for the Application, which is not customer-specific. /// /// See [Applications and Enrollments](https://developer.lockstep.io/docs/applications-and-enrollments) for more information. /// @@ -56,59 +56,11 @@ public async Task> RetrieveApplication(Guid i } /// - /// Updates an existing Application with the information supplied to this PATCH call. + /// Queries Applications on the ADS Platform using the specified filtering, sorting, nested fetch, and pagination rules requested. /// - /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. For example, you can provide the field name "IsActive" and specify the new value "False"; this API will then change the value of IsActive to false. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// - /// An Application represents a feature available to customers within the Lockstep Platform. You can create Applications by working with your Lockstep business development manager and publish them on the platform so that customers can browse and find your Application on the Lockstep Platform Marketplace. When a customer adds an Application to their account, they obtain an AppEnrollment which represents that customer's instance of this Application. The customer-specific AppEnrollment contains a customer's configuration data for the Application, which is not customer-specific. - /// - /// See [Applications and Enrollments](https://developer.lockstep.io/docs/applications-and-enrollments) for more information. - /// - /// - /// The unique ID number of the Application to update - /// A list of changes to apply to this Application - public async Task> UpdateApplication(Guid id, object body) - { - var url = $"/api/v1/Applications/{id}"; - return await _client.Request(new HttpMethod("PATCH"), url, null, body, null); - } - - /// - /// Deletes the Application referred to by this unique identifier. Information about this Application is retained but after the DELETE call, this Application is no longer available for use on the Lockstep Platform. - /// - /// An Application represents a feature available to customers within the Lockstep Platform. You can create Applications by working with your Lockstep business development manager and publish them on the platform so that customers can browse and find your Application on the Lockstep Platform Marketplace. When a customer adds an Application to their account, they obtain an AppEnrollment which represents that customer's instance of this Application. The customer-specific AppEnrollment contains a customer's configuration data for the Application, which is not customer-specific. - /// - /// See [Applications and Enrollments](https://developer.lockstep.io/docs/applications-and-enrollments) for more information. - /// - /// - /// The unique ID number of the Application to delete - public async Task> DeleteApplication(Guid id) - { - var url = $"/api/v1/Applications/{id}"; - return await _client.Request(HttpMethod.Delete, url, null, null, null); - } - - /// - /// Creates one or more Applications and returns the records as created. Applications are universal and available across all accounts. - /// - /// An Application represents a feature available to customers within the Lockstep Platform. You can create Applications by working with your Lockstep business development manager and publish them on the platform so that customers can browse and find your Application on the Lockstep Platform Marketplace. When a customer adds an Application to their account, they obtain an AppEnrollment which represents that customer's instance of this Application. The customer-specific AppEnrollment contains a customer's configuration data for the Application, which is not customer-specific. - /// - /// See [Applications and Enrollments](https://developer.lockstep.io/docs/applications-and-enrollments) for more information. - /// - /// - /// The Applications to create - public async Task> CreateApplications(ApplicationModel[] body) - { - var url = $"/api/v1/Applications"; - return await _client.Request(HttpMethod.Post, url, null, body, null); - } - - /// - /// Queries Applications on the Lockstep Platform 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. - /// - /// An Application represents a feature available to customers within the Lockstep Platform. You can create Applications by working with your Lockstep business development manager and publish them on the platform so that customers can browse and find your Application on the Lockstep Platform Marketplace. When a customer adds an Application to their account, they obtain an AppEnrollment which represents that customer's instance of this Application. The customer-specific AppEnrollment contains a customer's configuration data for the Application, which is not customer-specific. + /// An Application represents a feature available to customers within the ADS Platform. You can create Applications by working with your ADS Platform business development manager and publish them on the platform so that customers can browse and find your Application on the ADS Platform Marketplace. When a customer adds an Application to their account, they obtain an AppEnrollment which represents that customer's instance of this Application. The customer-specific AppEnrollment contains a customer's configuration data for the Application, which is not customer-specific. /// /// See [Applications and Enrollments](https://developer.lockstep.io/docs/applications-and-enrollments) for more information. /// diff --git a/src/clients/AttachmentsClient.cs b/src/clients/AttachmentsClient.cs index 6df5431..bbd3b49 100644 --- a/src/clients/AttachmentsClient.cs +++ b/src/clients/AttachmentsClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -40,7 +40,7 @@ public AttachmentsClient(LockstepApi client) /// /// Retrieves the Attachment with the provided Attachment identifier. /// - /// An Attachment is a file that can be attached to various account attributes within Lockstep. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment. + /// An Attachment is a file that can be attached to various account attributes within ADS Platform. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// @@ -60,12 +60,12 @@ public async Task> RetrieveAttachment(Guid id, /// /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired. /// - /// An Attachment is a file that can be attached to various account attributes within Lockstep. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment. + /// An Attachment is a file that can be attached to various account attributes within ADS Platform. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// /// - /// The unique Lockstep Platform ID number of the attachment to update + /// The unique ADS Platform ID number of the attachment to update /// A list of changes to apply to this Attachment public async Task> UpdateAttachment(Guid id, object body) { @@ -76,7 +76,7 @@ public async Task> UpdateAttachment(Guid id, o /// /// Flag this attachment as archived, which can distinguish between attachments currently active and attachments not intended for active use. This is similar to deletion but preserves information about the record's existence. /// - /// An Attachment is a file that can be attached to various account attributes within Lockstep. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment. + /// An Attachment is a file that can be attached to various account attributes within ADS Platform. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// @@ -91,7 +91,7 @@ public async Task> ArchiveAttachment(Guid id /// /// Returns a URI for the Attachment file to be downloaded, based on the ID provided. /// - /// An Attachment is a file that can be attached to various account attributes within Lockstep. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment. + /// An Attachment is a file that can be attached to various account attributes within ADS Platform. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// @@ -103,25 +103,10 @@ public async Task> DownloadAttachmentURL(Guid id) return await _client.Request(HttpMethod.Get, url, null, null, null); } - /// - /// Returns the Attachment file to be downloaded, based on the ID provided. - /// - /// An Attachment is a file that can be attached to various account attributes within Lockstep. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment. - /// - /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. - /// - /// - /// The unique ID number of the Attachment whose URI will be returned - public async Task> DownloadAttachmentFile(Guid id) - { - var url = $"/api/v1/Attachments/{id}/download-file"; - return await _client.Request(HttpMethod.Get, url, null, null, null); - } - /// /// Uploads and creates one or more Attachments from the provided arguments. /// - /// An Attachment is a file that can be attached to various account attributes within Lockstep. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment. + /// An Attachment is a file that can be attached to various account attributes within ADS Platform. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// @@ -143,9 +128,9 @@ public async Task> UploadAttachment(string t /// /// Queries Attachments 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// - /// An Attachment is a file that can be attached to various account attributes within Lockstep. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment. + /// An Attachment is a file that can be attached to various account attributes within ADS Platform. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// diff --git a/src/clients/CodeDefinitionsClient.cs b/src/clients/CodeDefinitionsClient.cs index a41ad2e..7d015d6 100644 --- a/src/clients/CodeDefinitionsClient.cs +++ b/src/clients/CodeDefinitionsClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -43,7 +43,7 @@ public CodeDefinitionsClient(LockstepApi client) /// A CodeDefinition contains information around system code values and their definitions. /// /// - /// The unique Lockstep Platform ID number of this CodeDefinition + /// The unique ADS Platform ID number of this CodeDefinition /// 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 public async Task> RetrieveCodeDefinition(Guid id, string include = null) { @@ -56,7 +56,7 @@ public async Task> RetrieveCodeDefinition( /// /// Queries CodeDefinitions 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// /// A CodeDefinition contains information around system code values and their definitions. /// diff --git a/src/clients/CompaniesClient.cs b/src/clients/CompaniesClient.cs index a60f193..b201e16 100644 --- a/src/clients/CompaniesClient.cs +++ b/src/clients/CompaniesClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -45,7 +45,7 @@ public CompaniesClient(LockstepApi client) /// See [Vendors, Customers, and Companies](https://developer.lockstep.io/docs/companies-customers-and-vendors) for more information. /// /// - /// The unique Lockstep Platform ID number of this Company; NOT the customer's ERP key + /// The unique ADS Platform ID number of this Company; NOT the customer's ERP key /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Attachments, Contacts, CustomFields, Invoices, Notes, Classification public async Task> RetrieveCompany(Guid id, string include = null) { @@ -55,73 +55,10 @@ public async Task> RetrieveCompany(Guid id, strin return await _client.Request(HttpMethod.Get, url, options, null, null); } - /// - /// Updates a Company that matches the specified id with the requested information. - /// - /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired. - /// - /// A Company represents a customer, a vendor, or a company within the organization of the account holder. Companies can have parents and children, representing an organizational hierarchy of corporate entities. You can use Companies to track projects and financial data under this Company label. - /// - /// See [Vendors, Customers, and Companies](https://developer.lockstep.io/docs/companies-customers-and-vendors) for more information. - /// - /// - /// The unique Lockstep Platform ID number of this Company; NOT the customer's ERP key - /// A list of changes to apply to this Company - public async Task> UpdateCompany(Guid id, object body) - { - var url = $"/api/v1/Companies/{id}"; - return await _client.Request(new HttpMethod("PATCH"), url, null, body, null); - } - - /// - /// Delete the Company referred to by this unique identifier. - /// - /// A Company represents a customer, a vendor, or a company within the organization of the account holder. Companies can have parents and children, representing an organizational hierarchy of corporate entities. You can use Companies to track projects and financial data under this Company label. - /// - /// See [Vendors, Customers, and Companies](https://developer.lockstep.io/docs/companies-customers-and-vendors) for more information. - /// - /// - /// The unique Lockstep Platform ID number of this Company; NOT the customer's ERP key - public async Task> DeleteCompany(Guid id) - { - var url = $"/api/v1/Companies/{id}"; - return await _client.Request(HttpMethod.Delete, url, null, null, null); - } - - /// - /// Creates one or more Companies from a given model. - /// - /// A Company represents a customer, a vendor, or a company within the organization of the account holder. Companies can have parents and children, representing an organizational hierarchy of corporate entities. You can use Companies to track projects and financial data under this Company label. - /// - /// See [Vendors, Customers, and Companies](https://developer.lockstep.io/docs/companies-customers-and-vendors) for more information. - /// - /// - /// The Companies to create - public async Task> CreateCompanies(CompanyModel[] body) - { - var url = $"/api/v1/Companies"; - return await _client.Request(HttpMethod.Post, url, null, body, null); - } - - /// - /// Delete the Companies referred to by these unique identifiers. - /// - /// A Company represents a customer, a vendor, or a company within the organization of the account holder. Companies can have parents and children, representing an organizational hierarchy of corporate entities. You can use Companies to track projects and financial data under this Company label. - /// - /// See [Vendors, Customers, and Companies](https://developer.lockstep.io/docs/companies-customers-and-vendors) for more information. - /// - /// - /// The unique Lockstep Platform ID numbers of the Companies to delete; NOT the customer's ERP key - public async Task> DeleteCompanies(BulkDeleteRequestModel body) - { - var url = $"/api/v1/Companies"; - return await _client.Request(HttpMethod.Delete, url, null, body, null); - } - /// /// Queries Companies 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// /// A Company represents a customer, a vendor, or a company within the organization of the account holder. Companies can have parents and children, representing an organizational hierarchy of corporate entities. You can use Companies to track projects and financial data under this Company label. /// @@ -146,12 +83,6 @@ public async Task>> QueryCompanies(st } /// - /// Queries Customer Summaries 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. - /// - /// The Customer Summary View represents a slightly different view of the data and includes some extra fields that might be useful. For more information, see the data format of the Customer Summary Model. - /// /// See [Vendors, Customers, and Companies](https://developer.lockstep.io/docs/companies-customers-and-vendors) for more information. /// /// @@ -160,59 +91,8 @@ public async Task>> QueryCompanies(st /// The sort order for the results, in the [Searchlight order syntax](https://github.com/tspence/csharp-searchlight). /// The page size for results (default 250, maximum of 500) /// The page number for results (default 0) - /// The date to calculate the fields on. If no date is entered the current UTC date will be used. - public async Task>> QueryCustomerSummary(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null, DateTime? reportDate = null) - { - var url = $"/api/v1/Companies/views/customer-summary"; - var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - if (reportDate != null) { options["reportDate"] = reportDate; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); - } - - /// - /// Queries Vendor Summaries 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. - /// - /// The Vendor Summary View represents a slightly different view of the data and includes some extra fields that might be useful. For more information, see the data format of the Vendor Summary Model. - /// - /// See [Vendors, Customers, and Companies](https://developer.lockstep.io/docs/companies-customers-and-vendors) for more information. - /// - /// - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// 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 - /// The sort order for the results, in the [Searchlight order syntax](https://github.com/tspence/csharp-searchlight). - /// The page size for results (default 250, maximum of 500) - /// The page number for results (default 0) - /// The date to calculate the fields on. If no date is entered the current UTC date will be used. - public async Task>> QueryVendorSummary(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null, DateTime? reportDate = null) - { - var url = $"/api/v1/Companies/views/vendor-summary"; - var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - if (reportDate != null) { options["reportDate"] = reportDate; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); - } - - /// - /// See [Vendors, Customers, and Companies](https://developer.lockstep.io/docs/companies-customers-and-vendors) for more information. - /// - /// - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// 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 - /// The sort order for the results, in the [Searchlight order syntax](https://github.com/tspence/csharp-searchlight). - /// The page size for results (default 250, maximum of 500) - /// The page number for results (default 0) - public async Task>> QueryMagicLinkSummary(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) + /// Generates query data based on legacy approach of executing SQL view queries. + public async Task>> QueryMagicLinkSummary(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null, bool? legacy = null) { var url = $"/api/v1/Companies/views/magic-link-summary"; var options = new Dictionary(); @@ -221,63 +101,8 @@ public async Task>> Q if (order != null) { options["order"] = order; } if (pageSize != null) { options["pageSize"] = pageSize; } if (pageNumber != null) { options["pageNumber"] = pageNumber; } + if (legacy != null) { options["legacy"] = legacy; } return await _client.Request>(HttpMethod.Get, url, options, null, null); } - - /// - /// Retrieves the Company Details specified by this unique identifier, optionally including nested data sets. - /// - /// The Company Detail View represents a slightly different view of the data and includes some extra fields that might be useful. For more information, see the data format of the Company Detail Model. - /// - /// See [Vendors, Customers, and Companies](https://developer.lockstep.io/docs/companies-customers-and-vendors) for more information. - /// - /// - /// The unique Lockstep Platform ID number of this Company; NOT the company's ERP key - public async Task> RetrieveCompanyDetail(Guid id) - { - var url = $"/api/v1/Companies/views/details/{id}"; - return await _client.Request(HttpMethod.Get, url, null, null, null); - } - - /// - /// Sets the logo for specified company. The logo will be stored in the Lockstep Platform and will be **publicly accessible**. - /// - /// .jpg, .jpeg, .png, and .webp are supported. 2MB maximum. If no logo is uploaded, the existing logo will be deleted. - /// - /// A Company represents a customer, a vendor, or a company within the organization of the account holder. Companies can have parents and children, representing an organizational hierarchy of corporate entities. You can use Companies to track projects and financial data under this Company label. - /// - /// Optional view box meta data for the provided logo may be supplied using the following query parameters. Please note that you must supply either all of the values or none of the values. <ul><li>min_x</li><li>min_y</li><li>width</li><li>height</li></ul> - /// - /// See [Vendors, Customers, and Companies](https://developer.lockstep.io/docs/companies-customers-and-vendors) for more information. - /// - /// - /// The unique Lockstep Platform ID number of this Company; NOT the customer's ERP key - /// ViewBox minX setting for this Company's logo. - /// ViewBox minY setting for this Company's logo. - /// ViewBox width setting for this Company's logo. - /// ViewBox height setting for this Company's logo. - /// The full path of a file to upload to the API - public async Task> SetCompanyLogo(Guid id, string filename, decimal? min_x = null, decimal? min_y = null, decimal? width = null, decimal? height = null) - { - var url = $"/api/v1/Companies/{id}/logo"; - var options = new Dictionary(); - if (min_x != null) { options["min_x"] = min_x; } - if (min_y != null) { options["min_y"] = min_y; } - if (width != null) { options["width"] = width; } - if (height != null) { options["height"] = height; } - return await _client.Request(HttpMethod.Post, url, options, null, filename); - } - - /// - /// Update view box meta data for the given Company id. - /// - /// - /// The unique Lockstep Platform ID number of this Company; NOT the customer's ERP key - /// The `ViewBoxSettingsModel` containing meta data value updates - public async Task> Updatelogoviewboxsettings(Guid id, ViewBoxSettingsModel body) - { - var url = $"/api/v1/Companies/{id}/logo-settings"; - return await _client.Request(new HttpMethod("PATCH"), url, null, body, null); - } } } diff --git a/src/clients/ContactsClient.cs b/src/clients/ContactsClient.cs index 33ac3d8..8e10260 100644 --- a/src/clients/ContactsClient.cs +++ b/src/clients/ContactsClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -43,7 +43,7 @@ public ContactsClient(LockstepApi client) /// A Contact contains information about a person or role within a Company. You can use Contacts to track information about who is responsible for a specific project, who handles invoices, or information about which role at a particular customer or vendor you should speak with about invoices. /// /// - /// The unique Lockstep Platform ID number of this Contact; NOT the customer's ERP key + /// The unique ADS Platform ID number of this Contact; NOT the customer's ERP key /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Attachments, CustomFields, Notes public async Task> RetrieveContact(Guid id, string include = null) { @@ -53,65 +53,10 @@ public async Task> RetrieveContact(Guid id, strin return await _client.Request(HttpMethod.Get, url, options, null, null); } - /// - /// Updates a contact that matches the specified id with the requested information. - /// - /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired. - /// - /// A Contact contains information about a person or role within a Company. You can use Contacts to track information about who is responsible for a specific project, who handles invoices, or information about which role at a particular customer or vendor you should speak with about invoices. - /// - /// - /// The unique Lockstep Platform ID number of the Contact to update; NOT the customer's ERP key - /// A list of changes to apply to this Contact - public async Task> UpdateContact(Guid id, object body) - { - var url = $"/api/v1/Contacts/{id}"; - return await _client.Request(new HttpMethod("PATCH"), url, null, body, null); - } - - /// - /// Delete the Contact referred to by this unique identifier. - /// - /// A Contact contains information about a person or role within a Company. You can use Contacts to track information about who is responsible for a specific project, who handles invoices, or information about which role at a particular customer or vendor you should speak with about invoices. - /// - /// - /// The unique Lockstep Platform ID number of the Contact to delete; NOT the customer's ERP key - public async Task> DeleteContact(Guid id) - { - var url = $"/api/v1/Contacts/{id}"; - return await _client.Request(HttpMethod.Delete, url, null, null, null); - } - - /// - /// Creates one or more contacts from a given model. - /// - /// A Contact contains information about a person or role within a Company. You can use Contacts to track information about who is responsible for a specific project, who handles invoices, or information about which role at a particular customer or vendor you should speak with about invoices. - /// - /// - /// The Contacts to create - public async Task> CreateContacts(ContactModel[] body) - { - var url = $"/api/v1/Contacts"; - return await _client.Request(HttpMethod.Post, url, null, body, null); - } - - /// - /// Delete the Contacts referred to by these unique identifiers. - /// - /// A Contact contains information about a person or role within a Company. You can use Contacts to track information about who is responsible for a specific project, who handles invoices, or information about which role at a particular customer or vendor you should speak with about invoices. - /// - /// - /// The unique Lockstep Platform ID numbers of the Contacts to delete; NOT the customer's ERP keys - public async Task> DeleteContacts(BulkDeleteRequestModel body) - { - var url = $"/api/v1/Contacts"; - return await _client.Request(HttpMethod.Delete, url, null, body, null); - } - /// /// Queries Contacts 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// /// A Contact contains information about a person or role within a Company. You can use Contacts to track information about who is responsible for a specific project, who handles invoices, or information about which role at a particular customer or vendor you should speak with about invoices. /// diff --git a/src/clients/CurrenciesClient.cs b/src/clients/CurrenciesClient.cs deleted file mode 100644 index 9648b61..0000000 --- a/src/clients/CurrenciesClient.cs +++ /dev/null @@ -1,73 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -using System; -using System.Collections.Generic; -using System.Net.Http; -using System.Threading.Tasks; -using LockstepSDK.Models; - - -namespace LockstepSDK.Clients -{ - /// - /// API methods related to Currencies - /// - public class CurrenciesClient - { - private readonly LockstepApi _client; - - /// - /// Constructor - /// - public CurrenciesClient(LockstepApi client) - { - _client = client; - } - - /// - /// Retrieve a currency conversation rate from one currency to another as of the specified date. Optionally, you can specify which currency data provider to use. - /// - /// The currency rate model contains all of the information used to make the API call, plus the rate to use for the conversion. - /// - /// - /// The ISO 4217 currency code of the origin currency. For a list of currency codes, call List Currencies. - /// The ISO 4217 currency code of the target currency. For a list of currency codes, call List Currencies. - /// The date for which we should cto use for this currency conversion. - /// Optionally, you can specify a data provider. - public async Task> Retrievecurrencyrate(string sourceCurrency, string destinationCurrency, string date = null, string dataProvider = null) - { - var url = $"/api/v1/Currencies/{sourceCurrency}/{destinationCurrency}"; - var options = new Dictionary(); - if (date != null) { options["date"] = date; } - if (dataProvider != null) { options["dataProvider"] = dataProvider; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Receives an array of dates and currencies and a destination currency and returns an array of the corresponding currency rates to the given destination currency (Limit X). - /// - /// - /// The currency to convert to. - /// A list of dates and source currencies. - public async Task> Bulkcurrencydata(BulkCurrencyConversionModel[] body, string destinationCurrency = null) - { - var url = $"/api/v1/Currencies/bulk"; - var options = new Dictionary(); - if (destinationCurrency != null) { options["destinationCurrency"] = destinationCurrency; } - return await _client.Request(HttpMethod.Post, url, options, body, null); - } - } -} diff --git a/src/clients/CustomFieldDefinitionsClient.cs b/src/clients/CustomFieldDefinitionsClient.cs index 32ceb81..86a7ee0 100644 --- a/src/clients/CustomFieldDefinitionsClient.cs +++ b/src/clients/CustomFieldDefinitionsClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -40,12 +40,12 @@ public CustomFieldDefinitionsClient(LockstepApi client) /// /// Retrieves the Custom Field Definition specified by this unique identifier. /// - /// A Custom Field represents metadata added to an object within the Lockstep Platform. Lockstep provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. + /// A Custom Field represents metadata added to an object within the ADS Platform. ADS Platform provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// /// - /// The unique Lockstep Platform ID number of this Custom Field Definition + /// The unique ADS Platform ID number of this Custom Field Definition /// To fetch additional data on this object, specify the list of elements to retrieve. No additional data collections are currently defined on this object, but may be supported in the future. public async Task> RetrieveFieldDefinition(Guid id, string include = null) { @@ -60,12 +60,12 @@ public async Task> RetrieveFieldDef /// /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired. /// - /// A Custom Field represents metadata added to an object within the Lockstep Platform. Lockstep provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. + /// A Custom Field represents metadata added to an object within the ADS Platform. ADS Platform provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// /// - /// The unique Lockstep Platform ID number of the Custom Field Definition to update + /// The unique ADS Platform ID number of the Custom Field Definition to update /// A list of changes to apply to this Custom Field Definition public async Task> UpdateFieldDefinition(Guid id, object body) { @@ -76,12 +76,12 @@ public async Task> UpdateFieldDefin /// /// Deletes the Custom Field Definition referred to by this unique identifier. /// - /// A Custom Field represents metadata added to an object within the Lockstep Platform. Lockstep provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. + /// A Custom Field represents metadata added to an object within the ADS Platform. ADS Platform provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// /// - /// The unique Lockstep Platform ID number of the Custom Field Definition to delete + /// The unique ADS Platform ID number of the Custom Field Definition to delete public async Task> DeleteFieldDefinition(Guid id) { var url = $"/api/v1/CustomFieldDefinitions/{id}"; @@ -91,7 +91,7 @@ public async Task> DeleteFieldDefinition(Gui /// /// Creates one or more Custom Field Definitions and returns the records as created. /// - /// A Custom Field represents metadata added to an object within the Lockstep Platform. Lockstep provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. + /// A Custom Field represents metadata added to an object within the ADS Platform. ADS Platform provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// @@ -104,11 +104,11 @@ public async Task> CreateFieldDef } /// - /// Queries Custom Field Definitions within the Lockstep platform using the specified filtering, sorting, nested fetch, and pagination rules requested. + /// Queries Custom Field Definitions within the ADS Platform 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// - /// A Custom Field represents metadata added to an object within the Lockstep Platform. Lockstep provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. + /// A Custom Field represents metadata added to an object within the ADS Platform. ADS Platform provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// diff --git a/src/clients/CustomFieldValuesClient.cs b/src/clients/CustomFieldValuesClient.cs index ca2f513..e7a5ab4 100644 --- a/src/clients/CustomFieldValuesClient.cs +++ b/src/clients/CustomFieldValuesClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -40,13 +40,13 @@ public CustomFieldValuesClient(LockstepApi client) /// /// Retrieves all Custom Field Definitions. /// - /// A Custom Field represents metadata added to an object within the Lockstep Platform. Lockstep provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. + /// A Custom Field represents metadata added to an object within the ADS Platform. ADS Platform provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// /// - /// The unique Lockstep Platform ID number of the Custom Field Definition for the Custom Field Value to retrieve. - /// The unique Lockstep Platform ID number of the Lockstep Platform object the Custom Field Value is attached to. + /// The unique ADS Platform ID number of the Custom Field Definition for the Custom Field Value to retrieve. + /// The unique ADS Platform ID number of the ADS Platform object the Custom Field Value is attached to. /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: CustomFieldDefinition public async Task> RetrieveField(Guid definitionId, Guid recordKey, string include = null) { @@ -61,13 +61,13 @@ public async Task> RetrieveField(Guid de /// /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired. /// - /// A Custom Field represents metadata added to an object within the Lockstep Platform. Lockstep provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. + /// A Custom Field represents metadata added to an object within the ADS Platform. ADS Platform provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// /// - /// The unique Lockstep Platform ID number of the Custom Field Definition for the Custom Field Value to retrieve. - /// The unique Lockstep Platform ID number of the Lockstep Platform object the Custom Field Value is attached to. + /// The unique ADS Platform ID number of the Custom Field Definition for the Custom Field Value to retrieve. + /// The unique ADS Platform ID number of the ADS Platform object the Custom Field Value is attached to. /// A list of changes to apply to this Custom Field public async Task> UpdateField(Guid definitionId, Guid recordKey, object body) { @@ -78,13 +78,13 @@ public async Task> UpdateField(Guid defi /// /// Deletes the Custom Field referred to by this unique identifier. /// - /// A Custom Field represents metadata added to an object within the Lockstep Platform. Lockstep provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. + /// A Custom Field represents metadata added to an object within the ADS Platform. ADS Platform provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// /// - /// The unique Lockstep Platform ID number of the Custom Field Definition for the Custom Field Value to retrieve. - /// The unique Lockstep Platform ID number of the Lockstep Platform object the Custom Field Value is attached to. + /// The unique ADS Platform ID number of the Custom Field Definition for the Custom Field Value to retrieve. + /// The unique ADS Platform ID number of the ADS Platform object the Custom Field Value is attached to. public async Task> DeleteField(Guid definitionId, Guid recordKey) { var url = $"/api/v1/CustomFieldValues/{definitionId}/{recordKey}"; @@ -94,7 +94,7 @@ public async Task> DeleteField(Guid definiti /// /// Creates one or more Custom Fields and returns the records as created. /// - /// A Custom Field represents metadata added to an object within the Lockstep Platform. Lockstep provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. + /// A Custom Field represents metadata added to an object within the ADS Platform. ADS Platform provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// @@ -107,11 +107,11 @@ public async Task> CreateFields(Custom } /// - /// Queries Custom Fields within the Lockstep platform using the specified filtering, sorting, nested fetch, and pagination rules requested. + /// Queries Custom Fields within the ADS Platform 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// - /// A Custom Field represents metadata added to an object within the Lockstep Platform. Lockstep provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. + /// A Custom Field represents metadata added to an object within the ADS Platform. ADS Platform provides a core definition for each object. The core definition is intended to represent a level of compatibility that provides support across most accounting systems and products. When a user or developer requires information beyond this core definition, you can use Custom Fields to represent this information. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// diff --git a/src/clients/DefinitionsClient.cs b/src/clients/DefinitionsClient.cs index fdf6278..6b1fc6f 100644 --- a/src/clients/DefinitionsClient.cs +++ b/src/clients/DefinitionsClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -40,9 +40,10 @@ public DefinitionsClient(LockstepApi client) /// /// Queries the ISO3166 List of Countries 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform 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. + /// /// /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) /// 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. @@ -62,11 +63,12 @@ public async Task>> QueryCountries(st } /// - /// Queries Currencies on the Lockstep Platform using the specified filtering, sorting, nested fetch, and pagination rules requested. + /// Queries Currencies on the ADS Platform 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform 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. + /// /// /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) /// 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. @@ -88,9 +90,10 @@ public async Task>> QueryCurrencies( /// /// Queries the list of States in the United States 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform 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. + /// /// /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) /// 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. @@ -108,29 +111,5 @@ public async Task>> QueryStates(string if (pageNumber != null) { options["pageNumber"] = pageNumber; } return await _client.Request>(HttpMethod.Get, url, options, null, null); } - - /// - /// Queries a list of financial systems 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. - /// - /// 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. - /// - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// 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. - /// The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - public async Task>> QueryFinancialSystems(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) - { - var url = $"/api/v1/Definitions/financialsystems"; - var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); - } } } diff --git a/src/clients/FinancialAccountBalanceHistoryClient.cs b/src/clients/FinancialAccountBalanceHistoryClient.cs index 93e9c81..f193c17 100644 --- a/src/clients/FinancialAccountBalanceHistoryClient.cs +++ b/src/clients/FinancialAccountBalanceHistoryClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -43,7 +43,7 @@ public FinancialAccountBalanceHistoryClient(LockstepApi client) /// A Financial Account Balance History records either the current or end of period balance for a corresponding financial account. /// /// - /// The unique Lockstep Platform ID number of this Financial Account Balance History + /// The unique ADS Platform ID number of this Financial Account Balance History public async Task> RetrieveBalanceHistory(Guid id) { var url = $"/api/v1/FinancialAccountBalanceHistory/{id}"; @@ -58,7 +58,7 @@ public async Task> Retriev /// A Financial Account Balance History records either the current or end of period balance for a corresponding financial account. /// /// - /// The unique Lockstep Platform ID number of the Financial Account Balance History to update + /// The unique ADS Platform ID number of the Financial Account Balance History to update /// A list of changes to apply to this Financial Account Balance History public async Task> UpdateBalanceHistory(Guid id, object body) { @@ -72,7 +72,7 @@ public async Task> UpdateB /// A Financial Account Balance History records either the current or end of period balance for a corresponding financial account. /// /// - /// The unique Lockstep Platform ID number of the Financial Account Balance History to disable + /// The unique ADS Platform ID number of the Financial Account Balance History to disable public async Task> DeleteBalanceHistory(Guid id) { var url = $"/api/v1/FinancialAccountBalanceHistory/{id}"; @@ -95,7 +95,7 @@ public async Task> Creat /// /// Queries Financial Account Balance History for this account using the specified filtering, sorting, 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// /// A Financial Account Balance History records either the current or end of period balance for a corresponding financial account. /// diff --git a/src/clients/FinancialAccountClient.cs b/src/clients/FinancialAccountClient.cs index 1cf2f99..012dbf5 100644 --- a/src/clients/FinancialAccountClient.cs +++ b/src/clients/FinancialAccountClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -52,7 +52,7 @@ public async Task> CreateFinancialAccoun /// Retrieves the financial account specified by this unique identifier. /// /// - /// The unique Lockstep Platform ID number of this Account; NOT the customer's ERP key + /// The unique ADS Platform ID number of this Account; NOT the customer's ERP key public async Task> RetrieveFinancialAccount(Guid id) { var url = $"/api/v1/FinancialAccount/{id}"; @@ -63,7 +63,7 @@ public async Task> RetrieveFinancialAcco /// /// /// - /// The unique Lockstep Platform ID number of the Account to update; NOT the customer's ERP key + /// The unique ADS Platform ID number of the Account to update; NOT the customer's ERP key /// A list of changes to apply to this Account public async Task> UpdateFinancialAccount(Guid id, object body) { @@ -75,7 +75,7 @@ public async Task> UpdateFinancialAccoun /// Deletes the Financial Account referred to by this unique identifier. /// /// - /// The unique Lockstep Platform ID number of the Financial Account to disable; NOT the customer's ERP key + /// The unique ADS Platform ID number of the Financial Account to disable; NOT the customer's ERP key public async Task> DeleteFinancialAccount(Guid id) { var url = $"/api/v1/FinancialAccount/{id}"; diff --git a/src/clients/FinancialYearSettingsClient.cs b/src/clients/FinancialYearSettingsClient.cs index be3089f..d6c21bd 100644 --- a/src/clients/FinancialYearSettingsClient.cs +++ b/src/clients/FinancialYearSettingsClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -43,7 +43,7 @@ public FinancialYearSettingsClient(LockstepApi client) /// A Financial Year Setting is used to to set the type, beginning, end, and number of periods of a year used to calculate accounting reports. The financial setting can either be for a specific app enrollment id via a sync or, when the financial year setting is manually created, will cover all account data without an app enrollment id. /// /// - /// The unique Lockstep Platform ID number of this Financial Year Setting + /// The unique ADS Platform ID number of this Financial Year Setting public async Task> RetrieveFinancialYearSetting(Guid id) { var url = $"/api/v1/FinancialYearSettings/{id}"; @@ -58,7 +58,7 @@ public async Task> RetrieveFinancial /// A Financial Year Setting is used to to set the type, beginning, end, and number of periods of a year used to calculate accounting reports. The financial setting can either be for a specific app enrollment id via a sync or, when the financial year setting is manually created, will cover all account data without an app enrollment id. /// /// - /// The unique Lockstep Platform ID number of the Financial Year Setting to update + /// The unique ADS Platform ID number of the Financial Year Setting to update /// A list of changes to apply to this Financial Year Setting public async Task> UpdateFinancialYearSetting(Guid id, object body) { @@ -72,7 +72,7 @@ public async Task> UpdateFinancialYe /// A Financial Year Setting is used to to set the type, beginning, end, and number of periods of a year used to calculate accounting reports. The financial setting can either be for a specific app enrollment id via a sync or, when the financial year setting is manually created, will cover all account data without an app enrollment id. /// /// - /// The unique Lockstep Platform ID number of the Financial Year Setting to disable + /// The unique ADS Platform ID number of the Financial Year Setting to disable public async Task> DeleteFinancialYearSetting(Guid id) { var url = $"/api/v1/FinancialYearSettings/{id}"; @@ -95,7 +95,7 @@ public async Task> CreateFinancialYe /// /// Queries Financial Year Settings for this account using the specified filtering, sorting, 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// /// A Financial Year Setting is used to to set the type, beginning, end, and number of periods of a year used to calculate accounting reports. The financial setting can either be for a specific app enrollment id via a sync or, when the financial year setting is manually created, will cover all account data without an app enrollment id. /// diff --git a/src/clients/GroupAccountsClient.cs b/src/clients/GroupAccountsClient.cs deleted file mode 100644 index 9cfb5b0..0000000 --- a/src/clients/GroupAccountsClient.cs +++ /dev/null @@ -1,64 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -using System; -using System.Collections.Generic; -using System.Net.Http; -using System.Threading.Tasks; -using LockstepSDK.Models; - - -namespace LockstepSDK.Clients -{ - /// - /// API methods related to GroupAccounts - /// - public class GroupAccountsClient - { - private readonly LockstepApi _client; - - /// - /// Constructor - /// - public GroupAccountsClient(LockstepApi client) - { - _client = client; - } - - /// - /// Retrieves group account data for the current user. - /// - /// - public async Task> RetrieveGroupAccountData() - { - var url = $"/api/v1/GroupAccounts/me"; - return await _client.Request(HttpMethod.Get, url, null, null, null); - } - - /// - /// Updates a group account that matches the specified id with the requested information. - /// - /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired. - /// - /// - /// The unique ID number of the Group Account to retrieve - /// A list of changes to apply to this Group Account - public async Task> UpdateGroupAccount(Guid id, object body) - { - var url = $"/api/v1/GroupAccounts/{id}"; - return await _client.Request(new HttpMethod("PATCH"), url, null, body, null); - } - } -} diff --git a/src/clients/InvoicesClient.cs b/src/clients/InvoicesClient.cs index 21f0fd2..fd83b68 100644 --- a/src/clients/InvoicesClient.cs +++ b/src/clients/InvoicesClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -40,11 +40,11 @@ public InvoicesClient(LockstepApi client) /// /// Retrieves the Invoice specified by this unique identifier, optionally including nested data sets. /// - /// 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. + /// 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 ADS 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. /// /// - /// The unique Lockstep Platform ID number of this invoice; NOT the customer's ERP key - /// 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 + /// The unique ADS Platform ID number of this invoice; NOT the customer's ERP key + /// 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, PDFSupport Note: Including PDFSupport will populate the property HasPdf public async Task> RetrieveInvoice(Guid id, string include = null) { var url = $"/api/v1/Invoices/{id}"; @@ -58,10 +58,10 @@ public async Task> RetrieveInvoice(Guid id, strin /// /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired. /// - /// 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. + /// 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 ADS 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. /// /// - /// The unique Lockstep Platform ID number of the invoice to update; NOT the customer's ERP key + /// The unique ADS Platform ID number of the invoice to update; NOT the customer's ERP key /// A list of changes to apply to this Invoice public async Task> UpdateInvoice(Guid id, object body) { @@ -70,37 +70,55 @@ public async Task> UpdateInvoice(Guid id, object } /// - /// Deletes the Invoice referred to by this unique identifier. 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. + /// Deletes the Invoice referred to by this unique identifier. 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 ADS 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. /// /// - /// The unique Lockstep Platform ID number of the invoice to delete; NOT the customer's ERP key + /// The unique ADS Platform ID number of the invoice to delete; NOT the customer's ERP key public async Task> DeleteInvoice(Guid id) { var url = $"/api/v1/Invoices/{id}"; return await _client.Request(HttpMethod.Delete, url, null, null, null); } + /// + /// 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. + /// + /// + /// The unique Accounting Data Service Platform ID number of the Invoice. + public async Task> RetrieveInvoiceWorkflowStatusHistories(Guid id) + { + var url = $"/api/v1/Invoices/{id}/workflow-status-history"; + return await _client.Request(HttpMethod.Get, url, null, null, null); + } + /// /// 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. + /// 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 ADS 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. /// /// + /// The ERP "key" of the supplier company generated by the system that originated the invoice. Only to be used with the UBL file upload multipart/form-data option. + /// The ID of the vendor company. Only to be used with the UBL file upload multipart/form-data option. /// The full path of a file to upload to the API /// Upload a UBL file or provide an InvoiceModel array - public async Task> CreateInvoices(string filename, InvoiceModel[] body) + public async Task> CreateInvoices(string filename, InvoiceModel[] body, string supplierErpKey = null, Guid? vendorId = null) { var url = $"/api/v1/Invoices"; - return await _client.Request(HttpMethod.Post, url, null, body, filename); + var options = new Dictionary(); + if (supplierErpKey != null) { options["supplierErpKey"] = supplierErpKey; } + if (vendorId != null) { options["vendorId"] = vendorId; } + return await _client.Request(HttpMethod.Post, url, options, body, filename); } /// /// Delete the Invoices referred to by these unique identifiers. /// - /// 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. + /// 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 ADS 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. /// /// - /// The unique Lockstep Platform ID numbers of the Invoices to delete; NOT the customer's ERP keys + /// The unique ADS Platform ID numbers of the Invoices to delete; NOT the customer's ERP keys public async Task> DeleteInvoices(BulkDeleteRequestModel body) { var url = $"/api/v1/Invoices"; @@ -110,13 +128,13 @@ public async Task> DeleteInvoices(BulkDeleteReque /// /// Queries Invoices 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// - /// 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. + /// 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 ADS 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. /// /// /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// 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 + /// 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, PDFSupport Note: Including PDFSupport will populate the property HasPdf /// The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) @@ -141,10 +159,10 @@ public async Task>> QueryInvoices(str /// /// 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. /// /// - /// The unique Lockstep Platform ID number of this invoice; NOT the customer's ERP key + /// The unique ADS Platform ID number of this invoice; NOT the customer's ERP key public async Task> RetrieveinvoicePDF(Guid id) { var url = $"/api/v1/Invoices/{id}/pdf"; @@ -152,53 +170,36 @@ public async Task> RetrieveinvoicePDF(Guid id) } /// - /// 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. + /// 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. /// - /// 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. + /// 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. /// - /// The Invoice Summary View represents a slightly different view of the data and includes some extra fields that might be useful. For more information, see the data format of the Invoice Summary Model. + /// For other ERPs, the supported types will depend on the synced data. /// /// - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Summary, Aging - /// The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - public async Task> QueryInvoiceSummaryView(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) + /// The unique ADS Platform ID number of this invoice; NOT the customer's ERP key + public async Task> CheckinvoicePDF(Guid id) { - var url = $"/api/v1/Invoices/views/summary"; - var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request(HttpMethod.Get, url, options, null, null); + var url = $"/api/v1/Invoices/{id}/pdf"; + return await _client.Request(HttpMethod.Head, url, null, null, null); } /// - /// Queries At Risk Invoices for this account using the specified filtering, sorting, nested fetch, and pagination rules requested. Display the results using the At Risk Invoice Summary View format. - /// - /// 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. - /// - /// The At Risk Invoice Summary View represents a slightly different view of the data and includes some extra fields that might be useful. For more information, see the data format of the At Risk Invoice Summary Model. + /// Posts a notification to Document Flow Service to send the specified e-invoice. /// /// - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// 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 - /// The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - public async Task>> QueryAtRiskView(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) + /// The unique Lockstep Platform ID number of this invoice; NOT the customer's ERP key + /// The notification type. Defaults to invoice.available if not set. + public async Task> PostNotification(Guid id, string notificationType = null) { - var url = $"/api/v1/Invoices/views/at-risk-summary"; + var url = $"/api/v1/Invoices/{id}/send"; var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); + if (notificationType != null) { options["notificationType"] = notificationType; } + return await _client.Request(HttpMethod.Post, url, options, null, null); } } -} +} \ No newline at end of file diff --git a/src/clients/LeadsClient.cs b/src/clients/LeadsClient.cs deleted file mode 100644 index fe4148b..0000000 --- a/src/clients/LeadsClient.cs +++ /dev/null @@ -1,52 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -using System; -using System.Collections.Generic; -using System.Net.Http; -using System.Threading.Tasks; -using LockstepSDK.Models; - - -namespace LockstepSDK.Clients -{ - /// - /// API methods related to Leads - /// - public class LeadsClient - { - private readonly LockstepApi _client; - - /// - /// Constructor - /// - public LeadsClient(LockstepApi client) - { - _client = client; - } - - /// - /// Creates one or more Leads within the Lockstep platform and returns the records as created. - /// - /// A Lead is a person who is interested in the Lockstep platform but needs certain new features in order to use it. If you are interested in the Lockstep platform, you can create a lead with your information and our team will prioritize the feature you need. - /// - /// The Leads to create - public async Task> CreateLeads(LeadModel[] body) - { - var url = $"/api/v1/Leads"; - return await _client.Request(HttpMethod.Post, url, null, body, null); - } - } -} diff --git a/src/clients/NotesClient.cs b/src/clients/NotesClient.cs index a696265..8fe88fc 100644 --- a/src/clients/NotesClient.cs +++ b/src/clients/NotesClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -40,7 +40,7 @@ public NotesClient(LockstepApi client) /// /// Retrieves the note with the specified note identifier. /// - /// A note is a customizable text string that can be attached to various account attributes within Lockstep. You can use notes for internal communication, correspondence with clients, or personal reminders. The Note Model represents a note and a number of different metadata attributes related to the creation, storage, and ownership of the note. + /// A note is a customizable text string that can be attached to various account attributes within ADS Platform. You can use notes for internal communication, correspondence with clients, or personal reminders. The Note Model represents a note and a number of different metadata attributes related to the creation, storage, and ownership of the note. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// @@ -58,7 +58,7 @@ public async Task> RetrieveNote(Guid id, string incl /// /// Updates the Note with the unique ID specified. /// - /// A note is a customizable text string that can be attached to various account attributes within Lockstep. You can use notes for internal communication, correspondence with clients, or personal reminders. The Note Model represents a note and a number of different metadata attributes related to the creation, storage, and ownership of the note. + /// A note is a customizable text string that can be attached to various account attributes within ADS Platform. You can use notes for internal communication, correspondence with clients, or personal reminders. The Note Model represents a note and a number of different metadata attributes related to the creation, storage, and ownership of the note. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// @@ -74,7 +74,7 @@ public async Task> UpdateNote(Guid id, object body) /// /// Archives the Note with the unique ID specified. /// - /// A note is a customizable text string that can be attached to various account attributes within Lockstep. You can use notes for internal communication, correspondence with clients, or personal reminders. The Note Model represents a note and a number of different metadata attributes related to the creation, storage, and ownership of the note. + /// A note is a customizable text string that can be attached to various account attributes within ADS Platform. You can use notes for internal communication, correspondence with clients, or personal reminders. The Note Model represents a note and a number of different metadata attributes related to the creation, storage, and ownership of the note. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// @@ -89,7 +89,7 @@ public async Task> ArchiveNote(Guid id) /// /// Creates one or more notes from the specified array of Note Models /// - /// A note is a customizable text string that can be attached to various account attributes within Lockstep. You can use notes for internal communication, correspondence with clients, or personal reminders. The Note Model represents a note and a number of different metadata attributes related to the creation, storage, and ownership of the note. + /// A note is a customizable text string that can be attached to various account attributes within ADS Platform. You can use notes for internal communication, correspondence with clients, or personal reminders. The Note Model represents a note and a number of different metadata attributes related to the creation, storage, and ownership of the note. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// @@ -102,11 +102,11 @@ public async Task> CreateNotes(NoteModel[] body) } /// - /// Queries Notes on the Lockstep Platform using the specified filtering, sorting, nested fetch, and pagination rules requested. + /// Queries Notes on the ADS Platform 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// - /// A note is a customizable text string that can be attached to various account attributes within Lockstep. You can use notes for internal communication, correspondence with clients, or personal reminders. The Note Model represents a note and a number of different metadata attributes related to the creation, storage, and ownership of the note. + /// A note is a customizable text string that can be attached to various account attributes within ADS Platform. You can use notes for internal communication, correspondence with clients, or personal reminders. The Note Model represents a note and a number of different metadata attributes related to the creation, storage, and ownership of the note. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. /// diff --git a/src/clients/PaymentsClient.cs b/src/clients/PaymentsClient.cs index edc9d1c..90aae7d 100644 --- a/src/clients/PaymentsClient.cs +++ b/src/clients/PaymentsClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -40,10 +40,10 @@ public PaymentsClient(LockstepApi client) /// /// Retrieves the Payment specified by this unique identifier, optionally including nested data sets. /// - /// A Payment represents money sent from one company to another. A single payment may contain payments for one or more invoices; it is also possible for payments to be made in advance of an invoice, for example, as a deposit. The creator of the Payment is identified by the `CustomerId` field, and the recipient of the Payment is identified by the `CompanyId` field. Most Payments are uniquely identified both by a Lockstep Platform ID number and a customer ERP "key" that was generated by the system that originated the Payment. Payments that have not been fully applied have a nonzero `UnappliedAmount` value, which represents a deposit that has been paid and not yet applied to an Invoice. + /// A Payment represents money sent from one company to another. A single payment may contain payments for one or more invoices; it is also possible for payments to be made in advance of an invoice, for example, as a deposit. The creator of the Payment is identified by the `CustomerId` field, and the recipient of the Payment is identified by the `CompanyId` field. Most Payments are uniquely identified both by a ADS Platform ID number and a customer ERP "key" that was generated by the system that originated the Payment. Payments that have not been fully applied have a nonzero `UnappliedAmount` value, which represents a deposit that has been paid and not yet applied to an Invoice. /// /// - /// The unique Lockstep Platform ID number of this Payment; NOT the customer's ERP key + /// The unique ADS Platform ID number of this Payment; NOT the customer's ERP key /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Applications, Notes, Attachments, CustomFields public async Task> RetrievePayment(Guid id, string include = null) { @@ -58,10 +58,10 @@ public async Task> RetrievePayment(Guid id, strin /// /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired. /// - /// A Payment represents money sent from one company to another. A single payment may contain payments for one or more invoices; it is also possible for payments to be made in advance of an invoice, for example, as a deposit. The creator of the Payment is identified by the `CustomerId` field, and the recipient of the Payment is identified by the `CompanyId` field. Most Payments are uniquely identified both by a Lockstep Platform ID number and a customer ERP "key" that was generated by the system that originated the Payment. Payments that have not been fully applied have a nonzero `UnappliedAmount` value, which represents a deposit that has been paid and not yet applied to an Invoice. + /// A Payment represents money sent from one company to another. A single payment may contain payments for one or more invoices; it is also possible for payments to be made in advance of an invoice, for example, as a deposit. The creator of the Payment is identified by the `CustomerId` field, and the recipient of the Payment is identified by the `CompanyId` field. Most Payments are uniquely identified both by a ADS Platform ID number and a customer ERP "key" that was generated by the system that originated the Payment. Payments that have not been fully applied have a nonzero `UnappliedAmount` value, which represents a deposit that has been paid and not yet applied to an Invoice. /// /// - /// The unique Lockstep Platform ID number of the Payment to update; NOT the customer's ERP key + /// The unique ADS Platform ID number of the Payment to update; NOT the customer's ERP key /// A list of changes to apply to this Payment public async Task> UpdatePayment(Guid id, object body) { @@ -72,10 +72,10 @@ public async Task> UpdatePayment(Guid id, object /// /// Deletes the Payment referred to by this unique identifier. /// - /// A Payment represents money sent from one company to another. A single payment may contain payments for one or more invoices; it is also possible for payments to be made in advance of an invoice, for example, as a deposit. The creator of the Payment is identified by the `CustomerId` field, and the recipient of the Payment is identified by the `CompanyId` field. Most Payments are uniquely identified both by a Lockstep Platform ID number and a customer ERP "key" that was generated by the system that originated the Payment. Payments that have not been fully applied have a nonzero `UnappliedAmount` value, which represents a deposit that has been paid and not yet applied to an Invoice. + /// A Payment represents money sent from one company to another. A single payment may contain payments for one or more invoices; it is also possible for payments to be made in advance of an invoice, for example, as a deposit. The creator of the Payment is identified by the `CustomerId` field, and the recipient of the Payment is identified by the `CompanyId` field. Most Payments are uniquely identified both by a ADS Platform ID number and a customer ERP "key" that was generated by the system that originated the Payment. Payments that have not been fully applied have a nonzero `UnappliedAmount` value, which represents a deposit that has been paid and not yet applied to an Invoice. /// /// - /// The unique Lockstep Platform ID number of the Payment to delete; NOT the customer's ERP key + /// The unique ADS Platform ID number of the Payment to delete; NOT the customer's ERP key public async Task> DeletePayment(Guid id) { var url = $"/api/v1/Payments/{id}"; @@ -85,7 +85,7 @@ public async Task> DeletePayment(Guid id) /// /// Creates one or more Payments within this account and returns the records as created. /// - /// A Payment represents money sent from one company to another. A single payment may contain payments for one or more invoices; it is also possible for payments to be made in advance of an invoice, for example, as a deposit. The creator of the Payment is identified by the `CustomerId` field, and the recipient of the Payment is identified by the `CompanyId` field. Most Payments are uniquely identified both by a Lockstep Platform ID number and a customer ERP "key" that was generated by the system that originated the Payment. Payments that have not been fully applied have a nonzero `UnappliedAmount` value, which represents a deposit that has been paid and not yet applied to an Invoice. + /// A Payment represents money sent from one company to another. A single payment may contain payments for one or more invoices; it is also possible for payments to be made in advance of an invoice, for example, as a deposit. The creator of the Payment is identified by the `CustomerId` field, and the recipient of the Payment is identified by the `CompanyId` field. Most Payments are uniquely identified both by a ADS Platform ID number and a customer ERP "key" that was generated by the system that originated the Payment. Payments that have not been fully applied have a nonzero `UnappliedAmount` value, which represents a deposit that has been paid and not yet applied to an Invoice. /// /// /// The Payments to create @@ -98,9 +98,9 @@ public async Task> CreatePayments(PaymentModel[ /// /// Queries Payments 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// - /// A Payment represents money sent from one company to another. A single payment may contain payments for one or more invoices; it is also possible for payments to be made in advance of an invoice, for example, as a deposit. The creator of the Payment is identified by the `CustomerId` field, and the recipient of the Payment is identified by the `CompanyId` field. Most Payments are uniquely identified both by a Lockstep Platform ID number and a customer ERP "key" that was generated by the system that originated the Payment. Payments that have not been fully applied have a nonzero `UnappliedAmount` value, which represents a deposit that has been paid and not yet applied to an Invoice. + /// A Payment represents money sent from one company to another. A single payment may contain payments for one or more invoices; it is also possible for payments to be made in advance of an invoice, for example, as a deposit. The creator of the Payment is identified by the `CustomerId` field, and the recipient of the Payment is identified by the `CompanyId` field. Most Payments are uniquely identified both by a ADS Platform ID number and a customer ERP "key" that was generated by the system that originated the Payment. Payments that have not been fully applied have a nonzero `UnappliedAmount` value, which represents a deposit that has been paid and not yet applied to an Invoice. /// /// /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) @@ -125,8 +125,10 @@ public async Task>> QueryPayments(str /// /// QuickBooks Online supports AR Payments. /// + /// For other ERPs, the supported types will depend on the synced data. + /// /// - /// The unique Lockstep Platform ID number of this payment; NOT the customer's ERP key + /// The unique ADS Platform ID number of this payment; NOT the customer's ERP key public async Task> RetrievepaymentPDF(Guid id) { var url = $"/api/v1/Payments/{id}/pdf"; @@ -134,74 +136,18 @@ public async Task> RetrievepaymentPDF(Guid id) } /// - /// Queries Payments for this account using the specified filtering, sorting, nested fetch, and pagination rules requested. This query endpoint provides extra data about the summary of payment information. - /// - /// 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. - /// - /// A Payment represents money sent from one company to another. A single payment may contain payments for one or more invoices; it is also possible for payments to be made in advance of an invoice, for example, as a deposit. The creator of the Payment is identified by the `CustomerId` field, and the recipient of the Payment is identified by the `CompanyId` field. Most Payments are uniquely identified both by a Lockstep Platform ID number and a customer ERP "key" that was generated by the system that originated the Payment. Payments that have not been fully applied have a nonzero `UnappliedAmount` value, which represents a deposit that has been paid and not yet applied to an Invoice. - /// - /// - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Summary, Aging - /// The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - public async Task> QueryPaymentSummaryView(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) - { - var url = $"/api/v1/Payments/views/summary"; - var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Retrieves aggregated payment data from your account. + /// Checks for whether a PDF file for this payment exists if it has been synced using an app enrollment to one of the supported apps. /// - /// - public async Task> RetrievePaymentDetailHeader() - { - var url = $"/api/v1/Payments/views/detail-header"; - return await _client.Request(HttpMethod.Get, url, null, null, null); - } - - /// - /// Queries Payments within the Lockstep platform 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. A Payment represents money sent from one company to another. A single payment may contain payments for one or more invoices; it is also possible for payments to be made in advance of an invoice, for example, as a deposit. The creator of the Payment is identified by the CustomerId field, and the recipient of the Payment is identified by the CompanyId field. Most Payments are uniquely identified both by a Lockstep Platform ID number and a customer ERP "key" that was generated by the system that originated the Payment. Payments that have not been fully applied have a nonzero UnappliedAmount value, which represents a deposit that has been paid and not yet applied to an Invoice. - /// - /// - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// 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 - /// The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - public async Task>> QueryPaymentDetailView(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) - { - var url = $"/api/v1/Payments/views/detail"; - var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); - } - - /// - /// **This API endpoint is under maintenance and may not function properly.** Schedule an ERP post request for payments. + /// QuickBooks Online supports AR Payments. /// - /// The payments must be associated with an active app enrollment and have a valid `AppEnrollmentId`. + /// For other ERPs, the supported types will depend on the synced data. /// /// - /// The payments to submit to the connected ERP - public async Task> WritepaymentstoconnectedERP(InsertPaymentRequestModelErpWriteSyncSubmitModel body) + /// The unique ADS Platform ID number of this payment; NOT the customer's ERP key + public async Task> CheckpaymentPDF(Guid id) { - var url = $"/api/v1/Payments/erp-write"; - return await _client.Request(HttpMethod.Post, url, null, body, null); + var url = $"/api/v1/Payments/{id}/pdf"; + return await _client.Request(HttpMethod.Head, url, null, null, null); } } } diff --git a/src/clients/ProvisioningClient.cs b/src/clients/ProvisioningClient.cs deleted file mode 100644 index d06a59f..0000000 --- a/src/clients/ProvisioningClient.cs +++ /dev/null @@ -1,50 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -using System; -using System.Collections.Generic; -using System.Net.Http; -using System.Threading.Tasks; -using LockstepSDK.Models; - - -namespace LockstepSDK.Clients -{ - /// - /// API methods related to Provisioning - /// - public class ProvisioningClient - { - private readonly LockstepApi _client; - - /// - /// Constructor - /// - public ProvisioningClient(LockstepApi client) - { - _client = client; - } - - /// - /// Creates a new account for a developer, sending an email with information on how to access the API. - /// - /// - public async Task> ProvisionFreeDeveloperAccount(DeveloperAccountSubmitModel body) - { - var url = $"/api/v1/Provisioning/free-account"; - return await _client.Request(HttpMethod.Post, url, null, body, null); - } - } -} diff --git a/src/clients/ReportsClient.cs b/src/clients/ReportsClient.cs index eb8d511..dd8526c 100644 --- a/src/clients/ReportsClient.cs +++ b/src/clients/ReportsClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -38,348 +38,31 @@ public ReportsClient(LockstepApi client) } /// - /// Retrieves a current Cash Flow report for this account. - /// - /// The Cash Flow report indicates the amount of payments retrieved and invoices billed within a given timeframe. You can use this report to determine the overall balance of money coming into and out of your accounts receivable and accounts payable businesses. - /// - /// - /// Number of days of data to include for the Cash Flow Report (default is 30 days from today) - public async Task> CashFlow(int? timeframe = null) - { - var url = $"/api/v1/Reports/cashflow"; - var options = new Dictionary(); - if (timeframe != null) { options["timeframe"] = timeframe; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Retrieves a current Payables Summary report for this account. - /// - /// The Payables Summary report indicates the amount of payments sent and bills received within a given timeframe. You can use this report to determine the overall balance of money coming into and out of your accounts receivable and accounts payable businesses. + /// Generates an AR Aging Report. /// /// - /// Number of days of data to include for the Payables Summary Report (default is 30 days from today) - public async Task> PayablesSummaryReport(int? timeframe = null) + /// The date used for calculation of days overdue. Defaults to current UTC date. + /// An optional Company ID to filter the aging to a specific company. + public async Task> ARAgingReport(DateTime? reportDate = null, Guid? companyId = null) { - var url = $"/api/v1/Reports/payables-summary"; - var options = new Dictionary(); - if (timeframe != null) { options["timeframe"] = timeframe; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Retrieves a current Daily Sales Outstanding (DSO) report for this account. - /// - /// Daily Sales Outstanding, or DSO, is a metric that indicates the average number of days that it takes for an invoice to be fully paid. You can use this report to identify whether a company is improving on its ability to collect on invoices. - /// - /// - /// Optional: Specify the specific report date to generate the from (default UTC now) - public async Task> DailySalesOutstanding(DateTime? reportDate = null) - { - var url = $"/api/v1/Reports/daily-sales-outstanding"; + var url = $"/api/v1/Reports/ar/aging"; var options = new Dictionary(); if (reportDate != null) { options["reportDate"] = reportDate; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Retrieves a current Days Payable Outstanding (DPO) report for this account. - /// - /// Days payable outstanding (DPO) is a financial ratio that indicates the average time (in days) that a company takes to pay its bills to its trade creditors, which may include suppliers, vendors, or financiers. - /// - /// - public async Task> DaysPayableOutstanding() - { - var url = $"/api/v1/Reports/daily-payable-outstanding"; - return await _client.Request(HttpMethod.Get, url, null, null, null); - } - - /// - /// Retrieves payable amount due for 4 time buckets (Today, 7 Days from Today, 14 Days from Today, and 30 Days from Today). - /// - /// - public async Task> PayablesComingDue() - { - var url = $"/api/v1/Reports/payables-coming-due"; - return await _client.Request(HttpMethod.Get, url, null, null, null); - } - - /// - /// Payables coming due represents the amount of cash required to pay vendor bills based on the due dates of the bills. Each bucket represents total amount due within the time period based on open Payables as of today. - /// - /// - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// 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 - /// The sort order for the results, in the [Searchlight order syntax](https://github.com/tspence/csharp-searchlight). - /// The page size for results (default 250, maximum of 500) - /// The page number for results (default 0) - public async Task>> PayablesComingDueSummary(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) - { - var url = $"/api/v1/Reports/payables-coming-due-summary"; - var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); - } - - /// - /// Retrieves total number of vendors, bills, the total amount outstanding, for a group. - /// - /// - /// The date the outstanding values are calculated on. Should be either the current day, 7 days after the current day, 14 days after the current day, or 30 days after the current day. - public async Task> PayablesComingDueHeader(DateTime reportDate) - { - var url = $"/api/v1/Reports/payables-coming-due-header"; - var options = new Dictionary(); - options["reportDate"] = reportDate; - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Retrieves a current Risk Rate report for this account. - /// - /// Risk Rate is a metric that indicates the percentage of total AR balance left unpaid after 90 days. You can use this report to identify the percentage of invoice value that is not being collected in a timely manner. - /// - /// - public async Task> RiskRates() - { - var url = $"/api/v1/Reports/risk-rates"; - return await _client.Request(HttpMethod.Get, url, null, null, null); - } - - /// - /// Retrieves AR header information up to the date specified. - /// - /// - /// The date of the report. - /// Include a company to get AR data for a specific company, leave as null to include all Companies. - public async Task> AccountsReceivableHeader(string reportDate, Guid? companyId = null) - { - var url = $"/api/v1/Reports/ar-header"; - var options = new Dictionary(); - options["reportDate"] = reportDate; - if (companyId != null) { options["companyId"] = companyId; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Retrieves AP header information up to the date specified. - /// - /// - /// The date of the report. - /// Include a company to get AP data for a specific company, leave as null to include all Companies. - public async Task> AccountsPayableHeader(string reportDate, Guid? companyId = null) - { - var url = $"/api/v1/Reports/ap-header"; - var options = new Dictionary(); - options["reportDate"] = reportDate; - if (companyId != null) { options["companyId"] = companyId; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// The Aging Report contains information about the total dollar value of invoices broken down by their age. Last default or specified bucket treated as a catch all bucket for values that fit in that bucket or beyond. - /// - /// You can specify viewing parameters for the aging report such as currency code and date bucket configuration. You can also view aging data for an entire account or a specific company. - /// - /// This information is recalculated when invoice data changes. After each invoice data change occurs, Lockstep queues up a calculation based on the current invoice data at that time. This information is calculated and persisted for each customer so that the report will be available quickly. - /// - /// To force a recalculation of aging data, specify the `recalculate` option. Note that forcing a recalculation will slow your API response time. - /// - /// - /// Company aging buckets are filtered by (all company aging returned if not company specified) - /// Force api to recalculate aging data, cached data may be returned when set to false - /// Currency aging buckets are converted to (all aging data returned without currency conversion if no currency is specified) - /// Currency provider currency rates should be returned from to convert aging amounts to (default Lockstep currency provider used if no data provider specified) - /// Customized buckets used for aging calculations (default buckets [0,30,60,90,120,180] will be used if buckets not specified) - /// A boolean to turn on AP Aging reports - public async Task> Invoiceagingreport(Guid? CompanyId = null, bool? Recalculate = null, string CurrencyCode = null, string CurrencyProvider = null, int[] Buckets = null, bool? ApReport = null) - { - var url = $"/api/v1/Reports/aging"; - var options = new Dictionary(); - if (CompanyId != null) { options["CompanyId"] = CompanyId; } - if (Recalculate != null) { options["Recalculate"] = Recalculate; } - if (CurrencyCode != null) { options["CurrencyCode"] = CurrencyCode; } - if (CurrencyProvider != null) { options["CurrencyProvider"] = CurrencyProvider; } - if (Buckets != null) { options["Buckets"] = Buckets; } - if (ApReport != null) { options["ApReport"] = ApReport; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Retrieves AR Aging Header information report broken down by aging bucket. - /// - /// The AR Aging Header report contains aggregated information about the `TotalInvoicesPastDue`, `TotalCustomers`, and their respective `PercentageOfTotalAr` grouped by their aging `ReportBucket`. - /// - /// - public async Task> AccountsReceivableAgingHeader() - { - var url = $"/api/v1/Reports/ar-aging-header"; - return await _client.Request(HttpMethod.Get, url, null, null, null); - } - - /// - /// Retrieves AP Aging Header information report broken down by aging bucket. - /// - /// The AP Aging Header report contains aggregated information about the `TotalBillsPastDue`, `TotalVendors`, and their respective `PercentageOfTotalAp` grouped by their aging `ReportBucket`. - /// - /// - public async Task> AccountsPayableAgingHeader() - { - var url = $"/api/v1/Reports/ap-aging-header"; - return await _client.Request(HttpMethod.Get, url, null, null, null); - } - - /// - /// Retrieves Attachment Header information for the requested companyId. - /// - /// The Attachment Header report contains aggregated information about the `TotalAttachments`, `TotalArchived`, and `TotalActive` attachment classifications. - /// - /// - /// Include a specific company to get Attachment data for, leave as null to include all Companies. - public async Task> AttachmentsHeaderInformation(Guid? companyId = null) - { - var url = $"/api/v1/Reports/attachments-header"; - var options = new Dictionary(); if (companyId != null) { options["companyId"] = companyId; } - return await _client.Request(HttpMethod.Get, url, options, null, null); + return await _client.Request(HttpMethod.Get, url, options, null, null); } /// - /// Generates a Trial Balance Report for the given time range. + /// Generates an AP Aging Report. /// /// - /// The start date of the report - /// The end date of the report - /// The app enrollment id of the app enrollment whose data will be used. - public async Task> TrialBalanceReport(DateTime? startDate = null, DateTime? endDate = null, Guid? appEnrollmentId = null) + /// The date used for calculation of days overdue. Defaults to current UTC date. + public async Task> APAgingReport(DateTime? reportDate = null) { - var url = $"/api/v1/Reports/trial-balance"; + var url = $"/api/v1/Reports/ap/aging"; var options = new Dictionary(); - if (startDate != null) { options["startDate"] = startDate; } - if (endDate != null) { options["endDate"] = endDate; } - if (appEnrollmentId != null) { options["appEnrollmentId"] = appEnrollmentId; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Generates an Income Statement for the given time range. - /// - /// - /// The start date of the report - /// The end date of the report - /// The app enrollment id of the app enrollment whose data will be used. - /// The desired column splitting of the report data. An empty string or anything unrecognized will result in only totals being displayed. Options are as follows: By Period - a column for every month/fiscal period within the reporting dates Quarterly - a column for every quarter within the reporting dates Annually - a column for every year within the reporting dates - /// The desired row splitting of the report data. For Income Statements, the minimum report depth is 1. Options are as follows: 1 - combine all accounts by their category 2 - combine all accounts by their subcategory 3 - display all accounts - /// Add a column for historical data with the following options and use showCurrencyDifference and/or show percentageDifference to display a comparison of that historical data to the report period. Options are as follows (note for YTD the data will be compared as a percentage of YTD and showCurrencyDifference and showPercentageDifference should not be used): "PP" - previous period (will show the previous quarter or year if Quarterly or Annually is chosen for columnOption) "PY" - previous year (the same date range as the report, but for the year prior) "YTD" - year to date (the current financial year to the current period) - /// A boolean to turn on a currency based difference between the reporting period and the comparison period. - /// A boolean to turn on a percent based difference between the reporting period and the comparison period. - public async Task> IncomeStatementReport(DateTime? startDate = null, DateTime? endDate = null, Guid? appEnrollmentId = null, string columnOption = null, int? displayDepth = null, string comparisonPeriod = null, bool? showCurrencyDifference = null, bool? showPercentageDifference = null) - { - var url = $"/api/v1/Reports/income-statement"; - var options = new Dictionary(); - if (startDate != null) { options["startDate"] = startDate; } - if (endDate != null) { options["endDate"] = endDate; } - if (appEnrollmentId != null) { options["appEnrollmentId"] = appEnrollmentId; } - if (columnOption != null) { options["columnOption"] = columnOption; } - if (displayDepth != null) { options["displayDepth"] = displayDepth; } - if (comparisonPeriod != null) { options["comparisonPeriod"] = comparisonPeriod; } - if (showCurrencyDifference != null) { options["showCurrencyDifference"] = showCurrencyDifference; } - if (showPercentageDifference != null) { options["showPercentageDifference"] = showPercentageDifference; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Generates a balance sheet for the given time range. - /// - /// - /// The start date of the report - /// The end date of the report - /// The app enrollment id of the app enrollment whose data will be used. - /// The desired column splitting of the report data. An empty string or anything unrecognized will result in only totals being displayed. Options are as follows: By Period - a column for every month/fiscal period within the reporting dates Quarterly - a column for every quarter within the reporting dates Annually - a column for every year within the reporting dates - /// The desired row splitting of the report data. For Balance Sheets, the minimum report depth is 1. Options are as follows: 1 - combine all accounts by their category 2 - combine all accounts by their subcategory 3 - display all accounts - /// Add a column for historical data with the following options and use showCurrencyDifference and/or show percentageDifference to display a comparison of that historical data to the report period. "PP" - previous period (will show the previous quarter or year if Quarterly or Annually is chosen for columnOption) "PY" - previous year (the same date range as the report, but for the year prior) - /// A boolean to turn on a currency based difference between the reporting period and the comparison period. - /// A boolean to turn on a percent based difference between the reporting period and the comparison period. - public async Task> BalanceSheetReport(DateTime? startDate = null, DateTime? endDate = null, Guid? appEnrollmentId = null, string columnOption = null, int? displayDepth = null, string comparisonPeriod = null, bool? showCurrencyDifference = null, bool? showPercentageDifference = null) - { - var url = $"/api/v1/Reports/balance-sheet"; - var options = new Dictionary(); - if (startDate != null) { options["startDate"] = startDate; } - if (endDate != null) { options["endDate"] = endDate; } - if (appEnrollmentId != null) { options["appEnrollmentId"] = appEnrollmentId; } - if (columnOption != null) { options["columnOption"] = columnOption; } - if (displayDepth != null) { options["displayDepth"] = displayDepth; } - if (comparisonPeriod != null) { options["comparisonPeriod"] = comparisonPeriod; } - if (showCurrencyDifference != null) { options["showCurrencyDifference"] = showCurrencyDifference; } - if (showPercentageDifference != null) { options["showPercentageDifference"] = showPercentageDifference; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Generates a cash flow statement for the given time range. - /// - /// - /// The start date of the report - /// The end date of the report - /// The app enrollment id of the app enrollment whose data will be used. - /// The desired column splitting of the report data. An empty string or anything unrecognized will result in only totals being displayed. Options are as follows: By Period - a column for every month/fiscal period within the reporting dates Quarterly - a column for every quarter within the reporting dates Annually - a column for every year within the reporting dates - /// The desired row splitting of the report data. Options are as follows: 0 - combine all accounts by their classification 1 - combine all accounts by their category 2 - combine all accounts by their subcategory 3 - display all accounts - public async Task> CashFlowStatementReport(DateTime? startDate = null, DateTime? endDate = null, Guid? appEnrollmentId = null, string columnOption = null, int? displayDepth = null) - { - var url = $"/api/v1/Reports/cash-flow-statement"; - var options = new Dictionary(); - if (startDate != null) { options["startDate"] = startDate; } - if (endDate != null) { options["endDate"] = endDate; } - if (appEnrollmentId != null) { options["appEnrollmentId"] = appEnrollmentId; } - if (columnOption != null) { options["columnOption"] = columnOption; } - if (displayDepth != null) { options["displayDepth"] = displayDepth; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Retrieves a summary for each vendor that includes a count of their outstanding bills, the total amount outstanding, and their daily payable outstanding value. - /// - /// Days payable outstanding (DPO) is a financial ratio that indicates the average time (in days) that a company takes to pay its bills to its trade creditors, which may include suppliers, vendors, or financiers. - /// - /// 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. - /// - /// - /// The date the outstanding values are calculated on. Should be either the current day or the end of a previous quarter. - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// 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 - /// The sort order for the results, in the [Searchlight order syntax](https://github.com/tspence/csharp-searchlight). - /// The page size for results (default 250, maximum of 500) - /// The page number for results (default 0) - public async Task>> DaysPayableOutstandingSummary(DateTime reportDate, string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) - { - var url = $"/api/v1/Reports/daily-payable-outstanding-summary"; - var options = new Dictionary(); - options["reportDate"] = reportDate; - if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); - } - - /// - /// Retrieves total number of vendors, bills, the total amount outstanding, and the daily payable outstanding value for a group. - /// - /// Days payable outstanding (DPO) is a financial ratio that indicates the average time (in days) that a company takes to pay its bills to its trade creditors, which may include suppliers, vendors, or financiers. - /// - /// - /// The date the outstanding values are calculated on. Should be either the current day or the end of a previous quarter. - public async Task> DaysPayableOutstandingSummaryTotal(DateTime reportDate) - { - var url = $"/api/v1/Reports/daily-payable-outstanding-summary-total"; - var options = new Dictionary(); - options["reportDate"] = reportDate; - return await _client.Request(HttpMethod.Get, url, options, null, null); + if (reportDate != null) { options["reportDate"] = reportDate; } + return await _client.Request(HttpMethod.Get, url, options, null, null); } } } diff --git a/src/clients/StatusClient.cs b/src/clients/StatusClient.cs index 22c1325..91f0b43 100644 --- a/src/clients/StatusClient.cs +++ b/src/clients/StatusClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -38,14 +38,18 @@ public StatusClient(LockstepApi client) } /// - /// Verifies that your application can successfully call the Lockstep Platform API and returns a successful code regardless of your authentication status or permissions. + /// Verifies that your application can successfully call the ADS Platform API and returns a successful code regardless of your authentication status or permissions. + /// + /// The Ping API can be used to verify that your app is working correctly. The Ping API will always return 200 OK. If you call this API and you receive a code other than 200 OK, you should check your network connectivity. A response code of anything other than 200 means that a routing issue or proxy issue may prevent your application from reaching the ADS Platform API /// - /// The Ping API can be used to verify that your app is working correctly. The Ping API will always return 200 OK. If you call this API and you receive a code other than 200 OK, you should check your network connectivity. A response code of anything other than 200 means that a routing issue or proxy issue may prevent your application from reaching the Lockstep API /// - public async Task> Ping() + /// When true, the API will use information from the 'Company' instead of the 'Group' company + public async Task> Ping(bool? useCompanyInfo = null) { var url = $"/api/v1/Status"; - return await _client.Request(HttpMethod.Get, url, null, null, null); + var options = new Dictionary(); + if (useCompanyInfo != null) { options["useCompanyInfo"] = useCompanyInfo; } + return await _client.Request(HttpMethod.Get, url, options, null, null); } } } diff --git a/src/clients/SyncClient.cs b/src/clients/SyncClient.cs index 6a77521..208d26b 100644 --- a/src/clients/SyncClient.cs +++ b/src/clients/SyncClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -53,9 +53,9 @@ public async Task> CreateSync(SyncSubmitModel /// /// Creates a new batch import Sync task that imports all the models provided to this API call. /// - /// A Sync task represents ingestion of data from a source. For each data model in the source, the Sync process will determine whether the data is new, updated, or unchanged from data that already exists within the Lockstep Platform. For records that are new, the Sync process will add them to the Lockstep Platform data. For records that are updated, the Sync process will update existing data to match the newly uploaded records. If records have not changed, no action will be taken. + /// A Sync task represents ingestion of data from a source. For each data model in the source, the Sync process will determine whether the data is new, updated, or unchanged from data that already exists within the ADS Platform. For records that are new, the Sync process will add them to the ADS Platform data. For records that are updated, the Sync process will update existing data to match the newly uploaded records. If records have not changed, no action will be taken. /// - /// You can use this Batch Import process to load data in bulk directly into the Lockstep Platform. + /// You can use this Batch Import process to load data in bulk directly into the ADS Platform. /// /// /// Information about the Sync to execute @@ -72,13 +72,19 @@ public async Task> CreateBatchImport(BatchSyn /// /// /// The optional existing app enrollment to associate with the data in the zip file. + /// The optional existing sync request id to associate with the batch data in the zip file. + /// The optional current batch no associate with the batch data in the zip file. + /// The optional total batches to associate with the total batch data in the zip file. /// True if this is a full sync, false if this is a partial sync. Defaults to false. /// The full path of a file to upload to the API - public async Task> UploadSyncFile(string filename, Guid? appEnrollmentId = null, bool? isFullSync = null) + public async Task> UploadSyncFile(string filename, Guid? appEnrollmentId = null, Guid? parentSyncRequestId = null, int? currentBatch = null, int? totalBatches = null, bool? isFullSync = null) { var url = $"/api/v1/Sync/zip"; var options = new Dictionary(); if (appEnrollmentId != null) { options["appEnrollmentId"] = appEnrollmentId; } + if (parentSyncRequestId != null) { options["parentSyncRequestId"] = parentSyncRequestId; } + if (currentBatch != null) { options["currentBatch"] = currentBatch; } + if (totalBatches != null) { options["totalBatches"] = totalBatches; } if (isFullSync != null) { options["isFullSync"] = isFullSync; } return await _client.Request(HttpMethod.Post, url, options, null, filename); } @@ -133,7 +139,7 @@ public async Task> CancelSync(Guid id) /// /// Queries Sync tasks 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// /// A Sync task represents an action performed by an Application for a particular account. An Application can provide many different tasks as part of their capabilities. Sync tasks are executed in the background and will continue running after they are created. Use one of the creation APIs to request execution of a task. To check on the progress of the task, call GetSync or QuerySync. /// @@ -143,7 +149,8 @@ public async Task> CancelSync(Guid id) /// The sort order for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - public async Task>> QuerySyncs(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) + /// The type of Sync requests to query, defaults to Read. + public async Task>> QuerySyncs(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null, string operationType = null) { var url = $"/api/v1/Sync/query"; var options = new Dictionary(); @@ -152,6 +159,7 @@ public async Task>> QuerySyncs(st if (order != null) { options["order"] = order; } if (pageSize != null) { options["pageSize"] = pageSize; } if (pageNumber != null) { options["pageNumber"] = pageNumber; } + if (operationType != null) { options["operationType"] = operationType; } return await _client.Request>(HttpMethod.Get, url, options, null, null); } } diff --git a/src/clients/UserAccountsClient.cs b/src/clients/UserAccountsClient.cs deleted file mode 100644 index 99e67bc..0000000 --- a/src/clients/UserAccountsClient.cs +++ /dev/null @@ -1,188 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -using System; -using System.Collections.Generic; -using System.Net.Http; -using System.Threading.Tasks; -using LockstepSDK.Models; - - -namespace LockstepSDK.Clients -{ - /// - /// API methods related to UserAccounts - /// - public class UserAccountsClient - { - private readonly LockstepApi _client; - - /// - /// Constructor - /// - public UserAccountsClient(LockstepApi client) - { - _client = client; - } - - /// - /// Retrieves the User with this identifier. - /// - /// A User represents a person who has the ability to authenticate against the Lockstep Platform and use services such as Lockstep Inbox. A User is uniquely identified by an Azure identity, and each user must have an email address defined within their account. All Users must validate their email to make use of Lockstep platform services. Users may have different privileges and access control rights within the Lockstep Platform. - /// - /// - /// The unique ID number of the User to retrieve - /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Notes, Attachments, CustomFields, AccountingRole - public async Task> RetrieveUser(Guid id, string include = null) - { - var url = $"/api/v1/UserAccounts/{id}"; - var options = new Dictionary(); - if (include != null) { options["include"] = include; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Updates a User that matches the specified id with the requested information. The following limitations are applied when updating a user: - /// - /// <list type="bullet"><item>Only Group Owners and Admins can change other users.</item><item>When updating another user, only the role and status can be updated.</item><item>A user can only change their own status when their current status is Onboarding.</item><item>A user can never change their own role.</item><item>Nobody can change the owner's role or status. See the "/transfer-owner" route for changing the owner.</item><item>A user can change their own personal information.</item></list> - /// - /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired. - /// - /// A User represents a person who has the ability to authenticate against the Lockstep Platform and use services such as Lockstep Inbox. A User is uniquely identified by an Azure identity, and each user must have an email address defined within their account. All Users must validate their email to make use of Lockstep platform services. Users may have different privileges and access control rights within the Lockstep Platform. - /// - /// - /// The unique ID number of the User to retrieve - /// A list of changes to apply to this User - public async Task> UpdateUser(Guid id, object body) - { - var url = $"/api/v1/UserAccounts/{id}"; - return await _client.Request(new HttpMethod("PATCH"), url, null, body, null); - } - - /// - /// Disable the user referred to by this unique identifier. - /// - /// A User represents a person who has the ability to authenticate against the Lockstep Platform and use services such as Lockstep Inbox. A User is uniquely identified by an Azure identity, and each user must have an email address defined within their account. All Users must validate their email to make use of Lockstep platform services. Users may have different privileges and access control rights within the Lockstep Platform. - /// - /// - /// The unique Lockstep Platform ID number of this User - public async Task> DisableUser(Guid id) - { - var url = $"/api/v1/UserAccounts/{id}"; - return await _client.Request(HttpMethod.Delete, url, null, null, null); - } - - /// - /// Invite a user with the specified email to join your accounting group. The user will receive an email to set up their account. - /// - /// A User represents a person who has the ability to authenticate against the Lockstep Platform and use services such as Lockstep Inbox. A User is uniquely identified by an Azure identity, and each user must have an email address defined within their account. All Users must validate their email to make use of Lockstep platform services. Users may have different privileges and access control rights within the Lockstep Platform. - /// - /// - /// The user to invite - public async Task> InviteUser(InviteSubmitModel[] body) - { - var url = $"/api/v1/UserAccounts/invite"; - return await _client.Request(HttpMethod.Post, url, null, body, null); - } - - /// - /// Retrieves invite information for the specified invite token. - /// - /// A User represents a person who has the ability to authenticate against the Lockstep Platform and use services such as Lockstep Inbox. A User is uniquely identified by an Azure identity, and each user must have an email address defined within their account. All Users must validate their email to make use of Lockstep platform services. Users may have different privileges and access control rights within the Lockstep Platform. - /// - /// The code of the invite - public async Task> RetrieveInviteData(Guid? code = null) - { - var url = $"/api/v1/UserAccounts/invite"; - var options = new Dictionary(); - if (code != null) { options["code"] = code; } - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Transfer the ownership of a group to another user. This API must be called by the current owner of the group. - /// - /// A User represents a person who has the ability to authenticate against the Lockstep Platform and use services such as Lockstep Inbox. A User is uniquely identified by an Azure identity, and each user must have an email address defined within their account. All Users must validate their email to make use of Lockstep platform services. Users may have different privileges and access control rights within the Lockstep Platform. - /// - /// - /// - public async Task> TransferOwner(TransferOwnerSubmitModel body) - { - var url = $"/api/v1/UserAccounts/transfer-owner"; - return await _client.Request(HttpMethod.Post, url, null, body, null); - } - - /// - /// Queries Users for this account using the specified filtering, sorting, nested fetch, and pagination rules requested. A User represents a person who has the ability to authenticate against the Lockstep Platform and use services such as Lockstep Inbox. A User is uniquely identified by an Azure identity, and each user must have an email address defined within their account. All Users must validate their email to make use of Lockstep platform services. Users may have different privileges and access control rights within the Lockstep Platform. - /// - /// - /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// To fetch additional data on this object, specify the list of elements to retrieve. Available collections: Notes, Attachments, CustomFields, AccountingRole - /// The sort order for this query. See See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page size for results (default 250, maximum of 500). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - /// The page number for results (default 0). See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) - public async Task>> QueryUsers(string filter = null, string include = null, string order = null, int? pageSize = null, int? pageNumber = null) - { - var url = $"/api/v1/UserAccounts/query"; - var options = new Dictionary(); - if (filter != null) { options["filter"] = filter; } - if (include != null) { options["include"] = include; } - if (order != null) { options["order"] = order; } - if (pageSize != null) { options["pageSize"] = pageSize; } - if (pageNumber != null) { options["pageNumber"] = pageNumber; } - return await _client.Request>(HttpMethod.Get, url, options, null, null); - } - - /// - /// Change the active GroupKey of the calling user. - /// - /// A User represents a person who has the ability to authenticate against the Lockstep Platform and use services such as Lockstep Inbox. A User is uniquely identified by an Azure identity, and each user must have an email address defined within their account. All Users must validate their email to make use of Lockstep platform services. Users may have different privileges and access control rights within the Lockstep Platform. - /// - /// - public async Task> ChangeUserGroup(Guid groupKey) - { - var url = $"/api/v1/UserAccounts/change-group"; - var options = new Dictionary(); - options["groupKey"] = groupKey; - return await _client.Request(HttpMethod.Post, url, options, null, null); - } - - /// - /// Retrieves the user data for the current user. This allows for retrieving extended user data such as UTM parameters. - /// - /// The set of data to retrieve. To avoid any casing confusion, these values are converted to upper case. Possible values are: UTM - public async Task> GetUserData(string[] include) - { - var url = $"/api/v1/UserAccounts/user-data"; - var options = new Dictionary(); - options["include"] = include; - return await _client.Request(HttpMethod.Get, url, options, null, null); - } - - /// - /// Set support access for the calling user. - /// - /// Support access allows Lockstep to access the user's account to troubleshoot issues. Access is granted for a limited time, can be revoked at any time, and requires a code to verify the access. - /// - /// Every call to this API will regenerate the support access code. - /// - /// - public async Task> SetSupportAccess(SupportAccessRequest body) - { - var url = $"/api/v1/UserAccounts/support-access"; - return await _client.Request(HttpMethod.Post, url, null, body, null); - } - } -} diff --git a/src/clients/UserRolesClient.cs b/src/clients/UserRolesClient.cs index 2501b1e..9903a32 100644 --- a/src/clients/UserRolesClient.cs +++ b/src/clients/UserRolesClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ diff --git a/src/clients/WebhookRulesClient.cs b/src/clients/WebhookRulesClient.cs index 73a4673..32723e5 100644 --- a/src/clients/WebhookRulesClient.cs +++ b/src/clients/WebhookRulesClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -41,7 +41,7 @@ public WebhookRulesClient(LockstepApi client) /// Retrieves the Webhook Rule specified by this unique identifier. /// /// - /// The unique Lockstep Platform ID number of this Webhook Rule + /// The unique ADS Platform ID number of this Webhook Rule public async Task> RetrieveWebhookRule(Guid id) { var url = $"/api/v1/WebhookRules/{id}"; @@ -54,7 +54,7 @@ public async Task> RetrieveWebhookRule(Guid i /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired. /// /// - /// The unique Lockstep Platform ID number of the Webhook Rule to update. + /// The unique ADS Platform ID number of the Webhook Rule to update. /// A list of changes to apply to this Webhook Rule public async Task> UpdateWebhookRule(Guid id, object body) { @@ -66,7 +66,7 @@ public async Task> UpdateWebhookRule(Guid id, /// Deletes the Webhook Rule referred to by this unique identifier. /// /// - /// The unique Lockstep Platform ID number of the Webhook Rule to delete. + /// The unique ADS Platform ID number of the Webhook Rule to delete. public async Task> DeleteWebhookRule(Guid id) { var url = $"/api/v1/WebhookRules/{id}"; @@ -87,7 +87,7 @@ public async Task> CreateWebhookRules(Webho /// /// Queries Webhook Rules for this account using the specified filtering, sorting, 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// /// /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) diff --git a/src/clients/WebhooksClient.cs b/src/clients/WebhooksClient.cs index 832973e..91b72d1 100644 --- a/src/clients/WebhooksClient.cs +++ b/src/clients/WebhooksClient.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -41,7 +41,7 @@ public WebhooksClient(LockstepApi client) /// Retrieves the Webhook specified by this unique identifier. /// /// - /// The unique Lockstep Platform ID number of this Webhook + /// The unique ADS Platform ID number of this Webhook public async Task> RetrieveWebhook(Guid id) { var url = $"/api/v1/Webhooks/{id}"; @@ -54,7 +54,7 @@ public async Task> RetrieveWebhook(Guid id) /// The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired. /// /// - /// The unique Lockstep Platform ID number of the Webhook to update. + /// The unique ADS Platform ID number of the Webhook to update. /// A list of changes to apply to this Webhook public async Task> UpdateWebhook(Guid id, object body) { @@ -66,7 +66,7 @@ public async Task> UpdateWebhook(Guid id, object /// Deletes the Webhook referred to by this unique identifier. /// /// - /// The unique Lockstep Platform ID number of the Webhook to delete. + /// The unique ADS Platform ID number of the Webhook to delete. public async Task> DeleteWebhook(Guid id) { var url = $"/api/v1/Webhooks/{id}"; @@ -88,7 +88,7 @@ public async Task> CreateWebhooks(WebhookModel[ /// Updates a webhook that matches the specified id with a new client secret. /// /// - /// The unique Lockstep Platform ID number of the Webhook to update. + /// The unique ADS Platform ID number of the Webhook to update. public async Task> RegenerateClientSecret(Guid id) { var url = $"/api/v1/Webhooks/{id}/regenerate-client-secret"; @@ -98,7 +98,7 @@ public async Task> RegenerateClientSecret(Guid id /// /// Queries Webhooks for this account using the specified filtering, sorting, 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. + /// More information on querying can be found on the [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) page on the ADS Platform Developer website. /// /// /// The filter for this query. See [Searchlight Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) @@ -122,7 +122,7 @@ public async Task>> QueryWebhooks(str /// /// /// - /// The unique Lockstep Platform ID number of this Webhook + /// The unique ADS Platform ID number of this Webhook /// To fetch additional data on this object, specify the list of elements to retrieve. Available collection: Records, RequestMessage, ResponseMessage /// The filter for this query. See [Azure Query Language](https://docs.microsoft.com/en-us/rest/api/storageservices/querying-tables-and-entities) /// The selection for this query. Selection is the desired properties of an entity to pull from the set. If a property is not selected, it will either return as null or empty. See [Azure Query Language](https://docs.microsoft.com/en-us/rest/api/storageservices/querying-tables-and-entities) @@ -144,8 +144,8 @@ public async Task> /// /// /// - /// The unique Lockstep Platform ID number of this Webhook - /// The unique Lockstep Platform ID number of the Webhook History to be retried. Note: the webhook history supplied must have a isSuccessful status of false to be retried. + /// The unique ADS Platform ID number of this Webhook + /// The unique ADS Platform ID number of the Webhook History to be retried. Note: the webhook history supplied must have a isSuccessful status of false to be retried. public async Task> RetryFailedWebhookHistory(Guid webhookId, Guid webhookHistoryId) { var url = $"/api/v1/Webhooks/{webhookId}/history/{webhookHistoryId}/retry"; diff --git a/src/models/ActionResultModel.cs b/src/models/ActionResultModel.cs index f27c51b..085779c 100644 --- a/src/models/ActionResultModel.cs +++ b/src/models/ActionResultModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -23,7 +23,7 @@ namespace LockstepSDK.Models /// /// Represents the result of an action. /// - /// In the Lockstep API, an Action is returned when an API call does not produce any data + /// In the ADS Platform API, an Action is returned when an API call does not produce any data /// but does produce messages that can be useful in understanding what work was performed. /// You may use the messages text to display user visible error messages or the results of /// various operations. diff --git a/src/models/AgingModel.cs b/src/models/AgingModel.cs index 9df06c0..b026c3f 100644 --- a/src/models/AgingModel.cs +++ b/src/models/AgingModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,24 +21,25 @@ namespace LockstepSDK.Models { /// - /// Represents an aging record + /// A summary of AR Aging for a given Group Key. This aging data is presented + /// in buckets of days overdue in the group's base currency. /// public class AgingModel { /// - /// Aging bucket of outstanding balance data (days past due date of invoice) + /// The Group Key the aging data is calculated for. /// - public int? Bucket { get; set; } + public Guid? GroupKey { get; set; } /// - /// Currency code of aging bucket + /// The total AR outstanding amount in the group's base currency. /// - public string CurrencyCode { get; set; } + public decimal? Total { get; set; } /// - /// Outstanding balance for the given aging bucket + /// The outstanding amount in the group's base currency, grouped by days overdue. /// - public decimal? OutstandingBalance { get; set; } + public AgingBucketResult[] Buckets { get; set; } } } diff --git a/src/models/ApAgingHeaderInfoModel.cs b/src/models/ApAgingHeaderInfoModel.cs deleted file mode 100644 index 348124a..0000000 --- a/src/models/ApAgingHeaderInfoModel.cs +++ /dev/null @@ -1,82 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Aggregated Accounts Payable Aging information. - /// - public class ApAgingHeaderInfoModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The aging bucket this data belongs to. - /// - public string ReportBucket { get; set; } - - /// - /// The total number of vendors. - /// - public int? TotalVendors { get; set; } - - /// - /// The total number of bills outstanding. - /// - public int? TotalBillsOutstanding { get; set; } - - /// - /// The total amount outstanding on bills. - /// - public decimal? TotalBillsOutstandingAmount { get; set; } - - /// - /// The total amount outstanding on credit memos. - /// - public decimal? TotalCreditMemoOutstandingAmount { get; set; } - - /// - /// The total amount of advance payments. - /// - public decimal? TotalAdvancePaymentAmount { get; set; } - - /// - /// The total amount outstanding. - /// - public decimal? TotalOutstandingAmount { get; set; } - - /// - /// The total amount for AP. - /// - public decimal? TotalApAmount { get; set; } - - /// - /// Portion of Total AP this data represents. - /// - public decimal? PercentageOfTotalAp { get; set; } - } -} diff --git a/src/models/ApHeaderInfoModel.cs b/src/models/ApHeaderInfoModel.cs deleted file mode 100644 index f9d5bd3..0000000 --- a/src/models/ApHeaderInfoModel.cs +++ /dev/null @@ -1,167 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Aggregated Accounts Payable information. - /// - public class ApHeaderInfoModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The base currency code of the group account - /// - public string BaseCurrencyCode { get; set; } - - /// - /// The date of the report - /// - public DateTime? ReportDate { get; set; } - - /// - /// The total number of vendors. - /// - public int? TotalVendors { get; set; } - - /// - /// The total number of bills. - /// - public int? TotalBills { get; set; } - - /// - /// The total amount billed. - /// - public decimal? TotalBilledAmount { get; set; } - - /// - /// The total number of advance payments. - /// - public decimal? TotalAdvancePayments { get; set; } - - /// - /// The total amount paid. - /// - public decimal? TotalPaid { get; set; } - - /// - /// The total accounts payable amount. - /// - public decimal? TotalApAmount { get; set; } - - /// - /// The number of paid bills. - /// - public int? TotalBillsPaid { get; set; } - - /// - /// The number of past due bills. - /// - public int? TotalBillsPastDue { get; set; } - - /// - /// The number of bills 90+ days past due. - /// - public int? TotalBills90DaysPastDue { get; set; } - - /// - /// The total amount past due. - /// - public decimal? TotalPastDueAmount { get; set; } - - /// - /// The total amount for bills 90+ days past due. - /// - public decimal? TotalPastDueAmount90Days { get; set; } - - /// - /// Portion of Total AP that is Past due. - /// - public decimal? PercentageOfTotalAp { get; set; } - - /// - /// The total amount billed, due this year. - /// - public decimal? TotalBilledAmountCurrentYear { get; set; } - - /// - /// The total amount billed, due last year. - /// - public decimal? TotalBilledAmountPreviousYear { get; set; } - - /// - /// The total of all payments made this year. - /// - public decimal? TotalPaidAmountCurrentYear { get; set; } - - /// - /// Portion of Total AP that is 90+ days Past due. - /// - public decimal? PercentageOfTotalAp90DaysPastDue { get; set; } - - /// - /// The number of vendors who were paid within the past thirty days. - /// - public int? VendorsPaidPastThirtyDays { get; set; } - - /// - /// The total amount paid over the past thirty days. - /// - public decimal? AmountPaidPastThirtyDays { get; set; } - - /// - /// The amount in advance from the payments made over the past thirty days. - /// - public decimal? AdvancePaymentAmountPastThirtyDays { get; set; } - - /// - /// The number of bills paid over the past thirty days. - /// - public int? BillsPaidPastThirtyDays { get; set; } - - /// - /// The number of vendors that sent bills over the the past thirty days. - /// - public int? BillingVendorsPastThirtyDays { get; set; } - - /// - /// The total amount billed over the past thirty days. - /// - public decimal? AmountBilledPastThirtyDays { get; set; } - - /// - /// The amount outstanding on the bills received over the past thirty days. - /// - public decimal? AmountDuePastThirtyDays { get; set; } - - /// - /// The number of bills received over the past thirty days. - /// - public int? BillsPastThirtyDays { get; set; } - } -} diff --git a/src/models/ApiKeyModel.cs b/src/models/ApiKeyModel.cs index 2404306..00e4e85 100644 --- a/src/models/ApiKeyModel.cs +++ b/src/models/ApiKeyModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,10 +21,10 @@ namespace LockstepSDK.Models { /// - /// An API Key is an authentication token that you may use with the Lockstep API. Because API Keys + /// An API Key is an authentication token that you may use with the ADS Platform API. Because API Keys /// do not have an expiration date, they are well suited for unattended processes. Each API Key - /// is associated with a user, and may be revoked to prevent it from accessing the Lockstep API. - /// When you create an API Key, make sure to save the value in a secure location. Lockstep cannot + /// is associated with a user, and may be revoked to prevent it from accessing the ADS Platform API. + /// When you create an API Key, make sure to save the value in a secure location. ADS Platform cannot /// retrieve an API Key once it is created. /// /// For more information, see [API Keys](https://developer.lockstep.io/docs/api-keys). @@ -38,7 +38,7 @@ public class ApiKeyModel public Guid? ApiKeyId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). diff --git a/src/models/AppEnrollmentCustomFieldModel.cs b/src/models/AppEnrollmentCustomFieldModel.cs index d49f252..1a8c4e1 100644 --- a/src/models/AppEnrollmentCustomFieldModel.cs +++ b/src/models/AppEnrollmentCustomFieldModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -47,7 +47,7 @@ public class AppEnrollmentCustomFieldModel public string AppType { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). diff --git a/src/models/AppEnrollmentModel.cs b/src/models/AppEnrollmentModel.cs index d12a14c..21408ec 100644 --- a/src/models/AppEnrollmentModel.cs +++ b/src/models/AppEnrollmentModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -22,7 +22,7 @@ namespace LockstepSDK.Models /// /// An AppEnrollment represents an app that has been enrolled to the current account. When you sign up for an - /// app using the Lockstep Platform, you obtain an enrollment record for that app. Example types of apps include + /// app using the ADS Platform, you obtain an enrollment record for that app. Example types of apps include /// connectors and feature enhancement apps. The App Enrollment object contains information about this app, its /// configuration, and settings. /// @@ -32,8 +32,8 @@ public class AppEnrollmentModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS when this record is + /// added to the ADS Platform. /// public Guid? AppEnrollmentId { get; set; } @@ -44,7 +44,7 @@ public class AppEnrollmentModel public Guid? AppId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). diff --git a/src/models/ApplicationModel.cs b/src/models/ApplicationModel.cs index e8653f4..dd57409 100644 --- a/src/models/ApplicationModel.cs +++ b/src/models/ApplicationModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,9 +21,9 @@ namespace LockstepSDK.Models { /// - /// An Application represents a feature available to customers within the Lockstep Platform. You can create - /// Applications by working with your Lockstep business development manager and publish them on the platform - /// so that customers can browse and find your Application on the Lockstep Platform Marketplace. When a + /// An Application represents a feature available to customers within the ADS Platform. You can create + /// Applications by working with your ADS Platform business development manager and publish them on the platform + /// so that customers can browse and find your Application on the ADS Platform Marketplace. When a /// customer adds an Application to their account, they obtain an AppEnrollment which represents that customer's /// instance of this Application. The customer-specific AppEnrollment contains a customer's configuration data /// for the Application, which is not customer-specific. @@ -95,7 +95,7 @@ public class ApplicationModel public bool? IsActive { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). diff --git a/src/models/ArAgingHeaderInfoModel.cs b/src/models/ArAgingHeaderInfoModel.cs deleted file mode 100644 index a7194fb..0000000 --- a/src/models/ArAgingHeaderInfoModel.cs +++ /dev/null @@ -1,82 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Aggregated Accounts Receivable Aging information. - /// - public class ArAgingHeaderInfoModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The aging bucket this data belongs to. - /// - public string ReportBucket { get; set; } - - /// - /// The total number of customers. - /// - public int? TotalCustomers { get; set; } - - /// - /// The total number of invoices outstanding. - /// - public int? TotalInvoicesOutstanding { get; set; } - - /// - /// The total amount outstanding on invoices. - /// - public decimal? TotalInvoiceOutstandingAmount { get; set; } - - /// - /// The total amount outstanding on credit memos. - /// - public decimal? TotalCreditMemoOutstandingAmount { get; set; } - - /// - /// The total amount of unapplied payments. - /// - public decimal? TotalUnappliedPaymentAmount { get; set; } - - /// - /// The total amount outstanding. - /// - public decimal? TotalOutstandingAmount { get; set; } - - /// - /// The total amount for AR. - /// - public decimal? TotalArAmount { get; set; } - - /// - /// Portion of Total AR this data represents. - /// - public decimal? PercentageOfTotalAr { get; set; } - } -} diff --git a/src/models/ArHeaderInfoModel.cs b/src/models/ArHeaderInfoModel.cs deleted file mode 100644 index c71c406..0000000 --- a/src/models/ArHeaderInfoModel.cs +++ /dev/null @@ -1,174 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Aggregated Accounts Receivable information. - /// - public class ArHeaderInfoModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The base currency code of the group account - /// - public string BaseCurrencyCode { get; set; } - - /// - /// The date of the report - /// - /// This is a date-only field stored as a string in ISO 8601 (YYYY-MM-DD) format. - /// - public string ReportDate { get; set; } - - /// - /// The total number of customers. - /// - public int? TotalCustomers { get; set; } - - /// - /// The total number of invoices. - /// - public int? TotalInvoices { get; set; } - - /// - /// The total amount invoiced. - /// - public decimal? TotalInvoicedAmount { get; set; } - - /// - /// The total number of unapplied payments. - /// - public decimal? TotalUnappliedPayments { get; set; } - - /// - /// The total amount of collected payments. - /// - public decimal? TotalCollected { get; set; } - - /// - /// The total accounts receivable amount. - /// - public decimal? TotalArAmount { get; set; } - - /// - /// The number of paid invoices. - /// - public int? TotalInvoicesPaid { get; set; } - - /// - /// The number of past due invoices. - /// - public int? TotalInvoicesPastDue { get; set; } - - /// - /// The number of past due invoices for the last 90 days. - /// - public int? TotalInvoices90DaysPastDue { get; set; } - - /// - /// The total amount past due. - /// - public decimal? TotalPastDueAmount { get; set; } - - /// - /// The total past due for the past 90 days. - /// - public decimal? TotalPastDueAmount90Days { get; set; } - - /// - /// Portion of Total AR that is Past due. - /// - public decimal? PercentageOfTotalAr { get; set; } - - /// - /// Daily sales outstanding. - /// - public decimal? Dso { get; set; } - - /// - /// The total amount invoiced, due this year. - /// - public decimal? TotalInvoiceAmountCurrentYear { get; set; } - - /// - /// The total amount invoiced, due last year. - /// - public decimal? TotalInvoiceAmountPreviousYear { get; set; } - - /// - /// The total of all payments received this year. - /// - public decimal? TotalPaymentAmountCurrentYear { get; set; } - - /// - /// Portion of Total AR that is 90+ days Past due. - /// - public decimal? PercentageOfTotalAr90DaysPastDue { get; set; } - - /// - /// The number of customers who paid within the past thirty days. - /// - public int? CustomersPaidPastThirtyDays { get; set; } - - /// - /// The total amount collected over the past thirty days. - /// - public decimal? AmountCollectedPastThirtyDays { get; set; } - - /// - /// The amount unapplied from the payments collected over the past thirty days. - /// - public decimal? UnappliedAmountPastThirtyDays { get; set; } - - /// - /// The number of invoices paid over the past thirty days. - /// - public int? InvoicesPaidPastThirtyDays { get; set; } - - /// - /// The number of customers invoiced over the the past thirty days. - /// - public int? CustomersInvoicedPastThirtyDays { get; set; } - - /// - /// The total amount invoiced over the past thirty days. - /// - public decimal? AmountInvoicedPastThirtyDays { get; set; } - - /// - /// The amount outstanding on the invoices invoiced over the past thirty days. - /// - public decimal? AmountDuePastThirtyDays { get; set; } - - /// - /// The number of invoices invoiced over the past thirty days. - /// - public int? InvoicesPastThirtyDays { get; set; } - } -} diff --git a/src/models/AtRiskInvoiceSummaryModel.cs b/src/models/AtRiskInvoiceSummaryModel.cs deleted file mode 100644 index c6013c5..0000000 --- a/src/models/AtRiskInvoiceSummaryModel.cs +++ /dev/null @@ -1,134 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Contains summarized data for an invoice - /// - public class AtRiskInvoiceSummaryModel - { - - /// - /// The date of the report - /// - /// This is a date-only field stored as a string in ISO 8601 (YYYY-MM-DD) format. - /// - public string ReportDate { get; set; } - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The ID number of the counterparty for the invoice, for example, a customer or vendor. - /// - public Guid? CustomerId { get; set; } - - /// - /// The unique ID number of this invoice. - /// - public Guid? InvoiceId { get; set; } - - /// - /// A reference code that is used to identify this invoice. - /// The meaning of this field is specific to the ERP or accounting system used by the user. - /// - public string InvoiceNumber { get; set; } - - /// - /// The reporting date for this invoice. - /// - /// This is a date-only field stored as a string in ISO 8601 (YYYY-MM-DD) format. - /// - public string InvoiceDate { get; set; } - - /// - /// The name of the counterparty for the invoice, for example, a customer or vendor. - /// - public string CustomerName { get; set; } - - /// - /// The status of the invoice. - /// - public string Status { get; set; } - - /// - /// The due date of the invoice. - /// - /// This is a date-only field stored as a string in ISO 8601 (YYYY-MM-DD) format. - /// - public string PaymentDueDate { get; set; } - - /// - /// The currency code of the invoice - /// - public string CurrencyCode { get; set; } - - /// - /// The total amount of the Invoice. - /// - public decimal? InvoiceAmount { get; set; } - - /// - /// The remaining balance value of this invoice. - /// - public decimal? OutstandingBalance { get; set; } - - /// - /// The currency code of the group. - /// - public string BaseCurrencyCode { get; set; } - - /// - /// The total amount of the Invoice in the group's currency. - /// - public decimal? BaseCurrencyInvoiceAmount { get; set; } - - /// - /// The remaining balance value of this invoice in the group's currency. - /// - public decimal? BaseCurrencyOutstandingBalance { get; set; } - - /// - /// A code identifying the type of this Invoice. - /// - public string InvoiceTypeCode { get; set; } - - /// - /// The number of days this Invoice is past due. - /// - public int? DaysPastDue { get; set; } - - /// - /// The memo text of the payments associated to this invoice. - /// - public string[] PaymentNumbers { get; set; } - - /// - /// The ids of the payments associated to this invoice. - /// - public Guid[] PaymentIds { get; set; } - } -} diff --git a/src/models/AttachmentHeaderInfoModel.cs b/src/models/AttachmentHeaderInfoModel.cs deleted file mode 100644 index 244afe7..0000000 --- a/src/models/AttachmentHeaderInfoModel.cs +++ /dev/null @@ -1,58 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Aggregated Attachment status information. - /// - public class AttachmentHeaderInfoModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The CompanyId associated with the attachment status report. Providing a null value will - /// return an attachment summary for all attachments associated to the provided GroupKey - /// - public Guid? CompanyId { get; set; } - - /// - /// The total number of attachments associated with the provided GroupKey and CompanyId. - /// - public int? TotalAttachments { get; set; } - - /// - /// The total number of archived attachments associated with the provided GroupKey and CompanyId. - /// - public int? TotalArchived { get; set; } - - /// - /// The total number of active attachments associated with the provided GroupKey and CompanyId. - /// - public int? TotalActive { get; set; } - } -} diff --git a/src/models/AttachmentModel.cs b/src/models/AttachmentModel.cs index af5a9a8..377e526 100644 --- a/src/models/AttachmentModel.cs +++ b/src/models/AttachmentModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,9 +21,9 @@ namespace LockstepSDK.Models { /// - /// An Attachment is a file that can be attached to various account attributes within Lockstep. + /// An Attachment is a file that can be attached to various account attributes within ADS. /// This data model contains metadata about the attachment. You can upload and download attachments - /// into the Lockstep Platform along with this metadata. Attachments can be used for invoices, payments, + /// into the ADS Platform along with this metadata. Attachments can be used for invoices, payments, /// legal documents, or any other external files that you wish to track. /// /// See [Extensibility](https://developer.lockstep.io/docs/extensibility) for more information. @@ -32,13 +32,13 @@ public class AttachmentModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS when this record is + /// added to the ADS Platform. /// public Guid? AttachmentId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -46,11 +46,11 @@ public class AttachmentModel public Guid? GroupKey { get; set; } /// - /// An Attachment is connected to an existing item within the Lockstep Platform by the fields `TableKey` and + /// An Attachment is connected to an existing item within the ADS Platform by the fields `TableKey` and /// `ObjectKey`. For example, an Attachment connected to Invoice 12345 would have a `TableKey` value of /// `Invoice` and an `ObjectKey` value of `12345`. /// - /// The `TableKey` value contains the name of the table within the Lockstep Platform to which this Attachment + /// The `TableKey` value contains the name of the table within the ADS Platform to which this Attachment /// is connected. /// /// For more information, see [linking metadata to an object](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). @@ -58,11 +58,11 @@ public class AttachmentModel public string TableKey { get; set; } /// - /// An Attachment is connected to an existing item within the Lockstep Platform by the fields `TableKey` and + /// An Attachment is connected to an existing item within the ADS Platform by the fields `TableKey` and /// `ObjectKey`. For example, an Attachment connected to Invoice 12345 would have a `TableKey` value of /// `Invoice` and an `ObjectKey` value of `12345`. /// - /// The `ObjectKey` value contains the primary key of the record within the Lockstep Platform to which this + /// The `ObjectKey` value contains the primary key of the record within the ADS Platform to which this /// Attachment is connected. /// /// For more information, see [linking metadata to an object](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). @@ -70,13 +70,13 @@ public class AttachmentModel public Guid? ObjectKey { get; set; } /// - /// An Attachment represents a file that was uploaded to the Lockstep Platform. This field contains the original + /// An Attachment represents a file that was uploaded to the ADS Platform. This field contains the original /// name of the file on disk, without its extension. /// public string FileName { get; set; } /// - /// An Attachment represents a file that was uploaded to the Lockstep Platform. This field contains the original + /// An Attachment represents a file that was uploaded to the ADS Platform. This field contains the original /// extension name of the file on disk. /// public string FileExt { get; set; } @@ -120,9 +120,25 @@ public class AttachmentModel /// public Guid? CreatedUserId { get; set; } + /// + /// The date the attachment was modified. + /// + public DateTime? Modified { get; set; } + + /// + /// The unique ID of the [UserAccount](https://developer.lockstep.io/docs/useraccountmodel) of the user + /// who modified this Attachment. + /// + public Guid? ModifiedUserId { get; set; } + /// /// A text string describing the type of this Attachment. /// public string AttachmentType { get; set; } + + /// + /// The different statuses of an attachment being scanned for viruses. + /// + public string UploadStatus { get; set; } } -} +} \ No newline at end of file diff --git a/src/models/BatchSyncModel.cs b/src/models/BatchSyncModel.cs index 196447e..3d8a68f 100644 --- a/src/models/BatchSyncModel.cs +++ b/src/models/BatchSyncModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,13 +21,13 @@ namespace LockstepSDK.Models { /// - /// A BatchSyncModel contains a collection of records to load into the Lockstep Platform. Data contained + /// A BatchSyncModel contains a collection of records to load into the ADS Platform. Data contained /// in this batch will be merged with your existing data. Each record will be matched with existing data inside - /// the Lockstep Platform using the [Identity Column](https://developer.lockstep.io/docs/identity-columns) rules. + /// the ADS Platform using the [Identity Column](https://developer.lockstep.io/docs/identity-columns) rules. /// Any record that represents a new AppEnrollmentId+ErpKey will be inserted. A record that matches an existing /// AppEnrollmentId+ErpKey will be updated, but only if the data has changed. /// - /// A Sync process permits either a complete data file or a partial / delta data file. Lockstep recommends + /// A Sync process permits either a complete data file or a partial / delta data file. ADS recommends /// using a sliding time window to avoid the risk of clock skew errors that might accidentally omit records. /// Best practice is to run a Sync process daily, and to export all data that has changed in the past 48 hours. /// @@ -45,63 +45,93 @@ public class BatchSyncModel public bool? IsFullSync { get; set; } /// - /// A list of Company records to merge with your Lockstep Platform data + /// The optional current batch number for this batch sync. + /// + public int? CurrentBatch { get; set; } + + /// + /// The optional total number of batchs for this batch sync. + /// + public int? TotalBatches { get; set; } + + /// + /// The optional existing parent sync request id for the batch sync. + /// + public Guid? ParentSyncRequestId { get; set; } + + /// + /// A list of Company records to merge with your ADS Platform data /// public CompanySyncModel[] Companies { get; set; } /// - /// A list of Contact records to merge with your Lockstep Platform data + /// A list of Contact records to merge with your ADS Platform data /// public ContactSyncModel[] Contacts { get; set; } /// - /// A list of CreditMemoApplied records to merge with your Lockstep Platform data + /// A list of CreditMemoApplied records to merge with your ADS Platform data /// public CreditMemoAppliedSyncModel[] CreditMemoApplications { get; set; } /// - /// A list of Invoice records to merge with your Lockstep Platform data + /// A list of Invoice records to merge with your ADS Platform data /// public InvoiceSyncModel[] Invoices { get; set; } /// - /// A list of InvoiceLine records to merge with your Lockstep Platform data + /// A list of InvoiceLine records to merge with your ADS Platform data /// public InvoiceLineSyncModel[] InvoiceLines { get; set; } /// - /// A list of CustomField records to merge with your Lockstep Platform data + /// A list of InvoiceWorkflowStatus records to merge with your ADS Platform data + /// + public InvoiceWorkflowStatusSyncModel[] InvoiceWorkflowStatuses { get; set; } + + /// + /// A list of CustomField records to merge with your ADS Platform data /// public CustomFieldSyncModel[] CustomFields { get; set; } /// - /// A list of Payment records to merge with your Lockstep Platform data + /// A list of Payment records to merge with your ADS Platform data /// public PaymentSyncModel[] Payments { get; set; } /// - /// A list of PaymentApplied records to merge with your Lockstep Platform data + /// A list of PaymentApplied records to merge with your ADS Platform data /// public PaymentAppliedSyncModel[] PaymentApplications { get; set; } /// - /// A list of FinancialYearSetting records to merge with your Lockstep Platform data + /// A list of FinancialYearSetting records to merge with your ADS Platform data /// public FinancialYearSettingSyncModel[] FinancialYearSettings { get; set; } /// - /// A list of FinancialAccount records to merge with your Lockstep Platform data + /// A list of FinancialAccount records to merge with your ADS Platform data /// public FinancialAccountSyncModel[] FinancialAccounts { get; set; } /// - /// A list of FinancialAccountBalanceHistory records to merge with your Lockstep Platform data + /// A list of FinancialAccountBalanceHistory records to merge with your ADS Platform data /// public FinancialAccountBalanceHistorySyncModel[] FinancialAccountBalanceHistories { get; set; } /// - /// A list of BaseCurrency records to merge with your Lockstep Platform data + /// A list of BaseCurrency records to merge with your ADS Platform data /// public BaseCurrencySyncModel[] BaseCurrencies { get; set; } + + /// + /// A list of JournalEntry records to merge with your ADS Platform data + /// + public JournalEntrySyncModel[] JournalEntries { get; set; } + + /// + /// A list of JournalEntryLine records to merge with your ADS Platform data + /// + public JournalEntryLineSyncModel[] JournalEntryLines { get; set; } } } diff --git a/src/models/BulkCurrencyConversionModel.cs b/src/models/BulkCurrencyConversionModel.cs deleted file mode 100644 index 27410ea..0000000 --- a/src/models/BulkCurrencyConversionModel.cs +++ /dev/null @@ -1,41 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Input format used for bulk conversion route - /// - public class BulkCurrencyConversionModel - { - - /// - /// The date for the currency rate - /// - /// This is a date-only field stored as a string in ISO 8601 (YYYY-MM-DD) format. - /// - public string Date { get; set; } - - /// - /// The currency code This will be validated by the /api/v1/definitions/currencies data set - /// - public string SourceCurrency { get; set; } - } -} diff --git a/src/models/CashflowReportModel.cs b/src/models/CashflowReportModel.cs deleted file mode 100644 index f31c106..0000000 --- a/src/models/CashflowReportModel.cs +++ /dev/null @@ -1,59 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents the cashflow report based on a timeframe - /// - public class CashflowReportModel - { - - /// - /// Timeframe in days the cashflow report is generated on - /// - public int? Timeframe { get; set; } - - /// - /// The base currency code of the group. - /// - public string BaseCurrencyCode { get; set; } - - /// - /// Amount of payments collected based in the timeframe in the group's base currency - /// - public decimal? PaymentsCollected { get; set; } - - /// - /// Number of payments collected based in the timeframe - /// - public int? PaymentsCollectedCount { get; set; } - - /// - /// Amount of invoices billed based in the timeframe in the group's base currency - /// - public decimal? InvoicesBilled { get; set; } - - /// - /// Number of invoices billed in the timeframe - /// - public int? InvoicesBilledCount { get; set; } - } -} diff --git a/src/models/CodeDefinitionModel.cs b/src/models/CodeDefinitionModel.cs index c2a58a9..6f5b9c7 100644 --- a/src/models/CodeDefinitionModel.cs +++ b/src/models/CodeDefinitionModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -22,19 +22,19 @@ namespace LockstepSDK.Models /// /// Represents a Code Definition. Codes can be used as shortened, human readable strings. - /// Additionally, this table can be used to store lists of system values for Lockstep objects. + /// Additionally, this table can be used to store lists of system values for ADS Platform objects. /// public class CodeDefinitionModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS when this record is + /// added to the ADS Platform. /// public Guid? CodeDefinitionId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). diff --git a/src/models/CompanyDetailsModel.cs b/src/models/CompanyDetailsModel.cs deleted file mode 100644 index 26d0bd9..0000000 --- a/src/models/CompanyDetailsModel.cs +++ /dev/null @@ -1,137 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Contains company details data - /// - public class CompanyDetailsModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The unique ID of this company - /// - public Guid? CustomerId { get; set; } - - /// - /// The unique ID of this company - /// - public string Name { get; set; } - - /// - /// Company address info - /// - public string Address1 { get; set; } - - /// - /// Company address info - /// - public string Address2 { get; set; } - - /// - /// Company address info - /// - public string Address3 { get; set; } - - /// - /// Company address info - /// - public string City { get; set; } - - /// - /// Company address info - /// - public string State { get; set; } - - /// - /// Company address info - /// - public string PostalCode { get; set; } - - /// - /// Company address country - /// - public string Country { get; set; } - - /// - /// Company phone number - /// - public string PhoneNumber { get; set; } - - /// - /// Company fax number - /// - public string FaxNumber { get; set; } - - /// - /// Company email address - /// - public string Email { get; set; } - - /// - /// Company primary contact id - /// - public Guid? ContactId { get; set; } - - /// - /// Company primary contact name - /// - public string ContactName { get; set; } - - /// - /// Company primary contact email address - /// - public string ContactEmail { get; set; } - - /// - /// Company number of outstanding invoices - /// - public int? OutstandingInvoices { get; set; } - - /// - /// The group's base currency code. - /// - public string GroupBaseCurrencyCode { get; set; } - - /// - /// Company total outstanding invoice amount in the group's base currency. - /// - public decimal? OutstandingAmount { get; set; } - - /// - /// Company total past due amount in the group's base currency. - /// - public decimal? AmountPastDue { get; set; } - - /// - /// Company payments collected - /// - public CompanyDetailsPaymentModel[] Payments { get; set; } - } -} diff --git a/src/models/CompanyDetailsPaymentModel.cs b/src/models/CompanyDetailsPaymentModel.cs deleted file mode 100644 index 1c5474c..0000000 --- a/src/models/CompanyDetailsPaymentModel.cs +++ /dev/null @@ -1,92 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Company payment collected information - /// - public class CompanyDetailsPaymentModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// Unique identifier for payment - /// - public Guid? PaymentId { get; set; } - - /// - /// Unique identifier for payment applied - /// - public Guid? PaymentAppliedId { get; set; } - - /// - /// Payment type - /// - public string PaymentType { get; set; } - - /// - /// Unique identifier for invoice payment is associated with - /// - public Guid? InvoiceId { get; set; } - - /// - /// Invoice type payment is associated with - /// - public string InvoiceTypeCode { get; set; } - - /// - /// Invoice reference code payment is associated with - /// - public string InvoiceReferenceCode { get; set; } - - /// - /// The currency code of the invoice the payment is associated with. - /// - public string InvoiceCurrencyCode { get; set; } - - /// - /// Invoice total amount payment is associated with - /// - public decimal? InvoiceTotalAmount { get; set; } - - /// - /// Date payment placed - /// - public DateTime? PaymentDate { get; set; } - - /// - /// The currency code of the payment. - /// - public string PaymentCurrencyCode { get; set; } - - /// - /// Amount payment was made for - /// - public decimal? PaymentAmount { get; set; } - } -} diff --git a/src/models/CompanyModel.cs b/src/models/CompanyModel.cs index 3ce0e94..6fd8faa 100644 --- a/src/models/CompanyModel.cs +++ b/src/models/CompanyModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -31,8 +31,8 @@ public class CompanyModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS when this record is + /// added to the ADS Platform. /// /// For the ID of this record in its originating financial system, see `ErpKey`. /// @@ -70,21 +70,7 @@ public class CompanyModel public string CompanyType { get; set; } /// - /// 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. - /// - public Guid? ParentCompanyId { get; set; } - - /// - /// 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. - /// - public Guid? EnterpriseId { get; set; } - - /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -106,65 +92,10 @@ public class CompanyModel public string DefaultCurrencyCode { get; set; } /// - /// The URL of this company's logo, if known. - /// - public string CompanyLogoUrl { get; set; } - - /// - /// The Lockstep `ContactId` of the primary contact for this company. + /// The ADS Platform `ContactId` of the primary contact for this company. /// public Guid? PrimaryContactId { get; set; } - /// - /// Address info - /// - public string Address1 { get; set; } - - /// - /// Address info - /// - public string Address2 { get; set; } - - /// - /// Address info - /// - public string Address3 { get; set; } - - /// - /// Address info - /// - public string City { get; set; } - - /// - /// Address info - /// - public string StateRegion { get; set; } - - /// - /// Address info - /// - public string PostalCode { get; set; } - - /// - /// Address info - /// - public string Country { get; set; } - - /// - /// Time zone - /// - public string TimeZone { get; set; } - - /// - /// Phone number - /// - public string PhoneNumber { get; set; } - - /// - /// Fax number - /// - public string FaxNumber { get; set; } - /// /// The date this company was created /// @@ -185,43 +116,6 @@ public class CompanyModel /// public Guid? ModifiedUserId { get; set; } - /// - /// Federal Tax ID - /// - public string TaxId { get; set; } - - /// - /// Dun & Bradstreet Number - /// - public string DunsNumber { get; set; } - - /// - /// Indicates the preferred invoice delivery method. Examples include Print, Email, Fax - /// - public string PreferredDeliveryMethod { get; set; } - - /// - /// 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. - /// - public string DomainName { get; set; } - - /// - /// Identifier for classification of this company. - /// - public Guid? CompanyClassificationCodeDefId { get; set; } - - /// - /// Description of the company. - /// - public string Description { get; set; } - - /// - /// Website URL for this company. - /// - public string Website { get; set; } - /// /// The AppEnrollmentId of the application that imported this record. For accounts /// with more than one financial system connected, this field identifies the originating @@ -235,41 +129,6 @@ public class CompanyModel /// public string EmailAddress { get; set; } - /// - /// The public url slug for the Company. - /// - public string PublicUrlSlug { get; set; } - - /// - /// State Tax ID - /// - public string StateTaxId { get; set; } - - /// - /// The state where the company was registered. - /// - public string StateOfIncorporation { get; set; } - - /// - /// Linkedin Url - /// - public string LinkedInUrlSlug { get; set; } - - /// - /// This flag indicates whether the company is verified. - /// - public bool? IsVerified { get; set; } - - /// - /// The date this company was last verified. - /// - public DateTime? LastVerifiedDate { get; set; } - - /// - /// View box settings for the company logo. - /// - public ViewBoxSettingsModel ViewBoxSettings { get; set; } - /// /// The unique ID of the Service Fabric organisation to which this record belongs. /// @@ -280,16 +139,6 @@ public class CompanyModel /// public Guid? ServiceFabricCompanyId { get; set; } - /// - /// A unique identification number assigned to the company by the national registration office. - /// - public string CompanyRegistrationNumber { get; set; } - - /// - /// An optional reference to a real company, making this a profile. - /// - public Guid? ProfileReferenceId { get; set; } - /// /// A collection of notes linked to this record. To retrieve this collection, specify `Notes` in the /// `include` parameter when retrieving data. diff --git a/src/models/CompanySyncModel.cs b/src/models/CompanySyncModel.cs index 57bb1a0..454533a 100644 --- a/src/models/CompanySyncModel.cs +++ b/src/models/CompanySyncModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,13 +21,13 @@ namespace LockstepSDK.Models { /// - /// The CompanySyncModel represents information coming into Lockstep from an external financial system or other + /// The CompanySyncModel represents information coming into ADS from an external financial system or other /// enterprise resource planning system. To import data from an external system, convert your original data into /// the CompanySyncModel format and call the [Upload Sync File API](https://developer.lockstep.io/reference/post_api-v1-sync-zip). - /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the Lockstep - /// platform. + /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the ADS + /// Platform. /// - /// Once imported, this record will be available in the Lockstep API as a [CompanyModel](https://developer.lockstep.io/docs/companymodel). + /// Once imported, this record will be available in the ADS Platform API as a [CompanyModel](https://developer.lockstep.io/docs/companymodel). /// /// For more information on writing your own connector, see [Connector Data](https://developer.lockstep.io/docs/connector-data). /// @@ -39,6 +39,11 @@ public class CompanySyncModel /// public int? OnMatchAction { get; set; } + /// + /// The unique identifier of this object in the Sage Network platform. + /// + public Guid? NetworkId { get; set; } + /// /// This is the primary key of the Company record. For this field, you should use whatever the company's unique /// identifying number is in the originating system. Search for a unique, non-changing number within the @@ -64,7 +69,7 @@ public class CompanySyncModel /// `Customer`, `Group`, `Vendor`, or `Third Party`. A company that represents both a customer and a vendor is /// identified as a `CustomerVendor`. /// - /// When loading data into Lockstep, you should focus on the distinction between a company that is part of + /// When loading data into ADS, you should focus on the distinction between a company that is part of /// your own enterprise, or a company that is external to your enterprise. /// /// For a company that is within your enterprise, you should set this value to be `Company`. @@ -84,6 +89,11 @@ public class CompanySyncModel /// public string ParentCompanyErpKey { get; set; } + /// + /// The network id of the parent Company. + /// + public Guid? ParentCompanyNetworkId { get; set; } + /// /// This flag indicates whether the company is currently active. An inactive company will be hidden from the /// user interface but will still be available for querying. @@ -107,6 +117,11 @@ public class CompanySyncModel /// public string PrimaryContactErpKey { get; set; } + /// + /// The network id of the primary Contact. + /// + public Guid? PrimaryContactNetworkId { get; set; } + /// /// The company's primary mailing address information /// @@ -122,6 +137,11 @@ public class CompanySyncModel /// public string Address3 { get; set; } + /// + /// The company's primary mailing address information + /// + public string Address4 { get; set; } + /// /// The company's primary mailing address information /// @@ -195,5 +215,10 @@ public class CompanySyncModel /// A unique identification number assigned to the company by the national registration office. /// public string CompanyRegistrationNumber { get; set; } + + /// + /// The set of identifiers for the Company. + /// + public string CompanyIdentifiers { get; set; } } } diff --git a/src/models/ConnectorInfoModel.cs b/src/models/ConnectorInfoModel.cs index 38608ce..72cf730 100644 --- a/src/models/ConnectorInfoModel.cs +++ b/src/models/ConnectorInfoModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -82,5 +82,25 @@ public class ConnectorInfoModel /// The port number of the server a connection is being created for. /// public int? ServerPort { get; set; } + + /// + /// The Client Id for the connection being created. + /// + public string ClientId { get; set; } + + /// + /// The Secret for the connection being created. + /// + public string ClientSecret { get; set; } + + /// + /// The TenantId for the connection being created. + /// + public string Tenant { get; set; } + + /// + /// The AuthToken for the connection being created. + /// + public string AuthToken { get; set; } } } diff --git a/src/models/ContactModel.cs b/src/models/ContactModel.cs index cbec551..a60d596 100644 --- a/src/models/ContactModel.cs +++ b/src/models/ContactModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -30,8 +30,8 @@ public class ContactModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS when this record is + /// added to the ADS Platform. /// /// For the ID of this record in its originating financial system, see `ErpKey`. /// @@ -43,7 +43,7 @@ public class ContactModel public Guid? CompanyId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -66,86 +66,16 @@ public class ContactModel /// public string ContactName { get; set; } - /// - /// A friendly human-readable code that describes this Contact. - /// - public string ContactCode { get; set; } - - /// - /// The title of the contact. - /// - public string Title { get; set; } - - /// - /// The role code for the contact. - /// - public string RoleCode { get; set; } - /// /// The email address of the contact. /// public string EmailAddress { get; set; } - /// - /// The phone number of the contact. - /// - public string Phone { get; set; } - - /// - /// The fax number of the contact. - /// - public string Fax { get; set; } - - /// - /// The first line of the address. - /// - public string Address1 { get; set; } - - /// - /// The second line of the address. - /// - public string Address2 { get; set; } - - /// - /// The third line of the address. - /// - public string Address3 { get; set; } - - /// - /// The city of the address. - /// - public string City { get; set; } - - /// - /// The state/region of the address. - /// - public string StateRegion { get; set; } - - /// - /// The postal/zip code of the address. - /// - public string PostalCode { get; set; } - - /// - /// The two character country code of the address. This will be validated by the /api/v1/definitions/countries data set - /// - public string CountryCode { get; set; } - /// /// Flag indicating if the contact is active. /// public bool? IsActive { get; set; } - /// - /// The webpage url of the contact. - /// - public string WebpageUrl { get; set; } - - /// - /// The picture/avatar url of the contact. - /// - public string PictureUrl { get; set; } - /// /// The date on which this record was created. /// diff --git a/src/models/ContactSyncModel.cs b/src/models/ContactSyncModel.cs index cb9db92..86fadf8 100644 --- a/src/models/ContactSyncModel.cs +++ b/src/models/ContactSyncModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,13 +21,13 @@ namespace LockstepSDK.Models { /// - /// The ContactSyncModel represents information coming into Lockstep from an external financial system or other + /// The ContactSyncModel represents information coming into ADS from an external financial system or other /// enterprise resource planning system. To import data from an external system, convert your original data into /// the ContactSyncModel format and call the [Upload Sync File API](https://developer.lockstep.io/reference/post_api-v1-sync-zip). - /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the Lockstep - /// platform. + /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the ADS + /// Platform. /// - /// Once imported, this record will be available in the Lockstep API as a [ContactModel](https://developer.lockstep.io/docs/contactmodel). + /// Once imported, this record will be available in the ADS Platform API as a [ContactModel](https://developer.lockstep.io/docs/contactmodel). /// /// For more information on writing your own connector, see [Connector Data](https://developer.lockstep.io/docs/connector-data). /// @@ -39,6 +39,11 @@ public class ContactSyncModel /// public int? OnMatchAction { get; set; } + /// + /// The unique identifier of this object in the Sage Network platform. + /// + public Guid? NetworkId { get; set; } + /// /// This is the primary key of the Contact record. For this field, you should use whatever the contact's unique /// identifying number is in the originating system. Search for a unique, non-changing number within the @@ -64,6 +69,11 @@ public class ContactSyncModel /// public string CompanyErpKey { get; set; } + /// + /// The network id of the related Company. + /// + public Guid? CompanyNetworkId { get; set; } + /// /// The name of the contact. /// @@ -99,6 +109,11 @@ public class ContactSyncModel /// public string Fax { get; set; } + /// + /// The IETF language tag for the contact's locale. + /// + public string Locale { get; set; } + /// /// The mailing address information for this contact. /// @@ -114,6 +129,11 @@ public class ContactSyncModel /// public string Address3 { get; set; } + /// + /// The mailing address information for this contact. + /// + public string Address4 { get; set; } + /// /// The mailing address information for this contact. /// diff --git a/src/models/CountryModel.cs b/src/models/CountryModel.cs index 5e9ac59..803ec9a 100644 --- a/src/models/CountryModel.cs +++ b/src/models/CountryModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ diff --git a/src/models/CreditMemoAppliedModel.cs b/src/models/CreditMemoAppliedModel.cs index d930687..d174a4d 100644 --- a/src/models/CreditMemoAppliedModel.cs +++ b/src/models/CreditMemoAppliedModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -23,7 +23,7 @@ namespace LockstepSDK.Models /// /// Credit Memos reflect credits granted to a customer for various reasons, such as discounts or refunds. /// Credit Memos may be applied to Invoices as Payments. When a Credit Memo is applied as payment to an Invoice, - /// Lockstep creates a Credit Memo Application record to track the amount from the Credit Memo that was applied + /// ADS Platform creates a Credit Memo Application record to track the amount from the Credit Memo that was applied /// as payment to the Invoice. You can examine Credit Memo Application records to track which Invoices were paid /// using this Credit. /// @@ -31,15 +31,15 @@ public class CreditMemoAppliedModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS when this record is + /// added to the ADS Platform. /// /// For the ID of this record in its originating financial system, see `ErpKey`. /// public Guid? CreditMemoAppliedId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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,20 +47,20 @@ public class CreditMemoAppliedModel public Guid? GroupKey { get; set; } /// - /// The Lockstep ID of the Invoice to which this credit memo was applied. This Invoice's outstanding balance + /// The ADS Platform ID of the Invoice to which this credit memo was applied. This Invoice's outstanding balance /// was reduced by the value of the field `CreditMemoAppliedAmount` on the date `ApplyToInvoiceDate`. /// /// Example: Company ABC received a credit memo, CM000123 for $500. Company ABC then chooses to apply this - /// credit memo to reduce the balance of the invoice PO1000578. The `InvoiceErpKey` is the Lockstep Platform + /// credit memo to reduce the balance of the invoice PO1000578. The `InvoiceErpKey` is the ADS Platform /// ID number of Invoice `PO1000578`. /// public Guid? InvoiceId { get; set; } /// - /// The Lockstep ID of the Invoice of type "Credit Memo" that was consumed in this payment application event. + /// The ADS Platform ID of the Invoice of type "Credit Memo" that was consumed in this payment application event. /// /// Example: Company ABC received a credit memo, CM000123 for $500. Company ABC then chooses to apply this - /// credit memo to reduce the balance of the invoice PO1000578. The `CreditMemoInvoiceId` is the Lockstep + /// credit memo to reduce the balance of the invoice PO1000578. The `CreditMemoInvoiceId` is the ADS /// Platform ID number of Invoice `CM000123`. /// public Guid? CreditMemoInvoiceId { get; set; } @@ -77,14 +77,14 @@ public class CreditMemoAppliedModel public string ErpKey { get; set; } /// - /// Possible statuses for a record that supports ERP write. + /// Possible statuses for a record that supports ERP Update. /// - public int? ErpWriteStatus { get; set; } + public int? ErpUpdateStatus { get; set; } /// - /// The name of the ErpWriteStatus for this credit memo application + /// Possible actions for a record that supports ERP Update. /// - public string ErpWriteStatusName { get; set; } + public int? ErpUpdateAction { get; set; } /// /// Reference number for the applied credit memo. diff --git a/src/models/CreditMemoAppliedSyncModel.cs b/src/models/CreditMemoAppliedSyncModel.cs index 2f19510..9e813b2 100644 --- a/src/models/CreditMemoAppliedSyncModel.cs +++ b/src/models/CreditMemoAppliedSyncModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,13 +21,13 @@ namespace LockstepSDK.Models { /// - /// The CreditMemoAppliedSyncModel represents information coming into Lockstep from an external financial system or + /// The CreditMemoAppliedSyncModel represents information coming into ADS from an external financial system or /// other enterprise resource planning system. To import data from an external system, convert your original data /// into the CreditMemoAppliedSyncModel format and call the [Upload Sync File API](https://developer.lockstep.io/reference/post_api-v1-sync-zip). - /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the Lockstep - /// platform. + /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the ADS + /// Platform. /// - /// Once imported, this record will be available in the Lockstep API as a [CreditMemoAppliedModel](https://developer.lockstep.io/docs/creditmemoappliedmodel). + /// Once imported, this record will be available in the ADS Platform API as a [CreditMemoAppliedModel](https://developer.lockstep.io/docs/creditmemoappliedmodel). /// /// For more information on writing your own connector, see [Connector Data](https://developer.lockstep.io/docs/connector-data). /// @@ -39,6 +39,11 @@ public class CreditMemoAppliedSyncModel /// public int? OnMatchAction { get; set; } + /// + /// The unique identifier of this object in the Sage Network platform. + /// + public Guid? NetworkId { get; set; } + /// /// This is the primary key of the Credit Memo Application record. For this field, you should use whatever this /// transaction's unique identifying number is in the originating system. Search for a unique, non-changing @@ -60,6 +65,11 @@ public class CreditMemoAppliedSyncModel /// public string InvoiceErpKey { get; set; } + /// + /// The network id of the parent Invoice. + /// + public Guid? InvoiceNetworkId { get; set; } + /// /// This field indicates which Invoice is the original credit memo that was used to make this payment /// application event. In this field, identify the original primary key or unique ID of the Invoice which diff --git a/src/models/CreditMemoInvoiceModel.cs b/src/models/CreditMemoInvoiceModel.cs index 9114e39..db0af64 100644 --- a/src/models/CreditMemoInvoiceModel.cs +++ b/src/models/CreditMemoInvoiceModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -27,7 +27,7 @@ public class CreditMemoInvoiceModel { /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -45,8 +45,8 @@ public class CreditMemoInvoiceModel public string CurrencyCode { get; set; } /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS when this record is + /// added to the ADS Platform. /// public Guid? CreditMemoAppliedId { get; set; } diff --git a/src/models/CurrencyModel.cs b/src/models/CurrencyModel.cs index 92ea9ac..125c6a6 100644 --- a/src/models/CurrencyModel.cs +++ b/src/models/CurrencyModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ diff --git a/src/models/CurrencyRateModel.cs b/src/models/CurrencyRateModel.cs deleted file mode 100644 index 513ce53..0000000 --- a/src/models/CurrencyRateModel.cs +++ /dev/null @@ -1,51 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents a currency rate for specific currencies and date - /// - public class CurrencyRateModel - { - - /// - /// The source currency - /// - public string SourceCurrency { get; set; } - - /// - /// The destination currency - /// - public string DestinationCurrency { get; set; } - - /// - /// The date for the currency rate - /// - /// This is a date-only field stored as a string in ISO 8601 (YYYY-MM-DD) format. - /// - public string Date { get; set; } - - /// - /// The currency rate value - /// - public decimal? CurrencyRate { get; set; } - } -} diff --git a/src/models/CustomFieldDefinitionModel.cs b/src/models/CustomFieldDefinitionModel.cs index 741e14b..63b383a 100644 --- a/src/models/CustomFieldDefinitionModel.cs +++ b/src/models/CustomFieldDefinitionModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,7 +21,7 @@ namespace LockstepSDK.Models { /// - /// A Custom Field represents metadata added to an object within the Lockstep Platform. Lockstep provides a + /// A Custom Field represents metadata added to an object within the ADS Platform. ADS provides a /// core definition for each object. The core definition is intended to represent a level of compatibility /// that provides support across most accounting systems and products. When a user or developer requires /// information beyond this core definition, you can use Custom Fields to represent this information. @@ -32,13 +32,19 @@ public class CustomFieldDefinitionModel { /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). /// public Guid? GroupKey { get; set; } + /// + /// The unique ID of this record, automatically assigned by ADS when this record is + /// added to the ADS Platform. + /// + public Guid? CustomFieldDefinitionId { get; set; } + /// /// Table to which this definition belongs /// diff --git a/src/models/CustomFieldSyncModel.cs b/src/models/CustomFieldSyncModel.cs index 7b43f59..94cc3c5 100644 --- a/src/models/CustomFieldSyncModel.cs +++ b/src/models/CustomFieldSyncModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,17 +21,17 @@ namespace LockstepSDK.Models { /// - /// The CustomFieldSyncModel represents information coming into Lockstep from an external financial system or other + /// The CustomFieldSyncModel represents information coming into ADS from an external financial system or other /// enterprise resource planning system. [Custom Fields](https://developer.lockstep.io/docs/custom-fields#custom-fields) - /// represent custom data extensions that you can use with the Lockstep Platform. If you need to store extra - /// information about an object that does not match Lockstep's official schema, you can store it in the Custom + /// represent custom data extensions that you can use with the ADS Platform. If you need to store extra + /// information about an object that does not match ADS's official schema, you can store it in the Custom /// Field system using CustomFieldSyncModel. /// /// To store a custom field for an object, create a CustomFieldSyncModel record containing the `TableKey` and /// `ErpKey` of the entity to which you will attach a custom field. Next specify the field's `CustomFieldLabel` /// and either a `StringValue` or `NumericValue`. /// - /// Once imported, this record will be available in the Lockstep API as a [CustomFieldValueModel](https://developer.lockstep.io/docs/customfieldvaluemodel). + /// Once imported, this record will be available in the ADS Platform API as a [CustomFieldValueModel](https://developer.lockstep.io/docs/customfieldvaluemodel). /// /// For more information on writing your own connector, see [Connector Data](https://developer.lockstep.io/docs/connector-data). /// diff --git a/src/models/CustomFieldValueModel.cs b/src/models/CustomFieldValueModel.cs index 7489f88..9364b4a 100644 --- a/src/models/CustomFieldValueModel.cs +++ b/src/models/CustomFieldValueModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,7 +21,7 @@ namespace LockstepSDK.Models { /// - /// A Custom Field represents metadata added to an object within the Lockstep Platform. Lockstep provides a + /// A Custom Field represents metadata added to an object within the ADS Platform. ADS provides a /// core definition for each object. The core definition is intended to represent a level of compatibility /// that provides support across most accounting systems and products. When a user or developer requires /// information beyond this core definition, you can use Custom Fields to represent this information. @@ -32,7 +32,7 @@ public class CustomFieldValueModel { /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). diff --git a/src/models/CustomerSummaryModel.cs b/src/models/CustomerSummaryModel.cs deleted file mode 100644 index cc83e64..0000000 --- a/src/models/CustomerSummaryModel.cs +++ /dev/null @@ -1,142 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Contains summarized data for a customer - /// - public class CustomerSummaryModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The unique ID of this company. - /// - public Guid? CompanyId { get; set; } - - /// - /// The name of the company. - /// - public string CompanyName { get; set; } - - /// - /// The name of the primary contact. - /// - public string PrimaryContact { get; set; } - - /// - /// The app enrollment ID this Customer is associated with - /// - public Guid? AppEnrollmentId { get; set; } - - /// - /// The number of outstanding invoices for this customer. - /// - public int? OutstandingInvoices { get; set; } - - /// - /// The number of open invoices. - /// - public int? TotalInvoicesOpen { get; set; } - - /// - /// The number of past due invoices. - /// - public int? TotalInvoicesPastDue { get; set; } - - /// - /// The number of closed invoices for this customer. - /// - public int? ClosedInvoices { get; set; } - - /// - /// The number of closed invoices for this customer in the past thirty days. - /// - public int? ClosedInvoicesPastThirtyDays { get; set; } - - /// - /// The total from collected payments. - /// - public decimal? AmountCollected { get; set; } - - /// - /// The total from collected payments in the past thirty days. - /// - public decimal? AmountCollectedPastThirtyDays { get; set; } - - /// - /// The total balance of outstanding invoices. - /// - public decimal? OutstandingAmount { get; set; } - - /// - /// The total amount invoiced in the past thirty days. - /// - public decimal? InvoicedAmountPastThirtyDays { get; set; } - - /// - /// The total amount outstanding from the invoices invoiced in the past thirty days. - /// - public decimal? OutstandingAmountPastThirtyDays { get; set; } - - /// - /// The number of invoices invoiced in the past thirty days. - /// - public int? InvoicesPastThirtyDays { get; set; } - - /// - /// The total amount past due for this customer. - /// - public decimal? AmountPastDue { get; set; } - - /// - /// The total value of unapplied Payments for this Customer. - /// - public decimal? UnappliedPayments { get; set; } - - /// - /// The total value of unapplied Payments for this Customer in the past thirty days. - /// - public decimal? UnappliedAmountPastThirtyDays { get; set; } - - /// - /// Portion of Total AR for this Customer that is Past due. (TotalPastDue / Total AR). - /// - public decimal? PercentOfTotalAr { get; set; } - - /// - /// Daily sales outstanding value for this Customer. - /// - public decimal? Dso { get; set; } - - /// - /// The modified date of the customer. - /// - public DateTime? Modified { get; set; } - } -} diff --git a/src/models/DailyPayableOutstandingReportModel.cs b/src/models/DailyPayableOutstandingReportModel.cs deleted file mode 100644 index 2260bf3..0000000 --- a/src/models/DailyPayableOutstandingReportModel.cs +++ /dev/null @@ -1,44 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents the daily payable outstanding report - /// - public class DailyPayableOutstandingReportModel - { - - /// - /// Timeframe (quarter) the daily payable outstanding values are associated with - /// - public DateTime? Timeframe { get; set; } - - /// - /// Number of invoices the average daily payable outstanding is calculated on - /// - public int? InvoiceCount { get; set; } - - /// - /// Time (in days) between an invoice was completed paid off and when the invoice was issued - /// - public decimal? DailyPayableOutstanding { get; set; } - } -} diff --git a/src/models/DailySalesOutstandingReportModel.cs b/src/models/DailySalesOutstandingReportModel.cs deleted file mode 100644 index 9d1d892..0000000 --- a/src/models/DailySalesOutstandingReportModel.cs +++ /dev/null @@ -1,39 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents the daily sales outstanding report - /// - public class DailySalesOutstandingReportModel - { - - /// - /// Timeframe (month) the daily sales outstanding values are associated with - /// - public DateTime? Timeframe { get; set; } - - /// - /// Time (in days) between an invoice was completed paid off and when the invoice was issued - /// - public decimal? DailySalesOutstanding { get; set; } - } -} diff --git a/src/models/DeveloperAccountSubmitModel.cs b/src/models/DeveloperAccountSubmitModel.cs deleted file mode 100644 index bda7945..0000000 --- a/src/models/DeveloperAccountSubmitModel.cs +++ /dev/null @@ -1,49 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Model containing information to create a new developer account. - /// - public class DeveloperAccountSubmitModel - { - - /// - /// The first name of the person requesting the developer account. - /// - public string FirstName { get; set; } - - /// - /// The last name of the person requesting the developer account. - /// - public string LastName { get; set; } - - /// - /// The email address of the developer. - /// - public string Email { get; set; } - - /// - /// The company name of the developer. - /// - public string CompanyName { get; set; } - } -} diff --git a/src/models/DpoSummaryGroupTotalModel.cs b/src/models/DpoSummaryGroupTotalModel.cs deleted file mode 100644 index fb7ca35..0000000 --- a/src/models/DpoSummaryGroupTotalModel.cs +++ /dev/null @@ -1,62 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents the group totals for the values found in the daily payable outstanding summary - /// - public class DpoSummaryGroupTotalModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The total number of vendors with outstanding bills - /// - public int? Vendors { get; set; } - - /// - /// The total number of bills outstanding - /// - public int? Bills { get; set; } - - /// - /// The group's base currency code - /// - public string BaseCurrencyCode { get; set; } - - /// - /// The total amount outstanding at the group's base currency. - /// - public decimal? AmountOutstanding { get; set; } - - /// - /// The total dpo for the group key - /// - public decimal? Dpo { get; set; } - } -} diff --git a/src/models/DpoSummaryModel.cs b/src/models/DpoSummaryModel.cs deleted file mode 100644 index 130e704..0000000 --- a/src/models/DpoSummaryModel.cs +++ /dev/null @@ -1,72 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents a summary of outstanding amounts for bills to vendors and their associated daily payable outstanding value. - /// - public class DpoSummaryModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The unique ID of the vendor. - /// - public Guid? VendorId { get; set; } - - /// - /// The name of the vendor. - /// - public string VendorName { get; set; } - - /// - /// The name of the primary contact. - /// - public string PrimaryContact { get; set; } - - /// - /// The total number of outstanding bills. - /// - public int? Bills { get; set; } - - /// - /// The group's base currency code. - /// - public string BaseCurrencyCode { get; set; } - - /// - /// The total amount outstanding at the group's base currency. - /// - public decimal? AmountOutstanding { get; set; } - - /// - /// The days payable outstanding value. - /// - public decimal? Dpo { get; set; } - } -} diff --git a/src/models/ErpModel.cs b/src/models/ErpModel.cs deleted file mode 100644 index c68321d..0000000 --- a/src/models/ErpModel.cs +++ /dev/null @@ -1,44 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents unsupported ERP systems - /// - public class ErpModel - { - - /// - /// Unique ID for this ERP - /// - public Guid? ErpSystemId { get; set; } - - /// - /// Name of ERP - /// - public string Name { get; set; } - - /// - /// Flag to indicate if ERP is supported - /// - public bool? IsSupported { get; set; } - } -} diff --git a/src/models/FinancialAccountBalanceHistoryModel.cs b/src/models/FinancialAccountBalanceHistoryModel.cs index df157f8..e3f6f2f 100644 --- a/src/models/FinancialAccountBalanceHistoryModel.cs +++ b/src/models/FinancialAccountBalanceHistoryModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -27,13 +27,13 @@ public class FinancialAccountBalanceHistoryModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS when this record is + /// added to the ADS Platform. /// public Guid? FinancialAccountBalanceHistoryId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). diff --git a/src/models/FinancialAccountModel.cs b/src/models/FinancialAccountModel.cs index 564244b..8ba4be0 100644 --- a/src/models/FinancialAccountModel.cs +++ b/src/models/FinancialAccountModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -32,7 +32,7 @@ public class FinancialAccountModel public Guid? FinancialAccountId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -61,8 +61,8 @@ public class FinancialAccountModel public string Name { get; set; } /// - /// The status of the Financial Account. Possible values are active, - /// inactive, deleted or archived. + /// The status of the Financial Account. Possible values are Active, + /// Inactive, Deleted or Archived. /// public string Status { get; set; } @@ -93,6 +93,11 @@ public class FinancialAccountModel /// public string Subcategory { get; set; } + /// + /// The system account type of the Financial Account. + /// + public string SystemAccountType { get; set; } + /// /// The date the FinancialAccount was created. /// diff --git a/src/models/FinancialReportCellModel.cs b/src/models/FinancialReportCellModel.cs deleted file mode 100644 index 67504e1..0000000 --- a/src/models/FinancialReportCellModel.cs +++ /dev/null @@ -1,34 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents a cell of a financial report - /// - public class FinancialReportCellModel - { - - /// - /// The value of the financial report cell - /// - public string Value { get; set; } - } -} diff --git a/src/models/FinancialReportModel.cs b/src/models/FinancialReportModel.cs deleted file mode 100644 index cbe7d19..0000000 --- a/src/models/FinancialReportModel.cs +++ /dev/null @@ -1,62 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents a Financial Report - /// - public class FinancialReportModel - { - - /// - /// The name of the report ("*Report Type* for *Company*") - /// - public string ReportName { get; set; } - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The start date of the financial report - /// - public DateTime? ReportStartDate { get; set; } - - /// - /// The end date of the financial report - /// - public DateTime? ReportEndDate { get; set; } - - /// - /// The created date of the financial report - /// - public DateTime? ReportCreatedDate { get; set; } - - /// - /// The rows of the financial report - /// - public FinancialReportRowModel[] Rows { get; set; } - } -} diff --git a/src/models/FinancialReportRowModel.cs b/src/models/FinancialReportRowModel.cs deleted file mode 100644 index 6b38c3f..0000000 --- a/src/models/FinancialReportRowModel.cs +++ /dev/null @@ -1,49 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents a row of a financial Report report - /// - public class FinancialReportRowModel - { - - /// - /// Describes what type of row this row is (Header, Summary, Classification, Category, Subcategory, Data) - /// - public string RowType { get; set; } - - /// - /// The label for the row if it is a Classification, Category, or Subcategory. - /// - public string Label { get; set; } - - /// - /// The sub rows of this row if it is a Classification, Category, or Subcategory. - /// - public FinancialReportRowModel[] Rows { get; set; } - - /// - /// The cells of the row - /// - public FinancialReportCellModel[] Cells { get; set; } - } -} diff --git a/src/models/FinancialYearSettingModel.cs b/src/models/FinancialYearSettingModel.cs index 9e8ee87..a95fe1f 100644 --- a/src/models/FinancialYearSettingModel.cs +++ b/src/models/FinancialYearSettingModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -29,13 +29,13 @@ public class FinancialYearSettingModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS when this record is + /// added to the ADS Platform. /// public Guid? FinancialYearSettingId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). diff --git a/src/models/GroupAccountModel.cs b/src/models/GroupAccountModel.cs deleted file mode 100644 index 60a399a..0000000 --- a/src/models/GroupAccountModel.cs +++ /dev/null @@ -1,92 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents an account for an entire group - /// - public class GroupAccountModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The name of the group - /// - public string GroupName { get; set; } - - /// - /// The primary user for the group - /// - public Guid? PrimaryUserId { get; set; } - - /// - /// The CompanyId of the Company the group is associated with - /// - public Guid? GroupCompanyId { get; set; } - - /// - /// Base Currency of the group - /// - public string BaseCurrencyCode { get; set; } - - /// - /// The active status of the group - /// - public bool? IsActive { get; set; } - - /// - /// The onboarding session status of the group - /// - public bool? OnboardingScheduled { get; set; } - - /// - /// The date this group account was created - /// - public DateTime? Created { get; set; } - - /// - /// The ID of the user who created this group account - /// - public Guid? CreatedUserId { get; set; } - - /// - /// The date this group account was last modified - /// - public DateTime? Modified { get; set; } - - /// - /// The ID of the user who last modified this group account - /// - public Guid? ModifiedUserId { get; set; } - - /// - /// The 2-letter ISO country code for the group - /// - public string CountryCode { get; set; } - } -} diff --git a/src/models/InviteDataModel.cs b/src/models/InviteDataModel.cs deleted file mode 100644 index 55245d2..0000000 --- a/src/models/InviteDataModel.cs +++ /dev/null @@ -1,39 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Model containing information about a user for the invite/onboarding process. - /// - public class InviteDataModel - { - - /// - /// The email address of the invited user. - /// - public string Email { get; set; } - - /// - /// The status of the user. - /// - public string UserStatus { get; set; } - } -} diff --git a/src/models/InviteSubmitModel.cs b/src/models/InviteSubmitModel.cs deleted file mode 100644 index db541d0..0000000 --- a/src/models/InviteSubmitModel.cs +++ /dev/null @@ -1,34 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Model to invite a new user to your accounting group - /// - public class InviteSubmitModel - { - - /// - /// The email address of the user to invite - /// - public string Email { get; set; } - } -} diff --git a/src/models/InvoiceAddressModel.cs b/src/models/InvoiceAddressModel.cs index 766e982..9c0e870 100644 --- a/src/models/InvoiceAddressModel.cs +++ b/src/models/InvoiceAddressModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -27,13 +27,13 @@ public class InvoiceAddressModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS when this record is + /// added to the ADS Platform. /// public Guid? InvoiceAddressId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). diff --git a/src/models/InvoiceLineModel.cs b/src/models/InvoiceLineModel.cs index 62cc5b1..a53253a 100644 --- a/src/models/InvoiceLineModel.cs +++ b/src/models/InvoiceLineModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -27,15 +27,15 @@ public class InvoiceLineModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS when this record is + /// added to the ADS Platform. /// /// For the ID of this record in its originating financial system, see `ErpKey`. /// public Guid? InvoiceLineId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -65,6 +65,11 @@ public class InvoiceLineModel /// public string LineNumber { get; set; } + /// + /// The account number this line is associated with in the originating ERP or accounting system. + /// + public string AccountNumber { get; set; } + /// /// A code number identifying the product or service that is specified on this line. /// @@ -75,6 +80,11 @@ public class InvoiceLineModel /// public string Description { get; set; } + /// + /// The location to where specific items from an invoice will go. + /// + public string Location { get; set; } + /// /// For lines measured in a unit other than "quantity", this code indicates the measurement system for the quantity field. /// If the line is measured in quantity, this field is null. @@ -107,32 +117,52 @@ public class InvoiceLineModel public decimal? TotalAmount { get; set; } /// - /// If this line is tax exempt, this code indicates the reason for the exemption. + /// The tax code used for taxation on this line. /// - public string ExemptionCode { get; set; } + public string TaxCode { get; set; } /// - /// If null, the products specified on this line were delivered on the same date as all other lines. - /// If not null, this line was delivered or finalized on a different date than the overall invoice. - /// - /// This is a date-only field stored as a string in ISO 8601 (YYYY-MM-DD) format. + /// The taxation rate for this line. /// - public string ReportingDate { get; set; } + public decimal? TaxRate { get; set; } + + /// + /// The amount of sales tax for this line in the transaction's currency. + /// + public decimal? SalesTaxAmount { get; set; } /// - /// An optional ID number for the line's origin address. + /// The amount of sales tax for this line in the base currency. /// - public Guid? OverrideOriginAddressId { get; set; } + public decimal? BaseCurrencySalesTaxAmount { get; set; } /// - /// An optional ID number for the line's bill to address. + /// The total value of this invoice line with deductions, excluding taxes. /// - public Guid? OverrideBillToAddressId { get; set; } + public decimal? NetAmount { get; set; } /// - /// An optional ID number for the line's ship to address. + /// The total value of this invoice line with deductions, excluding taxes and in the invoice's base currency. /// - public Guid? OverrideShipToAddressId { get; set; } + public decimal? BaseCurrencyNetAmount { get; set; } + + /// + /// If this line is tax exempt, this code indicates the reason for the exemption. + /// + public string ExemptionCode { get; set; } + + /// + /// Unique identifier for tax purposes, used for reference, validation, or compliance. + /// + public string TaxUid { get; set; } + + /// + /// If null, the products specified on this line were delivered on the same date as all other lines. + /// If not null, this line was delivered or finalized on a different date than the overall invoice. + /// + /// This is a date-only field stored as a string in ISO 8601 (YYYY-MM-DD) format. + /// + public string ReportingDate { get; set; } /// /// The date on which this line was created. @@ -163,14 +193,14 @@ public class InvoiceLineModel public Guid? AppEnrollmentId { get; set; } /// - /// Possible statuses for a record that supports ERP write. + /// Possible statuses for a record that supports ERP Update. /// - public int? ErpWriteStatus { get; set; } + public int? ErpUpdateStatus { get; set; } /// - /// The name of the ErpWriteStatus for this Invoice + /// Possible actions for a record that supports ERP Update. /// - public string ErpWriteStatusName { get; set; } + public int? ErpUpdateAction { get; set; } /// /// The date on which this record was last modified in source ERP. diff --git a/src/models/InvoiceLineSyncModel.cs b/src/models/InvoiceLineSyncModel.cs index c614dcb..374f447 100644 --- a/src/models/InvoiceLineSyncModel.cs +++ b/src/models/InvoiceLineSyncModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,13 +21,13 @@ namespace LockstepSDK.Models { /// - /// The InvoiceLineSyncModel represents information coming into Lockstep from an external financial system or other + /// The InvoiceLineSyncModel represents information coming into ADS from an external financial system or other /// enterprise resource planning system. To import data from an external system, convert your original data into /// the InvoiceLineSyncModel format and call the [Upload Sync File API](https://developer.lockstep.io/reference/post_api-v1-sync-zip). - /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the Lockstep - /// platform. + /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the ADS + /// Platform. /// - /// Once imported, this record will be available in the Lockstep API as an [InvoiceLineModel](https://developer.lockstep.io/docs/invoicelinemodel). + /// Once imported, this record will be available in the ADS Platform API as an [InvoiceLineModel](https://developer.lockstep.io/docs/invoicelinemodel). /// /// For more information on writing your own connector, see [Connector Data](https://developer.lockstep.io/docs/connector-data). /// @@ -39,6 +39,11 @@ public class InvoiceLineSyncModel /// public int? OnMatchAction { get; set; } + /// + /// The unique identifier of this object in the Sage Network platform. + /// + public Guid? NetworkId { get; set; } + /// /// This is the primary key of the Invoice Line record. For this field, you should use whatever the contact's unique /// identifying number is in the originating system. Search for a unique, non-changing number within the @@ -58,12 +63,22 @@ public class InvoiceLineSyncModel /// public string InvoiceErpKey { get; set; } + /// + /// The network id of the parent Invoice. + /// + public Guid? InvoiceNetworkId { get; set; } + /// /// The line number of this line, as defined in the originating ERP or accounting system. You can sort on this number to /// get the original view of lines within the invoice. /// public string LineNumber { get; set; } + /// + /// The account number this line is associated with in the originating ERP or accounting system. + /// + public string AccountNumber { get; set; } + /// /// A code number identifying the product or service that is specified on this line. /// @@ -74,6 +89,11 @@ public class InvoiceLineSyncModel /// public string Description { get; set; } + /// + /// The location to where specific items from an invoice will go. + /// + public string Location { get; set; } + /// /// For lines measured in a unit other than "quantity", this code indicates the measurement system for the quantity field. /// If the line is measured in quantity, this field is null. @@ -106,150 +126,50 @@ public class InvoiceLineSyncModel public decimal? TotalAmount { get; set; } /// - /// If this line is tax exempt, this code indicates the reason for the exemption. - /// - public string ExemptionCode { get; set; } - - /// - /// If null, the products specified on this line were delivered on the same date as all other lines. - /// If not null, this line was delivered or finalized on a different date than the overall invoice. - /// - public DateTime? ReportingDate { get; set; } - - /// - /// Origination address for this invoice line, if this line item was originated from a different address - /// - public string OriginAddressLine1 { get; set; } - - /// - /// Origination address for this invoice line, if this line item was originated from a different address - /// - public string OriginAddressLine2 { get; set; } - - /// - /// Origination address for this invoice line, if this line item was originated from a different address - /// - public string OriginAddressLine3 { get; set; } - - /// - /// Origination address for this invoice line, if this line item was originated from a different address - /// - public string OriginAddressCity { get; set; } - - /// - /// Origination address for this invoice line, if this line item was originated from a different address - /// - public string OriginAddressRegion { get; set; } - - /// - /// Origination address for this invoice line, if this line item was originated from a different address - /// - public string OriginAddressPostalCode { get; set; } - - /// - /// Origination address for this invoice line, if this line item was originated from a different address + /// The tax code used for taxation on this line. /// - public string OriginAddressCountry { get; set; } + public string TaxCode { get; set; } /// - /// Origination address for this invoice line, if this line item was originated from a different address + /// The taxation rate for this line. /// - public decimal? OriginAddressLatitude { get; set; } + public decimal? TaxRate { get; set; } /// - /// Origination address for this invoice line, if this line item was originated from a different address + /// The amount of sales tax for this line in the transaction's currency. /// - public decimal? OriginAddressLongitude { get; set; } + public decimal? SalesTaxAmount { get; set; } /// - /// Billing address for this invoice line, if this line item is to be billed to a different address + /// The amount of sales tax for this line in the base currency. /// - public string BillToAddressLine1 { get; set; } + public decimal? BaseCurrencySalesTaxAmount { get; set; } /// - /// Billing address for this invoice line, if this line item is to be billed to a different address + /// The total value of this invoice line with deductions, excluding taxes. /// - public string BillToAddressLine2 { get; set; } + public decimal? NetAmount { get; set; } /// - /// Billing address for this invoice line, if this line item is to be billed to a different address + /// The total value of this invoice line with deductions, excluding taxes and in the invoice's base currency. /// - public string BillToAddressLine3 { get; set; } + public decimal? BaseCurrencyNetAmount { get; set; } /// - /// Billing address for this invoice line, if this line item is to be billed to a different address - /// - public string BillToAddressCity { get; set; } - - /// - /// Billing address for this invoice line, if this line item is to be billed to a different address - /// - public string BillToAddressRegion { get; set; } - - /// - /// Billing address for this invoice line, if this line item is to be billed to a different address - /// - public string BillToAddressPostalCode { get; set; } - - /// - /// Billing address for this invoice line, if this line item is to be billed to a different address - /// - public string BillToAddressCountry { get; set; } - - /// - /// Billing address for this invoice line, if this line item is to be billed to a different address - /// - public decimal? BillToAddressLatitude { get; set; } - - /// - /// Billing address for this invoice line, if this line item is to be billed to a different address - /// - public decimal? BillToAddressLongitude { get; set; } - - /// - /// Shipping address for this invoice line, if this line item is to be shipped to a different address - /// - public string ShipToAddressLine1 { get; set; } - - /// - /// Shipping address for this invoice line, if this line item is to be shipped to a different address - /// - public string ShipToAddressLine2 { get; set; } - - /// - /// Shipping address for this invoice line, if this line item is to be shipped to a different address - /// - public string ShipToAddressLine3 { get; set; } - - /// - /// Shipping address for this invoice line, if this line item is to be shipped to a different address - /// - public string ShipToAddressCity { get; set; } - - /// - /// Shipping address for this invoice line, if this line item is to be shipped to a different address - /// - public string ShipToAddressRegion { get; set; } - - /// - /// Shipping address for this invoice line, if this line item is to be shipped to a different address - /// - public string ShipToAddressPostalCode { get; set; } - - /// - /// Shipping address for this invoice line, if this line item is to be shipped to a different address + /// If this line is tax exempt, this code indicates the reason for the exemption. /// - public string ShipToAddressCountry { get; set; } + public string ExemptionCode { get; set; } /// - /// Shipping address for this invoice line, if this line item is to be shipped to a different address + /// Unique identifier for tax purposes, used for reference, validation, or compliance. /// - public decimal? ShipToAddressLatitude { get; set; } + public string TaxUid { get; set; } /// - /// Shipping address for this invoice line, if this line item is to be shipped to a different address + /// If null, the products specified on this line were delivered on the same date as all other lines. + /// If not null, this line was delivered or finalized on a different date than the overall invoice. /// - public decimal? ShipToAddressLongitude { get; set; } + public DateTime? ReportingDate { get; set; } /// /// If known, the date when this record was created according to the originating financial system diff --git a/src/models/InvoiceModel.cs b/src/models/InvoiceModel.cs index 437d496..fa108e6 100644 --- a/src/models/InvoiceModel.cs +++ b/src/models/InvoiceModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -23,7 +23,7 @@ namespace LockstepSDK.Models /// /// 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 + /// invoices are uniquely identified both by a ADS 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. @@ -32,7 +32,7 @@ public class InvoiceModel { /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -40,8 +40,8 @@ public class InvoiceModel public Guid? GroupKey { get; set; } /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS when this record is + /// added to the ADS Platform. /// /// For the ID of this record in its originating financial system, see `ErpKey`. /// @@ -57,6 +57,11 @@ public class InvoiceModel /// public Guid? CustomerId { get; set; } + /// + /// The name of the customer associated with this invoice. + /// + public string CustomerName { get; set; } + /// /// The unique ID of this record as it was known in its originating financial system. /// @@ -111,6 +116,23 @@ public class InvoiceModel /// public string InvoiceStatusCode { get; set; } + /// + /// The id of the work flow status associated with this invoice. + /// + public Guid? WorkflowStatusId { get; set; } + + /// + /// A description of the current workflow status of this invoice. + /// + public string WorkflowStatusNotes { get; set; } + + /// + /// The reason code for the current workflow status of this invoice. + /// + /// Empty if workflow status does not require a reason code. + /// + public string WorkflowStatusReasonCode { get; set; } + /// /// A code identifying the terms given to the purchaser. This field is imported directly from the originating /// financial system and does not follow a specified format. @@ -147,6 +169,21 @@ public class InvoiceModel /// public decimal? OutstandingBalanceAmount { get; set; } + /// + /// The shipping amount of this invoice in it's tendered currency. + /// + public decimal? ShippingAmount { get; set; } + + /// + /// The total value of this invoice with deductions, excluding taxes. + /// + public decimal? NetAmount { get; set; } + + /// + /// The shipping amount of this invoice in it's tendered currency. + /// + public decimal? BaseCurrencyShippingAmount { get; set; } + /// /// The reporting date for this invoice. /// @@ -183,11 +220,25 @@ public class InvoiceModel /// public string PaymentDueDate { get; set; } + /// + /// The date when payment is planned in Connect. + /// + /// This is a date-only field stored as a string in ISO 8601 (YYYY-MM-DD) format. + /// + public string PlannedPaymentDate { get; set; } + /// /// The date and time when this record was imported from the user's ERP or accounting system. /// public DateTime? ImportedDate { get; set; } + /// + /// The date when the tax becomes applicable; used for tax reporting. + /// + /// This is a date-only field stored as a string in ISO 8601 (YYYY-MM-DD) format. + /// + public string TaxPointDate { get; set; } + /// /// The ID number of the invoice's origination address /// @@ -241,6 +292,16 @@ public class InvoiceModel /// public bool? InDispute { get; set; } + /// + /// Is the invoice a draft? + /// + public bool? IsDraft { get; set; } + + /// + /// Is the invoice on hold? + /// + public bool? OnHold { get; set; } + /// /// Should the invoice be excluded from aging calculations? /// @@ -277,20 +338,31 @@ public class InvoiceModel public decimal? BaseCurrencyOutstandingBalanceAmount { get; set; } /// - /// Possible statuses for a record that supports ERP write. + /// The total value of this invoice with deductions, excluding taxes and in the invoice's base currency. /// - public int? ErpWriteStatus { get; set; } + public decimal? BaseCurrencyNetAmount { get; set; } /// - /// The name of the ErpWriteStatus for this Invoice + /// Possible statuses for a record that supports ERP Update. /// - public string ErpWriteStatusName { get; set; } + public int? ErpUpdateStatus { get; set; } + + /// + /// Possible actions for a record that supports ERP Update. + /// + public int? ErpUpdateAction { get; set; } /// /// The date on which this record was last modified in source ERP. /// public DateTime? SourceModifiedDate { get; set; } + /// + /// All workflow status histories connected to this invoice. + /// To retrieve this collection, specify `WorkflowStatuses` in the "Include" parameter for your query. + /// + public InvoiceWorkflowStatusHistoryModel[] WorkflowStatuses { get; set; } + /// /// All addresses connected to this invoice. /// To retrieve this collection, specify `Addresses` in the "Include" parameter for your query. @@ -372,5 +444,30 @@ public class InvoiceModel /// more information on extensibility, see [linking extensible metadata to objects](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). /// public CustomFieldDefinitionModel[] CustomFieldDefinitions { get; set; } + + /// + /// Optional field to indicate if the invoice has a PDF attached to it. + /// + public bool? HasPdf { get; set; } + + /// + /// Indicates if the invoice an E-Invoice or not + /// + public bool? IsEInvoice { get; set; } + + /// + /// The tax information related to the invoice + /// + public TaxSummaryModel[] TaxSummary { get; set; } + + /// + /// The source of the invoice (e.g ERP, Peppol, Email, Gov System) + /// + public string DocumentSource { get; set; } + + /// + /// The jurisdiction or country from which the invoice originates (e.g., US, AU) + /// + public string Jurisdiction { get; set; } } } diff --git a/src/models/InvoicePaymentDetailModel.cs b/src/models/InvoicePaymentDetailModel.cs index 3cdd6f6..3e71860 100644 --- a/src/models/InvoicePaymentDetailModel.cs +++ b/src/models/InvoicePaymentDetailModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -27,7 +27,7 @@ public class InvoicePaymentDetailModel { /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). diff --git a/src/models/InvoiceSummaryModel.cs b/src/models/InvoiceSummaryModel.cs index b1466f8..2bcb4e8 100644 --- a/src/models/InvoiceSummaryModel.cs +++ b/src/models/InvoiceSummaryModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -27,7 +27,7 @@ public class InvoiceSummaryModel { /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -117,16 +117,6 @@ public class InvoiceSummaryModel /// public string InvoiceTypeCode { get; set; } - /// - /// The number of days this Invoice is past due. - /// - public int? DaysPastDue { get; set; } - - /// - /// The number of payments associated to this invoice. - /// - public int? PaymentCount { get; set; } - /// /// Specific invoices have support for pdf retrieval from their respective erp. When this flag is true, an additional /// call to Invoices/{id}/pdf can be made to retrieve a pdf directly from the erp. diff --git a/src/models/InvoiceSyncModel.cs b/src/models/InvoiceSyncModel.cs index 0dc5f02..c47deb4 100644 --- a/src/models/InvoiceSyncModel.cs +++ b/src/models/InvoiceSyncModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,13 +21,13 @@ namespace LockstepSDK.Models { /// - /// The InvoiceSyncModel represents information coming into Lockstep from an external financial system or other + /// The InvoiceSyncModel represents information coming into ADS from an external financial system or other /// enterprise resource planning system. To import data from an external system, convert your original data into /// the InvoiceSyncModel format and call the [Upload Sync File API](https://developer.lockstep.io/reference/post_api-v1-sync-zip). - /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the Lockstep - /// platform. + /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the ADS + /// Platform. /// - /// Once imported, this record will be available in the Lockstep API as an [InvoiceModel](https://developer.lockstep.io/docs/invoicemodel). + /// Once imported, this record will be available in the ADS Platform API as an [InvoiceModel](https://developer.lockstep.io/docs/invoicemodel). /// /// For more information on writing your own connector, see [Connector Data](https://developer.lockstep.io/docs/connector-data). /// @@ -39,6 +39,11 @@ public class InvoiceSyncModel /// public int? OnMatchAction { get; set; } + /// + /// The unique identifier of this object in the Sage Network platform. + /// + public Guid? NetworkId { get; set; } + /// /// This is the primary key of the Invoice record. For this field, you should use whatever the invoice's unique /// identifying number is in the originating system. Search for a unique, non-changing number within the @@ -62,6 +67,11 @@ public class InvoiceSyncModel /// public string CompanyErpKey { get; set; } + /// + /// The network id of the related Company. + /// + public Guid? CompanyNetworkId { get; set; } + /// /// The original primary key or unique ID of the company to which this invoice was sent. This value should /// match the [Company ErpKey](https://developer.lockstep.io/docs/importing-companies#erpkey) field on the @@ -73,6 +83,11 @@ public class InvoiceSyncModel /// public string CustomerErpKey { get; set; } + /// + /// The network id of the related Customer. + /// + public Guid? CustomerNetworkId { get; set; } + /// /// The name of the salesperson that wrote this invoice. This is just text, it is not a reference to the /// "Contacts" table. You will not receive an error if this field does not match a known contact person. @@ -155,6 +170,16 @@ public class InvoiceSyncModel /// public decimal? OutstandingBalanceAmount { get; set; } + /// + /// The shipping amount of this invoice in it's tendered currency. + /// + public decimal? ShippingAmount { get; set; } + + /// + /// The total value of this invoice with deductions, excluding taxes. + /// + public decimal? NetAmount { get; set; } + /// /// The reporting date for this invoice. /// @@ -181,11 +206,21 @@ public class InvoiceSyncModel /// public DateTime? PaymentDueDate { get; set; } + /// + /// The date when payment is planned in Connect. + /// + public string PlannedPaymentDate { get; set; } + /// /// The date and time when this record was imported from the user's ERP or accounting system. /// public DateTime? ImportedDate { get; set; } + /// + /// The date when the tax becomes applicable; used for tax reporting. + /// + public DateTime? TaxPointDate { get; set; } + /// /// The origination address for this invoice /// @@ -345,6 +380,16 @@ public class InvoiceSyncModel /// public bool? InDispute { get; set; } + /// + /// Is the invoice a draft? If not specified, we assume the invoice is not a draft. + /// + public bool? IsDraft { get; set; } + + /// + /// Is the invoice on hold? If not specified, we assume the invoice is not on hold. + /// + public bool? OnHold { get; set; } + /// /// Indicates the preferred delivery method for this invoice. Examples include Print, Email, Fax /// @@ -374,5 +419,62 @@ public class InvoiceSyncModel /// The remaining balance value of this invoice in the erp's base currency. /// public decimal? BaseCurrencyOutstandingBalanceAmount { get; set; } + + /// + /// The shipping amount of this invoice in it's tendered currency. + /// + public decimal? BaseCurrencyShippingAmount { get; set; } + + /// + /// The total value of this invoice with deductions, excluding taxes and in the invoice's base currency. + /// + public decimal? BaseCurrencyNetAmount { get; set; } + + /// + /// True if the invoice is an E-Invoice + /// + public bool? IsEInvoice { get; set; } + + /// + /// True if the E-Invoice should be sent to gov/other recipients immediately + /// + public bool? SendImmediately { get; set; } + + /// + /// Workflow status of the invoice. + /// + public Guid? WorkflowStatusId { get; set; } + + /// + /// Notes associated to workflow status + /// + public string WorkflowStatusNotes { get; set; } + + /// + /// The reason code for the current workflow status of this invoice. + /// + /// Empty if workflow status does not require a reason code. + /// + public string WorkflowStatusReasonCode { get; set; } + + /// + /// Workflow status code dictated by government standards + /// + public string WorkflowStatusCode { get; set; } + + /// + /// A JSON string representing the tax information for this invoice + /// + public string TaxSummary { get; set; } + + /// + /// The source of the invoice (e.g ERP, Peppol, Email, Gov System) + /// + public string DocumentSource { get; set; } + + /// + /// The jurisdiction or country from which the invoice originates (e.g., US, AU) + /// + public string Jurisdiction { get; set; } } } diff --git a/src/models/LeadModel.cs b/src/models/LeadModel.cs deleted file mode 100644 index 759b6bf..0000000 --- a/src/models/LeadModel.cs +++ /dev/null @@ -1,55 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents leads for creating new ERP connectors - /// - public class LeadModel - { - - /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. - /// - public Guid? LeadId { get; set; } - - /// - /// Name of lead - /// - public string Name { get; set; } - - /// - /// Name of company of lead - /// - public string Company { get; set; } - - /// - /// Email of lead - /// - public string Email { get; set; } - - /// - /// Requested ERP of lead - /// - public string ErpSystem { get; set; } - } -} diff --git a/src/models/NoteModel.cs b/src/models/NoteModel.cs index 372d4bf..27f4bf7 100644 --- a/src/models/NoteModel.cs +++ b/src/models/NoteModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -22,7 +22,7 @@ namespace LockstepSDK.Models /// /// A note is a customizable text string that can be attached to various account attributes - /// within Lockstep. You can use notes for internal communication, correspondence with + /// within ADS Platform. You can use notes for internal communication, correspondence with /// clients, or personal reminders. The Note Model represents a note and a number of /// different metadata attributes related to the creation, storage, and ownership of the note. /// @@ -32,13 +32,13 @@ public class NoteModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS when this record is + /// added to the ADS Platform. /// public Guid? NoteId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -46,11 +46,11 @@ public class NoteModel public Guid? GroupKey { get; set; } /// - /// A Note is connected to an existing item within the Lockstep Platform by the fields `TableKey` and + /// A Note is connected to an existing item within the ADS Platform by the fields `TableKey` and /// `ObjectKey`. For example, a Note connected to Invoice 12345 would have a `TableKey` value of /// `Invoice` and an `ObjectKey` value of `12345`. /// - /// The `TableKey` value contains the name of the table within the Lockstep Platform to which this metadata + /// The `TableKey` value contains the name of the table within the ADS Platform to which this metadata /// is connected. /// /// For more information, see [linking metadata to an object](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). @@ -58,11 +58,11 @@ public class NoteModel public string TableKey { get; set; } /// - /// A Note is connected to an existing item within the Lockstep Platform by the fields `TableKey` and + /// A Note is connected to an existing item within the ADS Platform by the fields `TableKey` and /// `ObjectKey`. For example, a Note connected to Invoice 12345 would have a `TableKey` value of /// `Invoice` and an `ObjectKey` value of `12345`. /// - /// The `ObjectKey` value contains the primary key of the record within the Lockstep Platform to which this + /// The `ObjectKey` value contains the primary key of the record within the ADS Platform to which this /// metadata is connected. /// /// For more information, see [linking metadata to an object](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object). diff --git a/src/models/PayablesComingDueHeaderModel.cs b/src/models/PayablesComingDueHeaderModel.cs deleted file mode 100644 index 4f6b0e0..0000000 --- a/src/models/PayablesComingDueHeaderModel.cs +++ /dev/null @@ -1,68 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Contains summary information for payables that will be due soon - /// - public class PayablesComingDueHeaderModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// Number of bills due for this time period - /// - public int? NumberOfBillsDue { get; set; } - - /// - /// Number of total vendors for this time period - /// - public int? NumberOfVendors { get; set; } - - /// - /// Percentage of total for this time period - /// - public decimal? PercentageOfTotal { get; set; } - - /// - /// The group's base currency code. - /// - public string BaseCurrencyCode { get; set; } - - /// - /// Total amount due for this time period in the group's base currency. - /// - public decimal? TotalAmountDue { get; set; } - - /// - /// This model represents all the payables that are - /// either already due or due within this date. - /// - public DateTime? DueDate { get; set; } - } -} diff --git a/src/models/PayablesComingDueModel.cs b/src/models/PayablesComingDueModel.cs deleted file mode 100644 index e0a7500..0000000 --- a/src/models/PayablesComingDueModel.cs +++ /dev/null @@ -1,78 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Contains information for payables that will be due soon - /// - public class PayablesComingDueModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// Number of bills due for this time period - /// - public int? NumberOfBillsDue { get; set; } - - /// - /// The unique Lockstep Id for the Vendor - /// - public Guid? VendorId { get; set; } - - /// - /// Name for this company - /// - public string VendorName { get; set; } - - /// - /// Primary Contact for this company - /// - public string PrimaryContact { get; set; } - - /// - /// Percentage of total for this time period - /// - public decimal? PercentageOfTotal { get; set; } - - /// - /// The base currency code of the group - /// - public string BaseCurrencyCode { get; set; } - - /// - /// Total amount due for this time period at the group's base currency - /// - public decimal? TotalAmountDue { get; set; } - - /// - /// This model represents all the payables that are - /// either already due or due within this date. - /// - public DateTime? DueDate { get; set; } - } -} diff --git a/src/models/PayablesComingDueWidgetModel.cs b/src/models/PayablesComingDueWidgetModel.cs deleted file mode 100644 index 38e3100..0000000 --- a/src/models/PayablesComingDueWidgetModel.cs +++ /dev/null @@ -1,53 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Contains summary information for payables for the widget - /// - public class PayablesComingDueWidgetModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// This model represents all the payables that are - /// either already due or due within this date. - /// - public DateTime? Date { get; set; } - - /// - /// The group's base currency code. - /// - public string BaseCurrencyCode { get; set; } - - /// - /// Total amount due for this time period at the group's base currency. - /// - public decimal? AmountDue { get; set; } - } -} diff --git a/src/models/PayablesSummaryReportModel.cs b/src/models/PayablesSummaryReportModel.cs deleted file mode 100644 index 0b4b177..0000000 --- a/src/models/PayablesSummaryReportModel.cs +++ /dev/null @@ -1,67 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents the payables summary report based on a timeframe - /// - public class PayablesSummaryReportModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// Timeframe in days the payables summary report is generated on - /// - public int? Timeframe { get; set; } - - /// - /// The base currency code of the group. - /// - public string BaseCurrencyCode { get; set; } - - /// - /// Amount of payments made based in the timeframe in the group's base currency. - /// - public decimal? TotalPaymentsAmount { get; set; } - - /// - /// Number of payments made based in the timeframe - /// - public int? TotalPaymentsCount { get; set; } - - /// - /// Amount of bills received based in the timeframe in the group's base currency. - /// - public decimal? TotalAmountBilled { get; set; } - - /// - /// Number of bills received in the timeframe - /// - public int? TotalBillsCount { get; set; } - } -} diff --git a/src/models/PaymentAppliedModel.cs b/src/models/PaymentAppliedModel.cs index 89dc39f..d786e23 100644 --- a/src/models/PaymentAppliedModel.cs +++ b/src/models/PaymentAppliedModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -30,7 +30,7 @@ public class PaymentAppliedModel { /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -38,8 +38,8 @@ public class PaymentAppliedModel public Guid? GroupKey { get; set; } /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS Platform when this record is + /// added to the ADS Platform. /// /// For the ID of this record in its originating financial system, see `ErpKey`. /// @@ -51,7 +51,12 @@ public class PaymentAppliedModel public Guid? InvoiceId { get; set; } /// - /// The Payment applied to the invoice. + /// The refund Payment that funded the payment. + /// + public Guid? RefundId { get; set; } + + /// + /// The Payment applied to the invoice or receiving funding from a refund. /// public Guid? PaymentId { get; set; } @@ -67,14 +72,14 @@ public class PaymentAppliedModel public string ErpKey { get; set; } /// - /// Possible statuses for a record that supports ERP write. + /// Possible statuses for a record that supports ERP Update. /// - public int? ErpWriteStatus { get; set; } + public int? ErpUpdateStatus { get; set; } /// - /// The name of the ErpWriteStatus for this payment application + /// Possible actions for a record that supports ERP Update. /// - public string ErpWriteStatusName { get; set; } + public int? ErpUpdateAction { get; set; } /// /// The entry number of this payment application. This is often a journal entry number, confirmation code, @@ -134,5 +139,10 @@ public class PaymentAppliedModel /// The invoice associated with this applied payment. /// public InvoiceModel Invoice { get; set; } + + /// + /// The refund payment associated with this applied payment + /// + public PaymentModel Refund { get; set; } } } diff --git a/src/models/PaymentAppliedSyncModel.cs b/src/models/PaymentAppliedSyncModel.cs index 5d16773..fe14734 100644 --- a/src/models/PaymentAppliedSyncModel.cs +++ b/src/models/PaymentAppliedSyncModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,13 +21,13 @@ namespace LockstepSDK.Models { /// - /// The PaymentAppliedSyncModel represents information coming into Lockstep from an external financial system or + /// The PaymentAppliedSyncModel represents information coming into ADS from an external financial system or /// other enterprise resource planning system. To import data from an external system, convert your original data /// into the PaymentAppliedSyncModel format and call the [Upload Sync File API](https://developer.lockstep.io/reference/post_api-v1-sync-zip). - /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the Lockstep - /// platform. + /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the ADS + /// Platform. /// - /// Once imported, this record will be available in the Lockstep API as a [PaymentAppliedModel](https://developer.lockstep.io/docs/paymentappliedmodel). + /// Once imported, this record will be available in the ADS Platform API as a [PaymentAppliedModel](https://developer.lockstep.io/docs/paymentappliedmodel). /// /// For more information on writing your own connector, see [Connector Data](https://developer.lockstep.io/docs/connector-data). /// @@ -39,6 +39,11 @@ public class PaymentAppliedSyncModel /// public int? OnMatchAction { get; set; } + /// + /// The unique identifier of this object in the Sage Network platform. + /// + public Guid? NetworkId { get; set; } + /// /// This is the primary key of the Payment Application record. For this field, you should use whatever this /// transaction's unique identifying number is in the originating system. Search for a unique, non-changing @@ -64,9 +69,31 @@ public class PaymentAppliedSyncModel public string InvoiceErpKey { get; set; } /// - /// This field indicates which Payment was used to provide the funds for this payment application. In this - /// field, identify the original primary key or unique ID of the Payment that was used for this payment - /// application. + /// The network id of the related Invoice. + /// + public Guid? InvoiceNetworkId { get; set; } + + /// + /// This field indicates which Payment is being used to provide the funds for a the payment. In this field, + /// identify the original primary key or unique ID of the Payment which will be supplying the funds. + /// + /// This information lets you track how a payment was funded. You can identify what proportion of an payment's + /// balance was paid by which methods by joining this field to the Payment. + /// + /// This value should match the [Payment ErpKey](https://developer.lockstep.io/docs/importing-payments#erpkey) + /// field on the [PaymentSyncModel](https://developer.lockstep.io/docs/importing-payments). + /// + public string RefundErpKey { get; set; } + + /// + /// The network id of the related refund Payment. + /// + public Guid? RefundNetworkId { get; set; } + + /// + /// This field indicates which Payment was used to provide the funds for this payment application, or the payment that + /// is being funded in the case of a refund. In this field, identify the original primary key or unique ID of the + /// Payment that was used for this payment or the Payment that is being refunded. /// /// This information lets you track how an invoice was paid. You can identify what proportion of an payment's /// balance was paid by which methods by joining this field to the Payment. @@ -76,6 +103,11 @@ public class PaymentAppliedSyncModel /// public string PaymentErpKey { get; set; } + /// + /// The network id of the related Payment. + /// + public Guid? PaymentNetworkId { get; set; } + /// /// The entry number of this payment application. This is often a journal entry number, confirmation code, /// or other identifying field for this payment application. diff --git a/src/models/PaymentDetailHeaderModel.cs b/src/models/PaymentDetailHeaderModel.cs deleted file mode 100644 index 1473dcd..0000000 --- a/src/models/PaymentDetailHeaderModel.cs +++ /dev/null @@ -1,67 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Contains group level payment data. - /// - public class PaymentDetailHeaderModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The base currency code of the group. - /// - public string BaseCurrencyCode { get; set; } - - /// - /// The total number of Customers. - /// - public int? CustomerCount { get; set; } - - /// - /// The total amount collected in the group's base currency. - /// - public decimal? AmountCollected { get; set; } - - /// - /// The total unapplied amount in the group's base currency. - /// - public decimal? UnappliedAmount { get; set; } - - /// - /// The number of paid invoices. - /// - public int? PaidInvoiceCount { get; set; } - - /// - /// The number of open invoices. - /// - public int? OpenInvoiceCount { get; set; } - } -} diff --git a/src/models/PaymentDetailModel.cs b/src/models/PaymentDetailModel.cs deleted file mode 100644 index 61d2107..0000000 --- a/src/models/PaymentDetailModel.cs +++ /dev/null @@ -1,192 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Contains detailed information about a Payment. - /// - public class PaymentDetailModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The unique ID of this Payment. - /// - public Guid? PaymentId { get; set; } - - /// - /// The ID of the customer to which this Payment belongs. - /// - public Guid? CustomerId { get; set; } - - /// - /// The name of the customer to which this Payment belongs. - /// - public string CustomerName { get; set; } - - /// - /// Memo or reference text (ex. memo field on a check). - /// - public string MemoText { get; set; } - - /// - /// Reference code for the payment for the given Erp system. - /// - public string ReferenceCode { get; set; } - - /// - /// The name of the Primary Contact for the Customer. - /// - public string PrimaryContact { get; set; } - - /// - /// The Email address of the Customer. - /// - public string Email { get; set; } - - /// - /// Possible statuses for a record that supports ERP write. - /// - public int? ErpWriteStatus { get; set; } - - /// - /// The name of the ErpWriteStatus for this payment - /// - public string ErpWriteStatusName { get; set; } - - /// - /// The currency code of the payment. - /// - public string CurrencyCode { get; set; } - - /// - /// Total amount of this Payment. - /// - public decimal? PaymentAmount { get; set; } - - /// - /// Unapplied balance of this Payment. - /// - public decimal? UnappliedAmount { get; set; } - - /// - /// The base currency code of the group. - /// - public string BaseCurrencyCode { get; set; } - - /// - /// The payment amount in the group's base currency. - /// - public decimal? BaseCurrencyPaymentAmount { get; set; } - - /// - /// The payment amount in the group's base currency. - /// - public decimal? BaseCurrencyUnappliedAmount { get; set; } - - /// - /// The type of payment, AR Payment or AP Payment. - /// - /// Recognized PaymentType values are: - /// * `AR Payment` - A payment made by a Customer to the Company - /// * `AP Payment` - A payment made by the Company to a Vendor - /// - public string PaymentType { get; set; } - - /// - /// Cash, check, credit card, wire transfer. - /// - /// Recognized TenderType values are: - /// * `Cash` - A cash payment or other direct transfer. - /// * `Check` - A check payment. - /// * `Credit Card` - A payment made via a credit card. - /// * `Wire Transfer` - A payment made via wire transfer from another financial institution. - /// * `Other` - A payment made via another method not listed above. - /// - public string TenderType { get; set; } - - /// - /// The date of this Payment. - /// - /// This is a date-only field stored as a string in ISO 8601 (YYYY-MM-DD) format. - /// - public string PaymentDate { get; set; } - - /// - /// Payment post date. - /// - /// This is a date-only field stored as a string in ISO 8601 (YYYY-MM-DD) format. - /// - public string PostDate { get; set; } - - /// - /// The phone number of the Customer's Primary Contact. - /// - public string Phone { get; set; } - - /// - /// The fax number of the Customer's Primary Contact. - /// - public string Fax { get; set; } - - /// - /// The first line of the address for the Customer's Primary Contact. - /// - public string Address1 { get; set; } - - /// - /// The second line of the address for the Customer's Primary Contact. - /// - public string Address2 { get; set; } - - /// - /// The third line of the address for the Customer's Primary Contact. - /// - public string Address3 { get; set; } - - /// - /// The city of the address for the Customer's Primary Contact. - /// - public string City { get; set; } - - /// - /// The state/region of the address for the Customer's Primary Contact. - /// - public string StateRegion { get; set; } - - /// - /// The postal/zip code of the address for the Customer's Primary Contact. - /// - public string PostalCode { get; set; } - - /// - /// The 2 character country code of the address for the Customer's Primary Contact. - /// - public string CountryCode { get; set; } - } -} diff --git a/src/models/PaymentModel.cs b/src/models/PaymentModel.cs index 6f79e0f..9c7dcf1 100644 --- a/src/models/PaymentModel.cs +++ b/src/models/PaymentModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -25,7 +25,7 @@ namespace LockstepSDK.Models /// one or more invoices; it is also possible for payments to be made in advance of an invoice, for example, /// as a deposit. The creator of the Payment is identified by the `CustomerId` field, and the recipient of /// the Payment is identified by the `CompanyId` field. Most Payments are uniquely identified both by a - /// Lockstep Platform ID number and a customer ERP "key" that was generated by the system that originated + /// ADS Platform ID number and a customer ERP "key" that was generated by the system that originated /// the Payment. Payments that have not been fully applied have a nonzero `UnappliedAmount` value, which /// represents a deposit that has been paid and not yet applied to an Invoice. /// @@ -33,7 +33,7 @@ public class PaymentModel { /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -41,8 +41,8 @@ public class PaymentModel public Guid? GroupKey { get; set; } /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS Platform when this record is + /// added to the ADS Platform. /// /// For the ID of this record in its originating financial system, see `ErpKey`. /// @@ -53,6 +53,11 @@ public class PaymentModel /// public Guid? CompanyId { get; set; } + /// + /// The name of the company associated with this payment. + /// + public string CompanyName { get; set; } + /// /// The unique ID of this record as it was known in its originating financial system. /// @@ -65,14 +70,14 @@ public class PaymentModel public string ErpKey { get; set; } /// - /// Possible statuses for a record that supports ERP write. + /// Possible statuses for a record that supports ERP Update. /// - public int? ErpWriteStatus { get; set; } + public int? ErpUpdateStatus { get; set; } /// - /// The name of the ErpWriteStatus for this Payment + /// Possible actions for a record that supports ERP Update. /// - public string ErpWriteStatusName { get; set; } + public int? ErpUpdateAction { get; set; } /// /// The type of payment, AR Payment or AP Payment. @@ -215,6 +220,16 @@ public class PaymentModel /// public DateTime? SourceModifiedDate { get; set; } + /// + /// The tax code of this payment. + /// + public string TaxCode { get; set; } + + /// + /// The financial account code of this payment. + /// + public string FinancialAccountCode { get; set; } + /// /// All applications this payment is associated with. /// To retrieve this collection, specify `Applications` in the "Include" parameter for your query. diff --git a/src/models/PaymentSummaryModel.cs b/src/models/PaymentSummaryModel.cs index 1d9998c..969f50b 100644 --- a/src/models/PaymentSummaryModel.cs +++ b/src/models/PaymentSummaryModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -27,7 +27,7 @@ public class PaymentSummaryModel { /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -96,12 +96,6 @@ public class PaymentSummaryModel /// public decimal? BaseCurrencyUnappliedAmount { get; set; } - /// - /// True if this payment includes some unassigned amount that has not yet been applied to an invoice. If this - /// value is true, the field `UnappliedAmount` will be nonzero. - /// - public bool? IsOpen { get; set; } - /// /// The number of invoices associated to this payment. /// @@ -138,26 +132,6 @@ public class PaymentSummaryModel /// public bool? SupportsErpPdfRetrieval { get; set; } - /// - /// The ids of the customer for the associated invoices. - /// - public Guid[] CustomerIds { get; set; } - - /// - /// The names of the customer for the associated invoices. - /// - public string[] CustomerNames { get; set; } - - /// - /// The ids of the company for the associated invoices. - /// - public Guid[] CompanyIds { get; set; } - - /// - /// The names of the company for the associated invoices. - /// - public string[] CompanyNames { get; set; } - /// /// The modified date of the payment /// diff --git a/src/models/PaymentSyncModel.cs b/src/models/PaymentSyncModel.cs index e7429ec..58b8a6c 100644 --- a/src/models/PaymentSyncModel.cs +++ b/src/models/PaymentSyncModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,13 +21,13 @@ namespace LockstepSDK.Models { /// - /// The PaymentSyncModel represents information coming into Lockstep from an external financial system or other + /// The PaymentSyncModel represents information coming into ADS from an external financial system or other /// enterprise resource planning system. To import data from an external system, convert your original data into /// the PaymentSyncModel format and call the [Upload Sync File API](https://developer.lockstep.io/reference/post_api-v1-sync-zip). - /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the Lockstep - /// platform. + /// This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the ADS + /// Platform. /// - /// Once imported, this record will be available in the Lockstep API as a [PaymentModel](https://developer.lockstep.io/docs/paymentmodel). + /// Once imported, this record will be available in the ADS Platform API as a [PaymentModel](https://developer.lockstep.io/docs/paymentmodel). /// /// For more information on writing your own connector, see [Connector Data](https://developer.lockstep.io/docs/connector-data). /// @@ -39,6 +39,11 @@ public class PaymentSyncModel /// public int? OnMatchAction { get; set; } + /// + /// The unique identifier of this object in the Sage Network platform. + /// + public Guid? NetworkId { get; set; } + /// /// This is the primary key of the Payment record. For this field, you should use whatever the payment's unique /// identifying number is in the originating system. Search for a unique, non-changing number within the @@ -58,6 +63,11 @@ public class PaymentSyncModel /// public string CompanyErpKey { get; set; } + /// + /// The network id of the related Company. + /// + public Guid? CompanyNetworkId { get; set; } + /// /// The type of payment, AR Payment or AP Payment. /// @@ -171,5 +181,15 @@ public class PaymentSyncModel /// Bank account id for the payment. /// public string BankAccountId { get; set; } + + /// + /// The tax code of this payment. + /// + public string TaxCode { get; set; } + + /// + /// The financial account code of this payment. + /// + public string FinancialAccountCode { get; set; } } } diff --git a/src/models/ReportDepth.cs b/src/models/ReportDepth.cs deleted file mode 100644 index dd64925..0000000 --- a/src/models/ReportDepth.cs +++ /dev/null @@ -1,22 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ -} diff --git a/src/models/RiskRateModel.cs b/src/models/RiskRateModel.cs deleted file mode 100644 index e2ca1e5..0000000 --- a/src/models/RiskRateModel.cs +++ /dev/null @@ -1,82 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Represents a risk rate calculation for a single month - /// - public class RiskRateModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The base currency code of the group. - /// - public string BaseCurrencyCode { get; set; } - - /// - /// The month the risk rate was calculated for - /// - public DateTime? ReportDate { get; set; } - - /// - /// The string name of the month the risk rate was calculated for - /// - public string InvoiceMonthName { get; set; } - - /// - /// The count of all invoices in the calculation month - /// - public int? TotalInvoiceCount { get; set; } - - /// - /// The sum of the total amount for invoices in the calculation month in the group's base currency. - /// - public decimal? TotalInvoiceAmount { get; set; } - - /// - /// The count of open invoices over 90 days from the calculation month - /// - public int? AtRiskCount { get; set; } - - /// - /// The sum of the outstanding balance of open invoices over 90 days from the calculation month in the group's base currency. - /// - public decimal? AtRiskAmount { get; set; } - - /// - /// The percentage of all open invoices for the calculation month that are over 90 days based on count - /// - public decimal? AtRiskCountPercentage { get; set; } - - /// - /// The percentage of all open invoices for the calculation month that are over 90 days based on outstanding balance - /// - public decimal? AtRiskPercentage { get; set; } - } -} diff --git a/src/models/StateModel.cs b/src/models/StateModel.cs index be8402e..2d0ead9 100644 --- a/src/models/StateModel.cs +++ b/src/models/StateModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ diff --git a/src/models/StatusModel.cs b/src/models/StatusModel.cs index cdb61c6..40a8357 100644 --- a/src/models/StatusModel.cs +++ b/src/models/StatusModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -36,16 +36,6 @@ public class StatusModel /// public string EmailAddress { get; set; } - /// - /// If authentication is successful, contains subscription account name of logged-in user. - /// - public string AccountName { get; set; } - - /// - /// If authentication is successful, contains subscription account company id of logged-in user. - /// - public Guid? AccountCompanyId { get; set; } - /// /// If authentication is successful, contains the unique identifier of the logged-in user. /// @@ -96,33 +86,18 @@ public class StatusModel /// public string Version { get; set; } - /// - /// If authentication is successful, contains the onboarding session status of the logged-in user's group account. - /// - public bool? OnboardingScheduled { get; set; } - - /// - /// Base Currency of the group - /// - public string BaseCurrencyCode { get; set; } - - /// - /// Country code of the group - /// - public string CountryCode { get; set; } - /// /// Magic link information about the user /// public MagicLinkStatusModel MagicLink { get; set; } /// - /// Information allowing Lockstep to offer direct support to the user + /// Information allowing ADS Platform to offer direct support to the user /// public SupportAccessModel SupportAccess { get; set; } /// - /// True if the user is being impersonated by the Lockstep support team. + /// True if the user is being impersonated by the ADS Platform support team. /// public bool? IsImpersonated { get; set; } diff --git a/src/models/SyncEntityResultModel.cs b/src/models/SyncEntityResultModel.cs deleted file mode 100644 index 93962db..0000000 --- a/src/models/SyncEntityResultModel.cs +++ /dev/null @@ -1,64 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Contains information about a sync process for an entity. - /// - public class SyncEntityResultModel - { - - /// - /// The number of entities inserted - /// - public int? InsertCount { get; set; } - - /// - /// The number of entities updated - /// - public int? UpdateCount { get; set; } - - /// - /// The number of entities deleted - /// - public int? DeleteCount { get; set; } - - /// - /// The number of entities skipped - /// - public int? SkipCount { get; set; } - - /// - /// The number of errors encountered during sync - /// - public int? ErrorCount { get; set; } - - /// - /// The errors encountered during sync keyed by ERP key - /// - public object Errors { get; set; } - - /// - /// The records that were skipped during sync keyed by ERP key - /// - public object Skips { get; set; } - } -} diff --git a/src/models/SyncRequestModel.cs b/src/models/SyncRequestModel.cs index 370a25a..ae27a6a 100644 --- a/src/models/SyncRequestModel.cs +++ b/src/models/SyncRequestModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,8 +21,8 @@ namespace LockstepSDK.Models { /// - /// Represents a Sync action that loads data from a connector into the Lockstep Platform. Users can - /// request Sync actions manually using Lockstep Inbox, or via the [Create Sync API](https://developer.lockstep.io/reference/post_api-v1-sync). + /// Represents a Sync action that loads data from a connector into the ADS Platform. Users can + /// request Sync actions manually using ADS Inbox, or via the [Create Sync API](https://developer.lockstep.io/reference/post_api-v1-sync). /// Each Sync action is tied to an [AppEnrollment](https://developer.lockstep.io/docs/applications-and-enrollments). /// When the Sync action is complete, the field `StatusCode` will be set to either `Success` or `Failed`. /// @@ -34,13 +34,13 @@ public class SyncRequestModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS Platform when this record is + /// added to the ADS Platform. /// public Guid? SyncRequestId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -49,11 +49,13 @@ public class SyncRequestModel /// /// The status of processing for this SyncRequest. When a SyncRequest is created, it is flagged as `Ready`. + /// While it is in queue waiting to be picked up, its status moves to `Connector`. /// When it is picked up for execution, its status moves to `In Progress`. When it is complete, its status /// will move to `Success` or `Failed`. If another API call cancels the SyncRequest, its status will move /// to `Cancelled`. /// /// * Ready + /// * Connector /// * In Progress /// * Cancelled /// * Failed @@ -116,5 +118,20 @@ public class SyncRequestModel /// Query requests. /// public object Details { get; set; } + + /// + /// The ParentSyncRequestId for this batch zip sync request + /// + public Guid? ParentSyncRequestId { get; set; } + + /// + /// The CurrentBatch of this batch zip sync request + /// + public int? CurrentBatch { get; set; } + + /// + /// The TotalBatches of this batch zip sync request + /// + public int? TotalBatches { get; set; } } } diff --git a/src/models/SyncSubmitModel.cs b/src/models/SyncSubmitModel.cs index 6e9e669..d6f02b1 100644 --- a/src/models/SyncSubmitModel.cs +++ b/src/models/SyncSubmitModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,13 +21,13 @@ namespace LockstepSDK.Models { /// - /// A SyncSubmitModel represents a task that loads data from a connector to load into the Lockstep Platform. Data + /// A SyncSubmitModel represents a task that loads data from a connector to load into the ADS Platform. Data /// contained in a sync will be merged with your existing data. Each record will be matched with existing data - /// inside the Lockstep Platform using the [Identity Column](https://developer.lockstep.io/docs/identity-columns) + /// inside the ADS Platform using the [Identity Column](https://developer.lockstep.io/docs/identity-columns) /// rules. Any record that represents a new AppEnrollmentId+ErpKey will be inserted. A record that matches an /// existing AppEnrollmentId+ErpKey will be updated, but only if the data has changed. /// - /// A Sync process permits either a complete data file or a partial / delta data file. Lockstep recommends + /// A Sync process permits either a complete data file or a partial / delta data file. ADS Platform recommends /// using a sliding time window to avoid the risk of clock skew errors that might accidentally omit records. /// Best practice is to run a Sync process daily, and to export all data that has changed in the past 48 hours. /// diff --git a/src/models/TransferOwnerModel.cs b/src/models/TransferOwnerModel.cs deleted file mode 100644 index 7bba581..0000000 --- a/src/models/TransferOwnerModel.cs +++ /dev/null @@ -1,39 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Model from the transfer ownership process. - /// - public class TransferOwnerModel - { - - /// - /// The previous owner of the account. - /// - public UserAccountModel PreviousOwner { get; set; } - - /// - /// The new owner of the account. - /// - public UserAccountModel NewOwner { get; set; } - } -} diff --git a/src/models/TransferOwnerSubmitModel.cs b/src/models/TransferOwnerSubmitModel.cs deleted file mode 100644 index 21ae47d..0000000 --- a/src/models/TransferOwnerSubmitModel.cs +++ /dev/null @@ -1,34 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Model used to submit a transfer ownership request - /// - public class TransferOwnerSubmitModel - { - - /// - /// The ID of the user to transfer ownership to. - /// - public Guid? TargetUserId { get; set; } - } -} diff --git a/src/models/UriModel.cs b/src/models/UriModel.cs index 0b60541..a8fb56d 100644 --- a/src/models/UriModel.cs +++ b/src/models/UriModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ diff --git a/src/models/UserAccountModel.cs b/src/models/UserAccountModel.cs index c8bc787..a331cc0 100644 --- a/src/models/UserAccountModel.cs +++ b/src/models/UserAccountModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -21,25 +21,25 @@ namespace LockstepSDK.Models { /// - /// A User represents a person who has the ability to authenticate against the Lockstep Platform and use - /// services such as Lockstep Inbox. A User is uniquely identified by an Azure identity, and each user must + /// A User represents a person who has the ability to authenticate against the ADS Platform and use + /// services such as ADS Inbox. A User is uniquely identified by an Azure identity, and each user must /// have an email address defined within their account. All Users must validate their email to make use of - /// Lockstep platform services. Users may have different privileges and access control rights within the - /// Lockstep Platform. + /// ADS Platform services. Users may have different privileges and access control rights within the + /// ADS Platform. /// public class UserAccountModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS Platform when this record is + /// added to the ADS Platform. /// /// This record provides a link to the user's Azure AD B2C OID. /// public Guid? UserId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). diff --git a/src/models/UserGroupModel.cs b/src/models/UserGroupModel.cs index ded04b5..eb5c2a2 100644 --- a/src/models/UserGroupModel.cs +++ b/src/models/UserGroupModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -28,7 +28,7 @@ public class UserGroupModel { /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). diff --git a/src/models/UserRoleModel.cs b/src/models/UserRoleModel.cs index b95ea30..a688e29 100644 --- a/src/models/UserRoleModel.cs +++ b/src/models/UserRoleModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -27,13 +27,13 @@ public class UserRoleModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS Platform when this record is + /// added to the ADS Platform. /// public Guid? UserRoleId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). diff --git a/src/models/VendorSummaryModel.cs b/src/models/VendorSummaryModel.cs deleted file mode 100644 index 8342bbb..0000000 --- a/src/models/VendorSummaryModel.cs +++ /dev/null @@ -1,127 +0,0 @@ -/*** - * Lockstep Platform SDK for C# - * - * (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 - * @copyright 2021-2023 Lockstep, Inc. - * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp - */ - - - -#pragma warning disable CS8618 - -using System; - -namespace LockstepSDK.Models -{ - - /// - /// Contains summarized data for a vendor - /// - public class VendorSummaryModel - { - - /// - /// 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). - /// - public Guid? GroupKey { get; set; } - - /// - /// The unique ID of this Vendor - /// - public Guid? VendorId { get; set; } - - /// - /// The name of this Vendor - /// - public string VendorName { get; set; } - - /// - /// The app enrollment ID this Vendor is associated with - /// - public Guid? AppEnrollmentId { get; set; } - - /// - /// The name of this Vendor's primary contact - /// - public string PrimaryContactName { get; set; } - - /// - /// This Vendor's primary contact id - /// - public Guid? PrimaryContactId { get; set; } - - /// - /// The amount paid to this Vendor in the last 30 days - /// - public decimal? AmountPaidPastThirtyDays { get; set; } - - /// - /// The outstanding advance pay balance on payments in the last 30 days - /// - public decimal? AdvancePayPastThirtyDays { get; set; } - - /// - /// The outstanding advance pay balance with this Vendor - /// - public decimal? AdvancePayOutstanding { get; set; } - - /// - /// The amount billed from this Vendor in the last 30 days - /// - public decimal? AmountBilledPastThirtyDays { get; set; } - - /// - /// The outstanding balance with this Vendor for bills in the last 30 days - /// - public decimal? AmountBilledOutstandingPastThirtyDays { get; set; } - - /// - /// The outstanding balance with this Vendor - /// - public decimal? AmountBilledOutstanding { get; set; } - - /// - /// The number of bills received from this Vendor in the last 30 days - /// - public int? BillCountPastThirtyDays { get; set; } - - /// - /// The number of bills from this Vendor that were paid in full in the last 30 days - /// - public int? PaidBillCountPastThirtyDays { get; set; } - - /// - /// The number of open bills with this Vendor - /// - public int? OpenBillCount { get; set; } - - /// - /// The number of bills paid to this Vendor - /// - public int? PaidBillCount { get; set; } - - /// - /// The total count of open and closed bills. - /// - public int? TotalBillCount { get; set; } - - /// - /// The days payabale outstanding. - /// - public decimal? Dpo { get; set; } - - /// - /// The modified date of the Vendor - /// - public DateTime? Modified { get; set; } - } -} diff --git a/src/models/WebhookHistoryTableStorageModel.cs b/src/models/WebhookHistoryTableStorageModel.cs index 142e28e..566fb50 100644 --- a/src/models/WebhookHistoryTableStorageModel.cs +++ b/src/models/WebhookHistoryTableStorageModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -27,7 +27,7 @@ public class WebhookHistoryTableStorageModel { /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -40,8 +40,8 @@ public class WebhookHistoryTableStorageModel public Guid? WebhookId { get; set; } /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS Platform when this record is + /// added to the ADS Platform. /// public Guid? WebhookHistoryId { get; set; } diff --git a/src/models/WebhookModel.cs b/src/models/WebhookModel.cs index fa94fdb..be744ec 100644 --- a/src/models/WebhookModel.cs +++ b/src/models/WebhookModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -30,13 +30,13 @@ public class WebhookModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS Platform when this record is + /// added to the ADS Platform. /// public Guid? WebhookId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -60,7 +60,7 @@ public class WebhookModel /// /// An secret set during webhook creation that can be used to verify that the notification - /// is coming from the Lockstep API. + /// is coming from the ADS Platform API. /// public string ClientSecret { get; set; } @@ -77,7 +77,7 @@ public class WebhookModel /// /// The URL where the notification will be sent via the method set in CallbackHttpMethod. /// - /// When creating a webhook, the Lockstep API will make a call to this url via the method + /// When creating a webhook, the ADS Platform API will make a call to this url via the method /// set in the CallbackHttpMethod property with a query parameter of "code" set to an encoded /// string. To successfully create the webhook, the call must return a successful status code /// with the query parameter's value as the plain text content. diff --git a/src/models/WebhookRuleModel.cs b/src/models/WebhookRuleModel.cs index 57bf8b9..d528b8f 100644 --- a/src/models/WebhookRuleModel.cs +++ b/src/models/WebhookRuleModel.cs @@ -1,13 +1,13 @@ /*** * Lockstep Platform SDK for C# * - * (c) 2021-2023 Lockstep, Inc. + * (c) 2021-2025 Lockstep, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author Lockstep Network - * @copyright 2021-2023 Lockstep, Inc. + * @copyright 2021-2025 Lockstep, Inc. * @link https://github.com/Lockstep-Network/lockstep-sdk-csharp */ @@ -30,8 +30,8 @@ public class WebhookRuleModel { /// - /// The unique ID of this record, automatically assigned by Lockstep when this record is - /// added to the Lockstep platform. + /// The unique ID of this record, automatically assigned by ADS Platform when this record is + /// added to the ADS Platform. /// public Guid? WebhookRuleId { get; set; } @@ -41,7 +41,7 @@ public class WebhookRuleModel public Guid? WebhookId { get; set; } /// - /// The GroupKey uniquely identifies a single Lockstep Platform account. All records for this + /// The GroupKey uniquely identifies a single ADS 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). @@ -53,7 +53,7 @@ public class WebhookRuleModel /// For example, a Webhook setup for when an Invoice is Created would have a `TableKey` value of /// `Invoice` and an `EventType` value of `I` (Insert). /// - /// The `TableKey` value contains the name of the table within the Lockstep Platform to which this metadata + /// The `TableKey` value contains the name of the table within the ADS Platform to which this metadata /// is connected. /// /// For more information, see [linking metadata to an object](https://developer.lockstep.io/docs/custom-fields#linking-metadata-to-an-object).