IDkPlusClient.Company exposes all six operations in the DK Plus v1 Company area.
CompanySettings? settings = await client.Company.GetSettingsAsync(cancellationToken);
CompanyStatus? status = await client.Company.GetStatusAsync(cancellationToken);
CompanyLicence? licence = await client.Company.GetLicenceAsync(cancellationToken);
bool connected = await client.Company.TestConnectionAsync(cancellationToken);
The models are DevOp-owned DTOs with explicit JSON property declarations and XML documentation. The client accepts both the numeric enum values returned by the live API and the string enum values documented by Swagger. The historical Swagger value Boostraping maps to CompanySyncStatus.Bootstrapping.
The CLI exposes the reads as:
devop-dk company show
devop-dk company status
devop-dk company licence
devop-dk company connection
Add --json for structured output. devop-dk connection test also uses the dedicated company-connection endpoint.
await client.Company.StartSyncAsync(
resetFrom: DateTimeOffset.UtcNow.AddDays(-7),
cancellationToken);
The CLI requires explicit confirmation:
devop-dk company sync --yes
devop-dk company sync --reset-from 2026-10-01T00:00:00Z --yes
Synchronization changes remote state and is never retried automatically.
var result = await client.Company.PerformActionAsync(
new CompanyActionRequest
{
Name = "ACTION_NAME",
Parameters = "{\"value\":1}"
},
cancellationToken);
Parameters is an opaque string interpreted by the selected dkERP action. The generic CLI command also requires explicit confirmation:
devop-dk company action ACTION_NAME \
--parameters '{"value":1}' \
--yes
Direct actions may cause arbitrary ERP-side effects. Use only documented action names and parameter formats, and establish an application-specific reconciliation policy before retrying an ambiguous failure.
Customer.PublishToBankAsync remains available as a typed convenience operation over the company action endpoint.