Skip to main content

Data Mart API - 2026-05-21

Visma Net ERP Data Mart

Budget type now uses the full composite key

The Budget type has been updated so that its GraphQL key matches the full GLBudgetLine primary key:

  • branchId, ledgerId and financialYear are now marked as part of the key (@partOfKey).
  • A new non-nullable field parentGroupId: String! has been added and is also part of the key.

This aligns the schema with the underlying ETL collection, which has been reimported with the same composite key. Clients querying the Budget type should add parentGroupId to their selection sets where the parent budget line is relevant.

deletedDatabaseRecord and includeDeleted re-added for Budgets

Following the enablement of deletion tracking and reconciliation for the Budgets collection:

  • The deletedDatabaseRecord: Boolean! field is back on the Budget type.
  • The budgets query exposes the includeDeleted: Boolean! = false argument again. Soft-deleted budgets are excluded by default; pass includeDeleted: true to include them.

Both were removed earlier, when Budgets did not yet support soft-deletion. They now behave the same way as other soft-deletion-aware entities (Accounts, CustomerDocuments, etc.).

New includeUnreleased argument on budgets query

The ETL upsert pipeline now stores both released and unreleased GLBudgetLine rows. To preserve the historical default (released only), the budgets query exposes a new includeUnreleased: Boolean! = false argument:

  • budgets (no argument) - only budgets with released = true are returned, matching the previous behaviour.
  • budgets(includeUnreleased: true) - both released and unreleased budgets are returned.

Combine with includeDeleted as needed.

Documentation clarifications

Schema descriptions have been reviewed and tightened:

  • includeDeleted argument descriptions across queries (accounts, apInvoices/supplierDocuments, apPayments/supplierPayments, apInvoiceLines/supplierDocumentLines, apPaymentLines/supplierPaymentLines, customerPayments, customerPaymentLines, customerDocuments, customerDocumentLines, customers, subaccounts, addresses, contacts, countries, salesOrders, salesOrderLines/salesOrderLinesV2, suppliers) are now consistent with the canonical wording used by the API server.
  • The budgets query argument descriptions follow the same canonical wording.
  • The type-level descriptions on APInvoice, APInvoiceLine, APPayment, SupplierPaymentLine, Address, Country and Location have been reverted to indicate that deletion detection is still in development for these entities. The deletedDatabaseRecord field on these types should not be relied on as a deletion signal yet.

No behavioural changes; only schema descriptions are affected.