generated: '2026-07-17' method: derived source: openapi/ (components.schemas $ref graph across all Agicap Public API specs) summary: entities: 428 relationships: 394 apis: 19 note: Entity-relationship graph derived from OpenAPI component schemas and their $ref links. Grouped by API module. relationships: - api: ar-clients-v1 from: AddClientAddressesRequest kind: has_many to: ClientAddressToCreate via: clientAddresses - api: ar-clients-v1 from: AddClientAddressesResponse kind: has_many to: CreatedClientAddress via: created - api: ar-clients-v1 from: AddClientAddressesResponse kind: has_many to: NotCreatedClientAddress via: notCreated - api: ar-clients-v1 from: AssignUsersToClientsByExternalIdRequest kind: has_many to: ClientUserRightAssignment via: assignments - api: ar-clients-v1 from: AssignUsersToClientsByExternalIdResponse kind: has_many to: ClientUserAssignment via: assigned - api: ar-clients-v1 from: AssignUsersToClientsByExternalIdResponse kind: has_many to: FailedClientUserAssignment via: notAssigned - api: ar-clients-v1 from: Client kind: has_many to: DueAmountSummaryItem via: dueAmountSummary - api: ar-clients-v1 from: Client kind: has_many to: OutstandingAmountSummaryItem via: outstandingAmountSummary - api: ar-clients-v1 from: CreateClientsRequest kind: has_many to: ClientToCreate via: clients - api: ar-clients-v1 from: CreateClientsResponse kind: has_many to: ClientSummaryDto via: created - api: ar-clients-v1 from: CreateClientsResponse kind: has_many to: NotCreatedClient via: notCreated - api: ar-clients-v1 from: CreateExternalContactsRequest kind: has_many to: ExternalContactToCreate via: contacts - api: ar-clients-v1 from: CreateExternalContactsResponse kind: has_many to: CreatedExternalContact via: created - api: ar-clients-v1 from: CreateExternalContactsResponse kind: has_many to: NotCreatedExternalContact via: notCreated - api: ar-clients-v1 from: CreateInternalContactsRequest kind: has_many to: ClientInternalContact via: contacts - api: ar-clients-v1 from: CreateInternalContactsResponse kind: has_many to: CreatedInternalContact via: created - api: ar-clients-v1 from: CreateInternalContactsResponse kind: has_many to: NotCreatedInternalContact via: notCreated - api: ar-clients-v1 from: DeleteClientAddressesResponse kind: has_many to: DeletedAddresses via: deleted - api: ar-clients-v1 from: DeleteClientAddressesResponse kind: has_many to: NotDeletedAddresses via: notDeleted - api: ar-clients-v1 from: DeleteClientsResponse kind: has_many to: ClientSummaryDto via: deleted - api: ar-clients-v1 from: DeleteClientsResponse kind: has_many to: NotDeletedClient via: notDeleted - api: ar-clients-v1 from: DeleteExternalContactsRequest kind: has_many to: ExternalContactToDelete via: contacts - api: ar-clients-v1 from: DeleteExternalContactsResponse kind: has_many to: DeletedExternalContact via: deleted - api: ar-clients-v1 from: DeleteExternalContactsResponse kind: has_many to: NotDeletedExternalContact via: notDeleted - api: ar-clients-v1 from: DeleteInternalContactsRequest kind: has_many to: InternalContactToDelete via: contacts - api: ar-clients-v1 from: DeleteInternalContactsResponse kind: has_many to: DeletedInternalContact via: deleted - api: ar-clients-v1 from: DeleteInternalContactsResponse kind: has_many to: NotDeletedInternalContact via: notDeleted - api: ar-clients-v1 from: FailedClientUserAssignment kind: has_many to: AssignmentFailure via: failures - api: ar-clients-v1 from: GetClientAddressesResponse kind: has_many to: GetClientClientAddress via: items - api: ar-clients-v1 from: GetClientAddressesResponse kind: has_one to: PaginationMetadataDto via: pagination - api: ar-clients-v1 from: GetClientsResponse kind: has_many to: Client via: items - api: ar-clients-v1 from: GetClientsResponse kind: has_one to: PaginationMetadataDto via: pagination - api: ar-clients-v1 from: GetExternalContactsResponse kind: has_many to: ExternalContactItem via: items - api: ar-clients-v1 from: GetExternalContactsResponse kind: has_one to: PaginationMetadataDto via: pagination - api: ar-clients-v1 from: GetInternalContactsResponse kind: has_many to: InternalContactItem via: items - api: ar-clients-v1 from: GetInternalContactsResponse kind: has_one to: PaginationMetadataDto via: pagination - api: ar-clients-v1 from: ReceivablesSignalREventMap kind: has_one to: DeleteInvoicesCompletedEvent via: DeleteInvoicesCompleted - api: ar-clients-v1 from: ReceivablesSignalREventMap kind: has_one to: DeleteInvoicesFailedEvent via: DeleteInvoicesFailed - api: ar-clients-v1 from: ReceivablesSignalREventMap kind: has_one to: DeleteInvoicesProgressEvent via: DeleteInvoicesProgress - api: ar-clients-v1 from: ReceivablesSignalREventMap kind: has_one to: LinkDocumentsCompletedEvent via: LinkDocumentsCompleted - api: ar-clients-v1 from: ReceivablesSignalREventMap kind: has_one to: LinkDocumentsFailedEvent via: LinkDocumentsFailed - api: ar-clients-v1 from: ReceivablesSignalREventMap kind: has_one to: LinkDocumentsProgressEvent via: LinkDocumentsProgress - api: ar-clients-v1 from: UpdateClientAddressesRequest kind: has_many to: ClientAddressToUpdate via: clientAddresses - api: ar-clients-v1 from: UpdateClientAddressesResponse kind: has_many to: NotUpdatedClientAddress via: notUpdated - api: ar-clients-v1 from: UpdateClientAddressesResponse kind: has_many to: ClientAddressToUpdate via: updated - api: ar-clients-v1 from: UpdateClientsRequest kind: has_many to: ClientToUpdate via: clients - api: ar-clients-v1 from: UpdateClientsResponse kind: has_many to: NotUpdatedClient via: notUpdated - api: ar-clients-v1 from: UpdateClientsResponse kind: has_many to: UpdatedClient via: updated - api: ar-clients-v1 from: UpdateExternalContactsRequest kind: has_many to: UpdateExternalContact via: contacts - api: ar-clients-v1 from: UpdateExternalContactsResponse kind: has_many to: NotUpdatedExternalContact via: notUpdated - api: ar-clients-v1 from: UpdateExternalContactsResponse kind: has_many to: UpdatedExternalContact via: updated - api: ar-clients-v1 from: UpdateInternalContactsRequest kind: has_many to: InternalContactToUpdate via: contacts - api: ar-clients-v1 from: UpdateInternalContactsResponse kind: has_many to: NotUpdatedInternalContact via: notUpdated - api: ar-clients-v1 from: UpdateInternalContactsResponse kind: has_many to: UpdatedInternalContact via: updated - api: banking-documents-v1 from: AccountReportSummaryPagedResult kind: has_many to: AccountReportSummary via: Items - api: banking-documents-v1 from: AccountReportSummaryPagedResult kind: has_one to: Pagination via: Pagination - api: banking-documents-v1 from: AccountSummaryPagedResult kind: has_many to: AccountSummary via: Items - api: banking-documents-v1 from: AccountSummaryPagedResult kind: has_one to: Pagination via: Pagination - api: banking-documents-v1 from: BankFileSummaryPagedResult kind: has_many to: BankFileSummary via: Items - api: banking-documents-v1 from: BankFileSummaryPagedResult kind: has_one to: Pagination via: Pagination - api: banking-documents-v1 from: ConnectionSummaryPagedResult kind: has_many to: ConnectionSummary via: Items - api: banking-documents-v1 from: ConnectionSummaryPagedResult kind: has_one to: Pagination via: Pagination - api: banking-documents-v1 from: StatementSummaryPagedResult kind: has_many to: StatementSummary via: Items - api: banking-documents-v1 from: StatementSummaryPagedResult kind: has_one to: Pagination via: Pagination - api: business-documents-v1 from: ClientCreditNoteDto kind: has_one to: AccountingDto via: accounting - api: business-documents-v1 from: ClientCreditNoteDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: ClientCreditNoteDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: ClientCreditNoteDtoPageDto kind: has_many to: ClientCreditNoteDto via: items - api: business-documents-v1 from: ClientCreditNoteDtoPageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v1 from: ClientInvoiceDto kind: has_one to: AccountingDto via: accounting - api: business-documents-v1 from: ClientInvoiceDto kind: has_one to: AmountsWithDueAmountDto via: amounts - api: business-documents-v1 from: ClientInvoiceDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: ClientInvoiceDto kind: has_many to: ClientInvoiceInstalmentDto via: instalments - api: business-documents-v1 from: ClientInvoiceDtoPageDto kind: has_many to: ClientInvoiceDto via: items - api: business-documents-v1 from: ClientInvoiceDtoPageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v1 from: ClientInvoiceInstalmentDto kind: has_one to: InstalmentAccountingAmountDto via: accountingAmount - api: business-documents-v1 from: ClientInvoiceInstalmentDto kind: has_one to: InstalmentAmountsDto via: amounts - api: business-documents-v1 from: ClientQuoteDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: ClientQuoteDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: ClientQuoteDtoPageDto kind: has_many to: ClientQuoteDto via: items - api: business-documents-v1 from: ClientQuoteDtoPageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v1 from: CreateClientCreditNoteDto kind: has_one to: AccountingDto via: accounting - api: business-documents-v1 from: CreateClientCreditNoteDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: CreateClientCreditNoteDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: CreateClientInvoiceDto kind: has_one to: AccountingDto via: accounting - api: business-documents-v1 from: CreateClientInvoiceDto kind: has_one to: AmountsWithDueAmountDto via: amounts - api: business-documents-v1 from: CreateClientInvoiceDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: CreateClientInvoiceDto kind: has_many to: ClientInvoiceInstalmentDto via: instalments - api: business-documents-v1 from: CreateClientQuoteDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: CreateClientQuoteDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: CreateProformaInvoiceDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: CreateProformaInvoiceDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: CreatePurchaseOrderDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: CreatePurchaseOrderDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: CreateSalesOrderDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: CreateSalesOrderDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: CreateSupplierCreditNoteDto kind: has_one to: AccountingDto via: accounting - api: business-documents-v1 from: CreateSupplierCreditNoteDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: CreateSupplierCreditNoteDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: CreateSupplierInvoiceDto kind: has_one to: AccountingDto via: accounting - api: business-documents-v1 from: CreateSupplierInvoiceDto kind: has_one to: AmountsWithDueAmountDto via: amounts - api: business-documents-v1 from: CreateSupplierInvoiceDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: CreateSupplierInvoiceDto kind: has_many to: SupplierInvoiceInstalmentDto via: instalments - api: business-documents-v1 from: ProformaInvoiceDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: ProformaInvoiceDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: ProformaInvoiceDtoPageDto kind: has_many to: ProformaInvoiceDto via: items - api: business-documents-v1 from: ProformaInvoiceDtoPageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v1 from: PurchaseOrderDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: PurchaseOrderDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: PurchaseOrderDtoPageDto kind: has_many to: PurchaseOrderDto via: items - api: business-documents-v1 from: PurchaseOrderDtoPageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v1 from: SalesOrderDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: SalesOrderDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: SalesOrderDtoPageDto kind: has_many to: SalesOrderDto via: items - api: business-documents-v1 from: SalesOrderDtoPageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v1 from: SupplierCreditNoteDto kind: has_one to: AccountingDto via: accounting - api: business-documents-v1 from: SupplierCreditNoteDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: SupplierCreditNoteDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: SupplierCreditNoteDtoPageDto kind: has_many to: SupplierCreditNoteDto via: items - api: business-documents-v1 from: SupplierCreditNoteDtoPageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v1 from: SupplierInvoiceDto kind: has_one to: AccountingDto via: accounting - api: business-documents-v1 from: SupplierInvoiceDto kind: has_one to: AmountsWithDueAmountDto via: amounts - api: business-documents-v1 from: SupplierInvoiceDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: SupplierInvoiceDto kind: has_many to: SupplierInvoiceInstalmentDto via: instalments - api: business-documents-v1 from: SupplierInvoiceDtoPageDto kind: has_many to: SupplierInvoiceDto via: items - api: business-documents-v1 from: SupplierInvoiceDtoPageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v1 from: SupplierInvoiceInstalmentDto kind: has_one to: InstalmentAccountingAmountDto via: accountingAmount - api: business-documents-v1 from: SupplierInvoiceInstalmentDto kind: has_one to: InstalmentAmountsDto via: amounts - api: business-documents-v1 from: UpdateClientCreditNoteDto kind: has_one to: AccountingDto via: accounting - api: business-documents-v1 from: UpdateClientCreditNoteDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: UpdateClientCreditNoteDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: UpdateClientInvoiceDto kind: has_one to: AccountingDto via: accounting - api: business-documents-v1 from: UpdateClientInvoiceDto kind: has_one to: AmountsWithDueAmountDto via: amounts - api: business-documents-v1 from: UpdateClientInvoiceDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: UpdateClientInvoiceDto kind: has_many to: ClientInvoiceInstalmentDto via: instalments - api: business-documents-v1 from: UpdateClientQuoteDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: UpdateClientQuoteDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: UpdateProformaInvoiceDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: UpdateProformaInvoiceDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: UpdatePurchaseOrderDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: UpdatePurchaseOrderDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: UpdateSalesOrderDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: UpdateSalesOrderDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: UpdateSupplierCreditNoteDto kind: has_one to: AccountingDto via: accounting - api: business-documents-v1 from: UpdateSupplierCreditNoteDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v1 from: UpdateSupplierCreditNoteDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: UpdateSupplierInvoiceDto kind: has_one to: AccountingDto via: accounting - api: business-documents-v1 from: UpdateSupplierInvoiceDto kind: has_one to: AmountsWithDueAmountDto via: amounts - api: business-documents-v1 from: UpdateSupplierInvoiceDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v1 from: UpdateSupplierInvoiceDto kind: has_many to: SupplierInvoiceInstalmentDto via: instalments - api: business-documents-v2 from: ClientCreditNoteDto kind: has_one to: AccountingDto via: accounting - api: business-documents-v2 from: ClientCreditNoteDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v2 from: ClientCreditNoteDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v2 from: ClientCreditNoteDtoPageDto kind: has_many to: ClientCreditNoteDto via: items - api: business-documents-v2 from: ClientCreditNoteDtoPageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v2 from: ClientInvoiceDtoV2 kind: has_one to: AccountingDto via: accounting - api: business-documents-v2 from: ClientInvoiceDtoV2 kind: has_one to: AmountsWithDueAmountDto via: amounts - api: business-documents-v2 from: ClientInvoiceDtoV2 kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v2 from: ClientInvoiceDtoV2 kind: has_many to: ClientInvoiceInstalmentDtoV2 via: instalments - api: business-documents-v2 from: ClientInvoiceDtoV2PageDto kind: has_many to: ClientInvoiceDtoV2 via: items - api: business-documents-v2 from: ClientInvoiceDtoV2PageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v2 from: ClientInvoiceInstalmentDtoV2 kind: has_one to: InstalmentAccountingAmountDto via: accountingAmount - api: business-documents-v2 from: ClientInvoiceInstalmentDtoV2 kind: has_one to: InstalmentAmountsDtoV2 via: amounts - api: business-documents-v2 from: ClientQuoteDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v2 from: ClientQuoteDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v2 from: ClientQuoteDtoPageDto kind: has_many to: ClientQuoteDto via: items - api: business-documents-v2 from: ClientQuoteDtoPageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v2 from: CreateClientCreditNoteDtoV2 kind: has_one to: AccountingDto via: accounting - api: business-documents-v2 from: CreateClientCreditNoteDtoV2 kind: has_one to: AmountsWithRemainingAmountDtoV2 via: amounts - api: business-documents-v2 from: CreateClientCreditNoteDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: CreateClientInvoiceDtoV2 kind: has_one to: AccountingDtoV2 via: accounting - api: business-documents-v2 from: CreateClientInvoiceDtoV2 kind: has_one to: AmountsWithDueAmountDtoV2 via: amounts - api: business-documents-v2 from: CreateClientInvoiceDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: CreateClientInvoiceDtoV2 kind: has_many to: ClientInvoiceInstalmentDtoV2 via: instalments - api: business-documents-v2 from: CreateClientQuoteDtoV2 kind: has_one to: AmountsWithRemainingAmountDtoV2 via: amounts - api: business-documents-v2 from: CreateClientQuoteDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: CreateDeliveryNoteDto kind: has_many to: DeliveryNoteLineItemDto via: lineItems - api: business-documents-v2 from: CreateProformaInvoiceDtoV2 kind: has_one to: AmountsWithRemainingAmountDtoV2 via: amounts - api: business-documents-v2 from: CreateProformaInvoiceDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: CreatePurchaseOrderDtoV2 kind: has_one to: AmountsWithRemainingAmountDtoV2 via: amounts - api: business-documents-v2 from: CreatePurchaseOrderDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: CreatePurchaseOrderDtoV2 kind: has_many to: PurchaseOrderLineItemDto via: lineItems - api: business-documents-v2 from: CreateSalesOrderDtoV2 kind: has_one to: AmountsWithRemainingAmountDtoV2 via: amounts - api: business-documents-v2 from: CreateSalesOrderDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: CreateSupplierCreditNoteDtoV2 kind: has_one to: AccountingDto via: accounting - api: business-documents-v2 from: CreateSupplierCreditNoteDtoV2 kind: has_one to: AmountsWithRemainingAmountDtoV2 via: amounts - api: business-documents-v2 from: CreateSupplierCreditNoteDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: CreateSupplierInvoiceDtoV2 kind: has_one to: AccountingDtoV2 via: accounting - api: business-documents-v2 from: CreateSupplierInvoiceDtoV2 kind: has_one to: AmountsWithDueAmountDtoV2 via: amounts - api: business-documents-v2 from: CreateSupplierInvoiceDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: CreateSupplierInvoiceDtoV2 kind: has_many to: SupplierInvoiceInstalmentDtoV2 via: instalments - api: business-documents-v2 from: DeliveryNoteDto kind: has_many to: DeliveryNoteLineItemDto via: lineItems - api: business-documents-v2 from: DeliveryNoteDtoPageDto kind: has_many to: DeliveryNoteDto via: items - api: business-documents-v2 from: DeliveryNoteDtoPageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v2 from: ProformaInvoiceDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v2 from: ProformaInvoiceDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v2 from: ProformaInvoiceDtoPageDto kind: has_many to: ProformaInvoiceDto via: items - api: business-documents-v2 from: ProformaInvoiceDtoPageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v2 from: PurchaseOrderDtoV2 kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v2 from: PurchaseOrderDtoV2 kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v2 from: PurchaseOrderDtoV2 kind: has_many to: PurchaseOrderLineItemDto via: lineItems - api: business-documents-v2 from: PurchaseOrderDtoV2PageDto kind: has_many to: PurchaseOrderDtoV2 via: items - api: business-documents-v2 from: PurchaseOrderDtoV2PageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v2 from: SalesOrderDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v2 from: SalesOrderDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v2 from: SalesOrderDtoPageDto kind: has_many to: SalesOrderDto via: items - api: business-documents-v2 from: SalesOrderDtoPageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v2 from: SupplierCreditNoteDto kind: has_one to: AccountingDto via: accounting - api: business-documents-v2 from: SupplierCreditNoteDto kind: has_one to: AmountsWithRemainingAmountDto via: amounts - api: business-documents-v2 from: SupplierCreditNoteDto kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v2 from: SupplierCreditNoteDtoPageDto kind: has_many to: SupplierCreditNoteDto via: items - api: business-documents-v2 from: SupplierCreditNoteDtoPageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v2 from: SupplierInvoiceDtoV2 kind: has_one to: AccountingDto via: accounting - api: business-documents-v2 from: SupplierInvoiceDtoV2 kind: has_one to: AmountsWithDueAmountDto via: amounts - api: business-documents-v2 from: SupplierInvoiceDtoV2 kind: has_one to: CounterPartyDto via: counterParty - api: business-documents-v2 from: SupplierInvoiceDtoV2 kind: has_many to: SupplierInvoiceInstalmentDtoV2 via: instalments - api: business-documents-v2 from: SupplierInvoiceDtoV2PageDto kind: has_many to: SupplierInvoiceDtoV2 via: items - api: business-documents-v2 from: SupplierInvoiceDtoV2PageDto kind: has_one to: PaginationMetadataDto via: pagination - api: business-documents-v2 from: SupplierInvoiceInstalmentDtoV2 kind: has_one to: InstalmentAccountingAmountDto via: accountingAmount - api: business-documents-v2 from: SupplierInvoiceInstalmentDtoV2 kind: has_one to: InstalmentAmountsDtoV2 via: amounts - api: business-documents-v2 from: UpdateClientCreditNoteDtoV2 kind: has_one to: AccountingDto via: accounting - api: business-documents-v2 from: UpdateClientCreditNoteDtoV2 kind: has_one to: AmountsWithRemainingAmountDtoV2 via: amounts - api: business-documents-v2 from: UpdateClientCreditNoteDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: UpdateClientInvoiceDtoV2 kind: has_one to: AccountingDtoV2 via: accounting - api: business-documents-v2 from: UpdateClientInvoiceDtoV2 kind: has_one to: AmountsWithDueAmountDtoV2 via: amounts - api: business-documents-v2 from: UpdateClientInvoiceDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: UpdateClientInvoiceDtoV2 kind: has_many to: ClientInvoiceInstalmentDtoV2 via: instalments - api: business-documents-v2 from: UpdateClientQuoteDtoV2 kind: has_one to: AmountsWithRemainingAmountDtoV2 via: amounts - api: business-documents-v2 from: UpdateClientQuoteDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: UpdateDeliveryNoteDto kind: has_many to: DeliveryNoteLineItemDto via: lineItems - api: business-documents-v2 from: UpdateProformaInvoiceDtoV2 kind: has_one to: AmountsWithRemainingAmountDtoV2 via: amounts - api: business-documents-v2 from: UpdateProformaInvoiceDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: UpdatePurchaseOrderDtoV2 kind: has_one to: AmountsWithRemainingAmountDtoV2 via: amounts - api: business-documents-v2 from: UpdatePurchaseOrderDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: UpdatePurchaseOrderDtoV2 kind: has_many to: PurchaseOrderLineItemDto via: lineItems - api: business-documents-v2 from: UpdateSalesOrderDtoV2 kind: has_one to: AmountsWithRemainingAmountDtoV2 via: amounts - api: business-documents-v2 from: UpdateSalesOrderDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: UpdateSupplierCreditNoteDtoV2 kind: has_one to: AccountingDto via: accounting - api: business-documents-v2 from: UpdateSupplierCreditNoteDtoV2 kind: has_one to: AmountsWithRemainingAmountDtoV2 via: amounts - api: business-documents-v2 from: UpdateSupplierCreditNoteDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: UpdateSupplierInvoiceDtoV2 kind: has_one to: AccountingDtoV2 via: accounting - api: business-documents-v2 from: UpdateSupplierInvoiceDtoV2 kind: has_one to: AmountsWithDueAmountDtoV2 via: amounts - api: business-documents-v2 from: UpdateSupplierInvoiceDtoV2 kind: has_one to: CounterPartyDtoV2 via: counterParty - api: business-documents-v2 from: UpdateSupplierInvoiceDtoV2 kind: has_many to: SupplierInvoiceInstalmentDtoV2 via: instalments - api: card-expenses-bank-journal-v1 from: PagedResult`1 kind: has_many to: AccountingTransactionLine via: items - api: chart-of-accounts-v1 from: AnalyticalAxePublicApiDto kind: has_many to: AnalyticalCodePublicApiDto via: codes - api: chart-of-accounts-v1 from: AnalyticalAxeResponsePublicApiDto kind: has_many to: AnalyticalCodeResponsePublicApiDto via: codes - api: chart-of-accounts-v1 from: AnalyticalAxesResponsePublicApiDto kind: has_many to: AnalyticalAxeResponsePublicApiDto via: axes - api: chart-of-accounts-v1 from: BulkAnalyticalAxesReportPublicApiDto kind: has_many to: AnalyticalAxeOperationResultPublicApiDto via: results - api: chart-of-accounts-v1 from: BulkCreateAnalyticalAxesPublicApiRequest kind: has_many to: AnalyticalAxePublicApiDto via: analyticalAxes - api: chart-of-accounts-v1 from: BulkUpdateAnalyticalAxesPublicApiRequest kind: has_many to: AnalyticalAxePublicApiDto via: analyticalAxes - api: chart-of-accounts-v1 from: ImportAccountingAccountsRequestDto kind: has_many to: AccountingAccountDto via: accountingAccounts - api: chart-of-accounts-v1 from: ImportThirdPartiesRequest kind: has_many to: ThirdPartyDto via: thirdParties - api: client-risk-v1 from: CreateClientCreditLimitsRequest kind: has_many to: CreditLimitToCreate via: creditLimits - api: client-risk-v1 from: CreateClientCreditLimitsResponse kind: has_many to: CreditLimitCreated via: created - api: client-risk-v1 from: CreateClientCreditLimitsResponse kind: has_many to: CreditLimitNotCreated via: notCreated - api: client-risk-v1 from: DeleteClientCreditLimitsResponse kind: has_many to: DeletedClientCreditLimit via: deleted - api: client-risk-v1 from: DeleteClientCreditLimitsResponse kind: has_many to: NotDeletedClientCreditLimit via: notDeleted - api: client-risk-v1 from: GetClientCreditLimitsResponse kind: has_many to: ClientCreditLimitItem via: items - api: client-risk-v1 from: GetClientCreditLimitsResponse kind: has_one to: PaginationMetadataDto via: pagination - api: client-risk-v1 from: ReceivablesSignalREventMap kind: has_one to: DeleteInvoicesCompletedEvent via: DeleteInvoicesCompleted - api: client-risk-v1 from: ReceivablesSignalREventMap kind: has_one to: DeleteInvoicesFailedEvent via: DeleteInvoicesFailed - api: client-risk-v1 from: ReceivablesSignalREventMap kind: has_one to: DeleteInvoicesProgressEvent via: DeleteInvoicesProgress - api: client-risk-v1 from: ReceivablesSignalREventMap kind: has_one to: LinkDocumentsCompletedEvent via: LinkDocumentsCompleted - api: client-risk-v1 from: ReceivablesSignalREventMap kind: has_one to: LinkDocumentsFailedEvent via: LinkDocumentsFailed - api: client-risk-v1 from: ReceivablesSignalREventMap kind: has_one to: LinkDocumentsProgressEvent via: LinkDocumentsProgress - api: client-risk-v1 from: UpdateClientCreditLimitsRequest kind: has_many to: CreditLimitToUpdate via: creditLimits - api: client-risk-v1 from: UpdateClientCreditLimitsResponse kind: has_many to: CreditLimitNotUpdated via: notUpdated - api: client-risk-v1 from: UpdateClientCreditLimitsResponse kind: has_many to: CreditLimitUpdated via: updated - api: einvoicing-v1 from: AcknowledgementDetailResult kind: has_one to: Level via: level - api: einvoicing-v1 from: AcknowledgementResult kind: has_many to: AcknowledgementDetailResult via: details - api: einvoicing-v1 from: AcknowledgementResult kind: has_one to: FlowAckStatus via: status - api: einvoicing-v1 from: Buyer kind: has_one to: BuyerAddress via: address - api: einvoicing-v1 from: Buyer kind: has_one to: BuyerContact via: contact - api: einvoicing-v1 from: Delivery kind: has_one to: DeliveryAddress via: address - api: einvoicing-v1 from: ExtBillingService kind: has_one to: BillingServiceAddress via: address - api: einvoicing-v1 from: ExtBillingService kind: has_one to: BillingServiceContact via: contact - api: einvoicing-v1 from: ExtBuyerAgent kind: has_one to: BuyerAgentAddress via: address - api: einvoicing-v1 from: ExtBuyerAgent kind: has_one to: BuyerAgentContact via: contact - api: einvoicing-v1 from: ExtInvoicePayer kind: has_one to: InvoicePayerAddress via: address - api: einvoicing-v1 from: ExtInvoicePayer kind: has_one to: InvoicePayerContact via: contact - api: einvoicing-v1 from: ExtSellerAgent kind: has_one to: SellerAgentAddress via: address - api: einvoicing-v1 from: ExtSellerAgent kind: has_one to: SellerAgentContact via: contact - api: einvoicing-v1 from: FlowDto kind: has_one to: AcknowledgementResult via: acknowledgement - api: einvoicing-v1 from: FlowDto kind: has_one to: FlowDirection via: flowDirection - api: einvoicing-v1 from: FlowDto kind: has_one to: FlowProfile via: flowProfile - api: einvoicing-v1 from: FlowDto kind: has_one to: FlowSyntax via: flowSyntax - api: einvoicing-v1 from: FlowDto kind: has_one to: FlowType via: flowType - api: einvoicing-v1 from: FlowInfo kind: has_one to: FlowProfile via: flowProfile - api: einvoicing-v1 from: FlowInfo kind: has_one to: FlowSyntax via: flowSyntax - api: einvoicing-v1 from: FlowInfo kind: has_one to: ProcessingRule via: processingRule - api: einvoicing-v1 from: FullFlowInfo kind: has_one to: FlowProfile via: flowProfile - api: einvoicing-v1 from: FullFlowInfo kind: has_one to: FlowSyntax via: flowSyntax - api: einvoicing-v1 from: Invoicee kind: has_one to: InvoiceeAddress via: address - api: einvoicing-v1 from: Invoicee kind: has_one to: InvoiceeContact via: contact - api: einvoicing-v1 from: Item kind: has_many to: ItemAttribute via: attributes - api: einvoicing-v1 from: Line kind: has_many to: LineAllowance via: allowances - api: einvoicing-v1 from: Line kind: has_many to: LineCharge via: charges - api: einvoicing-v1 from: Line kind: has_one to: Item via: item - api: einvoicing-v1 from: Line kind: has_one to: InvoicingPeriod via: linePeriod - api: einvoicing-v1 from: Payee kind: has_one to: PayeeAddress via: address - api: einvoicing-v1 from: Payee kind: has_one to: PayeeContact via: contact - api: einvoicing-v1 from: PaymentMeans kind: has_one to: PaymentCard via: card - api: einvoicing-v1 from: PaymentMeans kind: has_one to: DirectDebit via: directDebit - api: einvoicing-v1 from: PaymentMeans kind: has_one to: TransferAccount via: transferAccount - api: einvoicing-v1 from: PivotInvoice kind: has_one to: AdditionalDocumentReference via: additionalDocumentReference - api: einvoicing-v1 from: PivotInvoice kind: has_many to: Allowance via: allowances - api: einvoicing-v1 from: PivotInvoice kind: has_many to: PivotAttachment via: attachments - api: einvoicing-v1 from: PivotInvoice kind: has_one to: Buyer via: buyer - api: einvoicing-v1 from: PivotInvoice kind: has_one to: ExtBuyerAgent via: buyerAgent - api: einvoicing-v1 from: PivotInvoice kind: has_many to: Charge via: charges - api: einvoicing-v1 from: PivotInvoice kind: has_one to: Delivery via: delivery - api: einvoicing-v1 from: PivotInvoice kind: has_one to: Invoicee via: invoicee - api: einvoicing-v1 from: PivotInvoice kind: has_one to: ExtBillingService via: invoicer - api: einvoicing-v1 from: PivotInvoice kind: has_one to: InvoicingPeriod via: invoicingPeriod - api: einvoicing-v1 from: PivotInvoice kind: has_many to: Line via: lines - api: einvoicing-v1 from: PivotInvoice kind: has_many to: Note via: note - api: einvoicing-v1 from: PivotInvoice kind: has_one to: Payee via: payee - api: einvoicing-v1 from: PivotInvoice kind: has_one to: ExtInvoicePayer via: payer - api: einvoicing-v1 from: PivotInvoice kind: has_one to: PaymentMeans via: paymentMeans - api: einvoicing-v1 from: PivotInvoice kind: has_many to: PrecedingInvoice via: precedingInvoices - api: einvoicing-v1 from: PivotInvoice kind: has_one to: Seller via: seller - api: einvoicing-v1 from: PivotInvoice kind: has_one to: ExtSellerAgent via: sellerAgent - api: einvoicing-v1 from: PivotInvoice kind: has_one to: TaxRepresentative via: sellerTaxRepresentative - api: einvoicing-v1 from: PivotInvoice kind: has_many to: TaxBreakdown via: taxBreakdowns - api: einvoicing-v1 from: PivotInvoice kind: has_one to: Totals via: totals - api: einvoicing-v1 from: PublicApiAddB2CTransactionRequest kind: has_one to: ReportedInvoiceCategory via: category - api: einvoicing-v1 from: PublicApiAddB2CTransactionRequest kind: has_one to: CurrencyCode via: currencyCode - api: einvoicing-v1 from: PublicApiAddB2CTransactionRequest kind: has_many to: PublicApiB2CTransactionDetailRequest via: transactionDetails - api: einvoicing-v1 from: SearchFlowContent kind: has_one to: SearchFlowFilters via: filter - api: einvoicing-v1 from: SearchFlowContent kind: has_many to: FlowDto via: results - api: einvoicing-v1 from: SearchFlowFilters kind: has_one to: FlowAckStatus via: ackStatus - api: einvoicing-v1 from: SearchFlowFilters kind: has_one to: FlowDirection via: flowDirection - api: einvoicing-v1 from: SearchFlowFilters kind: has_one to: FlowMode via: flowMode - api: einvoicing-v1 from: SearchFlowFilters kind: has_one to: FlowType via: flowType - api: einvoicing-v1 from: SearchFlowParams kind: has_one to: SearchFlowFilters via: where - api: einvoicing-v1 from: Seller kind: has_one to: SellerAddress via: address - api: einvoicing-v1 from: Seller kind: has_one to: SellerContact via: contact - api: einvoicing-v1 from: TaxRepresentative kind: has_one to: TaxRepresentativeAddress via: address - api: financial-investments-v1 from: InterestsResponse kind: has_one to: AccruedResponse via: accrued - api: financial-investments-v1 from: InvestmentDetailResponse kind: has_one to: InterestsResponse via: interests - api: financial-investments-v1 from: InvestmentsResponse kind: has_many to: InvestmentItemResponse via: items - api: financial-investments-v1 from: InvestmentsResponse kind: has_one to: Offset via: offset - api: intragroup-financing-v1 from: FinancingListItemResourcePublic kind: has_one to: AmountDto via: accruedInterests - api: intragroup-financing-v1 from: FinancingListItemResourcePublic kind: has_one to: AmountDto via: balance - api: intragroup-financing-v1 from: FinancingListItemResourcePublic kind: has_one to: StakeholderDto via: borrower - api: intragroup-financing-v1 from: FinancingListItemResourcePublic kind: has_one to: StakeholderDto via: lender - api: intragroup-financing-v1 from: FinancingListResourcePublic kind: has_many to: FinancingListItemResourcePublic via: items - api: intragroup-financing-v1 from: FinancingListResourcePublic kind: has_one to: Offset via: offset - api: intragroup-financing-v1 from: InterestsStatementResourcePublic kind: has_many to: DailyPositionResourcePublic via: items - api: intragroup-financing-v1 from: InterestsStatementResourcePublic kind: has_one to: Offset via: offset - api: invoices-management-v1 from: InvoicesManagement.Web.Controllers.PublicApi.Responses.InboxDocumentsResponse kind: has_many to: InvoicesManagement.Web.Controllers.PublicApi.Responses.InboxDocumentResponse via: documents - api: invoices-management-v1 from: InvoicesManagement.Web.Controllers.PublicApi.Responses.InvoiceResponse kind: has_many to: InvoicesManagement.Web.Controllers.PublicApi.Responses.InvoiceLineItemResponse via: lineItems - api: invoices-management-v1 from: InvoicesManagement.Web.Controllers.PublicApi.Responses.InvoiceResponse kind: has_many to: InvoicesManagement.Web.Controllers.PublicApi.Responses.InvoiceLinkedPurchaseOrderResponse via: linkedPurchaseOrders - api: invoices-management-v1 from: InvoicesManagement.Web.Controllers.PublicApi.Responses.InvoicesResponse kind: has_many to: InvoicesManagement.Web.Controllers.PublicApi.Responses.InvoiceResponse via: invoices - api: invoices-management-v1 from: InvoicesManagement.Web.Controllers.PublicApi.Responses.MarkInvoicesAsVerifiedResponse kind: has_many to: InvoicesManagement.Web.Controllers.PublicApi.Responses.MarkInvoicesAsVerifiedResult via: results - api: invoices-management-v1 from: InvoicesManagement.Web.Controllers.PublicApi.Responses.PurchaseOrderResponse kind: has_many to: InvoicesManagement.Web.Controllers.PublicApi.Responses.PurchaseOrderDeliveryResponse via: deliveries - api: invoices-management-v1 from: InvoicesManagement.Web.Controllers.PublicApi.Responses.PurchaseOrderResponse kind: has_many to: InvoicesManagement.Web.Controllers.PublicApi.Responses.PurchaseOrderLineItemResponse via: lineItems - api: invoices-management-v1 from: InvoicesManagement.Web.Controllers.PublicApi.Responses.PurchaseOrderResponse kind: has_many to: InvoicesManagement.Web.Controllers.PublicApi.Responses.PurchaseOrderLinkedInvoiceResponse via: linkedInvoices - api: invoices-management-v1 from: InvoicesManagement.Web.Controllers.PublicApi.Responses.PurchaseOrdersResponse kind: has_many to: InvoicesManagement.Web.Controllers.PublicApi.Responses.PurchaseOrderResponse via: purchaseOrders - api: organizations-v1 from: OrganizationEntitiesPresentation kind: has_many to: OrganizationEntityPresentation via: items - api: organizations-v1 from: OrganizationEntitiesPresentation kind: has_one to: PaginationResponse via: pagination - api: organizations-v1 from: OrganizationsPresentation kind: has_many to: OrganizationPresentation via: items - api: organizations-v1 from: OrganizationsPresentation kind: has_one to: PaginationResponse via: pagination - api: payments-v2 from: PaymentsFileGeneration.Web.Models.Presentations.InvalidThirdPartyProblemDetails kind: has_many to: PaymentsFileGeneration.Web.Models.Presentations.ThirdPartyPresentation via: additionalInformations - api: payments-v2 from: PaymentsPreparation.Web.Models.Dtos.Beneficiaries.StartBeneficiarySyncDto kind: has_many to: PaymentsPreparation.Web.Models.Dtos.Beneficiaries.BeneficiarySyncItemDto via: items - api: payments-v2 from: PaymentsPreparation.Web.Models.Presentations.Beneficiary.BeneficiarySyncReportPresentation kind: has_many to: PaymentsPreparation.Web.Models.Presentations.Beneficiary.BeneficiarySyncErrorPresentation via: errors - api: purchase-journal-v1 from: InvoiceInformationDto kind: has_many to: InvoiceLineItemDto via: lineItems - api: purchase-journal-v1 from: InvoiceInformationDto kind: has_many to: InvoiceLinkedPurchaseOrderDto via: linkedPurchaseOrders - api: purchase-journal-v1 from: InvoiceLinkedPurchaseOrderDto kind: has_many to: LinkedDeliveryDto via: deliveries - api: purchase-journal-v1 from: InvoiceLinkedPurchaseOrderLineDto kind: has_many to: InvoiceDeliveryNoteLineDto via: linkedDeliveryNotesLines - api: purchase-journal-v1 from: PagedResult`1 kind: has_many to: PublicApiPurchaseJournalPresentation via: items - api: purchase-journal-v1 from: PublicApiErrorReportDto kind: has_many to: PublicApiNotImportedEntryDto via: entriesNotImported - api: purchase-journal-v1 from: PublicApiNotImportedEntryDto kind: has_many to: PublicApiEntryErrorDto via: errors - api: purchase-journal-v1 from: PublicApiPurchaseJournalPresentation kind: has_many to: PurchaseJournalAccountingLinePresentation via: accountingLines - api: suppliers-v1 from: ListSuppliersResponse kind: has_many to: SupplierResponse via: items - api: suppliers-v1 from: SupplierResponse kind: has_many to: ContactResponse via: contacts - api: suppliers-v1 from: SupplierResponse kind: has_one to: LegalAddressResponse via: legalAddress - api: suppliers-v1 from: SupplierResponse kind: has_one to: ContactResponse via: primaryContact - api: suppliers-v1 from: SupplierSyncErrorsResponse kind: has_one to: CursorDto via: cursor - api: suppliers-v1 from: SupplierSyncErrorsResponse kind: has_many to: SupplierSyncErrorItem via: items - api: suppliers-v1 from: SupplierSyncItem kind: has_many to: ContactDto via: contacts - api: suppliers-v1 from: SupplierSyncItem kind: has_one to: LegalAddressDto via: legalAddress - api: suppliers-v1 from: SupplierSyncItem kind: has_one to: ContactDto via: primaryContact - api: suppliers-v1 from: SyncSuppliersRequest kind: has_many to: SupplierSyncItem via: suppliers - api: treasury-bank-journal-v1 from: CausalesRequestDto kind: has_many to: CausaleRequestDto via: causales - api: treasury-bank-journal-v1 from: ExportResponse kind: has_many to: ExportedBankJournalEntryDto via: entries - api: treasury-bank-journal-v1 from: ExportedBankJournalEntryDto kind: has_many to: ExportedCounterpartDto via: counterparts - api: treasury-bank-journal-v1 from: ExportedCounterpartDto kind: has_many to: CustomFieldDto via: customFields - api: treasury-bank-journal-v1 from: GetBankJournalExportsResponse kind: has_many to: BankJournalExportSummaryDto via: items - api: treasury-bank-journal-v1 from: GetExportResponse kind: has_many to: ExportedBankJournalEntryDto via: entries - api: treasury-bank-journal-v1 from: MarkAsImportedRequest kind: has_many to: ImportedEntryDto via: entriesImported - api: treasury-bank-journal-v1 from: MarkAsNotImportedRequest kind: has_many to: NotImportedEntryDto via: entriesNotImported - api: treasury-bank-journal-v1 from: NotImportedEntryDto kind: has_many to: ErrorDto via: errors