IAssetServicesClient
Namespace: Meshmakers.Octo.Sdk.ServiceClient.AssetRepositoryServices.System
Interface of the client proxy for asset services on system level.
public interface IAssetServicesClient : IServiceClient
Implements IServiceClient
Methods
GetImportJobStatusAsync(String)
Gets the status of an import job.
Task<JobDto> GetImportJobStatusAsync(string id)
Parameters
id String
The identifier of the import job.
Returns
ImportCkModelAsync(String, String)
Imports a construction kit model.
Task<string> ImportCkModelAsync(string tenantId, string ckModelFilePath)
Parameters
tenantId String
Tenant identifier
ckModelFilePath String
File path to the construction kit model file
that can be a JSON or a zipped JSON file.
Returns
ImportRtModelAsync(String, ImportStrategyDto, String)
Imports a runtime model
Task<string> ImportRtModelAsync(string tenantId, ImportStrategyDto importStrategy, string rtModelFilePath)
Parameters
tenantId String
Tenant identifier
importStrategy ImportStrategyDto
Import strategy for the runtime model.
rtModelFilePath String
File path to the runtime file that can be a JSON or a zipped JSON file.
Returns
ExportRtModelByQueryAsync(String, OctoObjectId)
Exports a runtime model by a query.
Task<string> ExportRtModelByQueryAsync(string tenantId, OctoObjectId queryId)
Parameters
tenantId String
Tenant identifier
queryId OctoObjectId
The query object identifier whose result is exported.
Returns
ExportRtModelByDeepGraphAsync(String, IEnumerable<OctoObjectId>, RtCkId<CkTypeId>, IEnumerable<DeepGraphFollowSpecDto>)
Exports a runtime model by deep graph.
Task<string> ExportRtModelByDeepGraphAsync(string tenantId, IEnumerable<OctoObjectId> originRtIds, RtCkId<CkTypeId> originCkTypeId, IEnumerable<DeepGraphFollowSpecDto> followSpecs)
Parameters
tenantId String
Tenant identifier
originRtIds IEnumerable<OctoObjectId>
Origin runtime identifiers
originCkTypeId RtCkId<CkTypeId>
Origin construction kit type identifier
followSpecs IEnumerable<DeepGraphFollowSpecDto>
Optional directed follow rules the traversal applies (AB#5003); null or empty keeps the ParentChild traversal
Returns
CleanTenantAsync(String)
Resets a child tenant to its initial state.
Task CleanTenantAsync(string childTenantId)
Parameters
childTenantId String
Child tenant identifier
Returns
Remarks:
Resets a child tenant to its initial state. This means that all data of the tenant is deleted and the construction kit is reset to the system-only models.
UpdateSystemCkModelOfTenant(String)
Updates the system construction kit model of a child tenant.
Task UpdateSystemCkModelOfTenant(string childTenantId)
Parameters
childTenantId String
Child tenant identifier
Returns
ClearTenantCacheAsync(String)
Clears the cache of a child tenant.
Task ClearTenantCacheAsync(string childTenantId)
Parameters
childTenantId String
Child tenant identifier
Returns
Remarks:
By executing this action, the cache of a child tenant is cleared. This means that all cached data of the tenant is deleted. That may result in a performance decrease of the tenant and unavailability of services for a certain time.
RecomputeTenantDisplayNamesAsync(String, String)
Recomputes the engine-computed display fields (rtDisplayName / rtDisplayDescription) of a child tenant's entities (AB#5945).
Task<IReadOnlyList<string>> RecomputeTenantDisplayNamesAsync(string childTenantId, string ckTypeId)
Parameters
childTenantId String
Child tenant identifier
ckTypeId String
Optional CK type id to restrict the recompute to (subtree); all rule-bearing types when null
Returns
Task<IReadOnlyList<String>>
The enqueued sweep keys (fully versioned CK type ids)
Remarks:
Enqueues durable, idempotent display-rule sweep tasks; the asset repository's sweep background service processes them asynchronously (default tick 60 s) and writes only entities whose stored value differs from the rule's result.
GetTenantsAsync()
Returns a list of all child tenants.
Task<IEnumerable<TenantDto>> GetTenantsAsync()
Returns
Remarks:
Direct children of the current tenant only (AB#5025). Roll-out tooling that needs to reach nested or re-parented tenants must use IAssetServicesClient.GetAllTenantsAsync() instead — this list silently omits every tenant that hangs below another tenant (AB#5151, AB#5129).
GetAllTenantsAsync()
Returns every tenant registered on the installation, regardless of its logical parent.
Task<IEnumerable<TenantDto>> GetAllTenantsAsync()
Returns
Remarks:
Only answered on the system tenant, whose database doubles as the platform-wide routing registry; any other tenant receives HTTP 403 (AB#5151). This is the enumeration for installation-wide tooling such as workload roll-outs, which must reach sub-tenants and re-parented tenants that IAssetServicesClient.GetTenantsAsync() does not list.
GetTenantDescendantsAsync()
Returns EVERY descendant tenant of the current tenant — children,
grandchildren and so on — each entry carrying its
so the caller sees the tree
(AB#5151). Calls GET tenants/descendants on the tenant this client is
configured for (the tenant id comes from the client's service URI, not from a
parameter); an older service without the route fails the call (404) rather
than silently returning only the direct children.
Task<IEnumerable<TenantDto>> GetTenantDescendantsAsync()
Returns
CreateTenantAsync(String, String)
Creates a new child tenant.
Task CreateTenantAsync(string childTenantId, string databaseName)
Parameters
childTenantId String
Child tenant identifier
databaseName String
Name of the database
Returns
AttachTenantAsync(String, String)
Attaches a child tenant.
Task AttachTenantAsync(string childTenantId, string databaseName)
Parameters
childTenantId String
Child tenant identifier
databaseName String
Name of the database
Returns
Remarks:
The Database must exist and the tenant will be added as a child tenant.
DetachTenantAsync(String)
Detaches a child tenant.
Task DetachTenantAsync(string childTenantId)
Parameters
childTenantId String
Child tenant identifier
Returns
Remarks:
The Database won't be deleted, but the child tenant will be removed.
DeleteTenantAsync(String)
Deletes a child tenant.
Task DeleteTenantAsync(string childTenantId)
Parameters
childTenantId String
Child tenant identifier
Returns
GetTenantLifecycleAsync(String)
Returns the durable provisioning lifecycle state of a child tenant, or null when the
tenant has no lifecycle record (AB#4348).
Task<TenantLifecycleDto> GetTenantLifecycleAsync(string childTenantId)
Parameters
childTenantId String
Child tenant identifier
Returns
ReRunTenantSetupAsync(String)
Re-opens a child tenant's provisioning so the background reconciler completes it. Returns the
updated lifecycle state, or null when the tenant has no lifecycle record (AB#4348).
Task<TenantLifecycleDto> ReRunTenantSetupAsync(string childTenantId)
Parameters
childTenantId String
Child tenant identifier
Returns
GetTenantFeaturesStatusAsync()
Returns the aggregate enabled-state of the current tenant's capabilities (Stream Data, Communication, Reporting, AI Services) — the same flags the tenant delete/detach guard evaluates (AB#4884). The tenant is the one configured on the client options. Never returns null.
Task<TenantFeaturesStatusDto> GetTenantFeaturesStatusAsync()
Returns
Exceptions
InvalidOperationException
The service answered without a usable response body.
ReconfigureLogLevelAsync(String, LogLevelDto, LogLevelDto)
Reconfigure the log level of the service.
Task ReconfigureLogLevelAsync(string loggerName, LogLevelDto minLogLevel, LogLevelDto maxLogLevel)
Parameters
loggerName String
Logger pattern name, e. g. Microsoft.*
minLogLevel LogLevelDto
Minimal log level to be logged.
maxLogLevel LogLevelDto
Maximum log level to be logged.
Returns
GetCkModelCatalogsAsync()
Lists available CK model catalog sources.
Task<List<CkModelCatalogDto>> GetCkModelCatalogsAsync()
Returns
ListCkModelCatalogModelsAsync(String, String, Int32, Int32)
Lists models from catalogs, optionally filtered by catalog name or search term.
Task<CkModelCatalogListResponseDto> ListCkModelCatalogModelsAsync(string catalogName, string searchTerm, int skip, int take)
Parameters
catalogName String
searchTerm String
skip Int32
take Int32
Returns
Task<CkModelCatalogListResponseDto>
RefreshCkModelCatalogsAsync(String)
Refreshes CK model catalog caches.
Task RefreshCkModelCatalogsAsync(string catalogName)
Parameters
catalogName String
Returns
GetLibraryStatusAsync(String)
Gets the merged library status for a tenant (installed + catalog availability).
Task<CkModelLibraryStatusResponseDto> GetLibraryStatusAsync(string tenantId)
Parameters
tenantId String
Returns
Task<CkModelLibraryStatusResponseDto>
ResolveDependenciesBatchAsync(String, List<ImportFromCatalogRequestDto>)
Resolves dependencies for multiple models in a single call.
Task<BatchDependencyResolutionResponseDto> ResolveDependenciesBatchAsync(string tenantId, List<ImportFromCatalogRequestDto> requests)
Parameters
tenantId String
requests List<ImportFromCatalogRequestDto>
Returns
Task<BatchDependencyResolutionResponseDto>
ImportFromCatalogBatchAsync(String, ImportFromCatalogBatchRequestDto)
Imports multiple CK models from a catalog in dependency order.
Task<BatchImportResponseDto> ImportFromCatalogBatchAsync(string tenantId, ImportFromCatalogBatchRequestDto request)
Parameters
tenantId String
request ImportFromCatalogBatchRequestDto
Returns
CheckUpgradeAsync(String, ImportFromCatalogRequestDto)
Pre-flight check for CK model upgrade/migration.
Task<UpgradeCheckResponseDto> CheckUpgradeAsync(string tenantId, ImportFromCatalogRequestDto request)
Parameters
tenantId String
request ImportFromCatalogRequestDto
Returns
ListBlueprintsAsync(Int32, Int32)
Lists blueprints available across configured catalogs.
Task<BlueprintCatalogListResponseDto> ListBlueprintsAsync(int skip, int take)
Parameters
skip Int32
take Int32
Returns
Task<BlueprintCatalogListResponseDto>
RefreshBlueprintCatalogsAsync(String)
Refreshes blueprint catalog caches at the asset repository. The server always performs a forced refresh. Returns one result per catalog (Refreshed / Skipped / Failed).
Task<BlueprintCatalogRefreshResponseDto> RefreshBlueprintCatalogsAsync(string catalogName)
Parameters
catalogName String
Optional catalog name (case-insensitive); null refreshes all catalogs.
Returns
Task<BlueprintCatalogRefreshResponseDto>
ApplyBlueprintAsync(String, String, Boolean)
Applies a blueprint to a tenant for the first time. With force=true,
re-applies seed data via upsert.
Task<BlueprintApplyResultDto> ApplyBlueprintAsync(string tenantId, string blueprintId, bool force)
Parameters
tenantId String
blueprintId String
force Boolean
Returns
GetBlueprintHistoryAsync(String)
Returns the blueprint application history for a tenant in chronological order.
Task<List<BlueprintHistoryItemDto>> GetBlueprintHistoryAsync(string tenantId)
Parameters
tenantId String
Returns
Task<List<BlueprintHistoryItemDto>>
GetBlueprintUpdateInfoAsync(String)
Returns update information for the tenant's current blueprint (available versions, recommended target).
Task<BlueprintUpdateInfoDto> GetBlueprintUpdateInfoAsync(string tenantId)
Parameters
tenantId String
Returns
PreviewBlueprintUpdateAsync(String, BlueprintUpdateRequestDto)
Previews the changes a blueprint update would make without applying them.
Task<BlueprintUpdatePreviewDto> PreviewBlueprintUpdateAsync(string tenantId, BlueprintUpdateRequestDto request)
Parameters
tenantId String
request BlueprintUpdateRequestDto
Returns
Task<BlueprintUpdatePreviewDto>
ApplyBlueprintUpdateAsync(String, BlueprintUpdateRequestDto)
Applies a blueprint update to a tenant.
Task ApplyBlueprintUpdateAsync(string tenantId, BlueprintUpdateRequestDto request)
Parameters
tenantId String
request BlueprintUpdateRequestDto
Returns
ListBlueprintInstallationsAsync(String)
Lists every blueprint currently installed on the tenant. Distinct from IAssetServicesClient.ListBlueprintsAsync(Int32, Int32) which enumerates the catalog.
Task<List<BlueprintInstallationDto>> ListBlueprintInstallationsAsync(string tenantId)
Parameters
tenantId String
Returns
Task<List<BlueprintInstallationDto>>
UninstallBlueprintAsync(String, String, Boolean)
Removes a blueprint from the tenant. With cascade=true,
dependents are uninstalled first and orphaned dependencies are
auto-cleaned.
Task<BlueprintUninstallResultDto> UninstallBlueprintAsync(string tenantId, string blueprintName, bool cascade)
Parameters
tenantId String
blueprintName String
cascade Boolean