Synchronisation Service SDK/APIs

Hello!

While I realise that the bona fide Quick Connect SDK was "delisted" (the CHM help file removed) way back in QC v5.4, the SDK libraries are still present, available, and are updated (e.g., the class library is called ActiveRoles.SyncService.ServiceModel, not Dell.QuickConnect.ServiceModel any more).

I was trying to leverage these recently for a situation where we would like to do a bunch of repetitive work, such as creating 40 different connections and associated mapping pairs, workflows, etc. While I was successful in creating a new connection, the object model that the SDK implements is rather unclear, and as of yet I've not been able to create a workflow or mapping pair.

My sample code starts out as:

if ((Get-Module | ?{$_.Name -eq "ActiveRoles.SyncService.ManagementShell.SnapIn"}) -eq $null) {
  Import-Module "D:\Program Files\One Identity\Active Roles\7.3\SyncService\SyncServiceShell\ActiveRoles.SyncService.ManagementShell.SnapIn.dll"
  Add-Type -Path "D:\Program Files\One Identity\Active Roles\7.3\SyncService\Extensions\ScriptExtension\ActiveRoles.SyncService.ServiceModel.dll"
  Add-Type -Path "D:\Program Files\One Identity\Active Roles\7.3\SyncService\Extensions\ScriptExtension\ActiveRoles.SyncService.UnifiedConnectorModel.dll"
}

$qcService = New-Object -TypeName ActiveRoles.SyncService.ServiceModel.QcService("MyQCServer.domain.com")

From the qcService object, it's easy enough to create a new workflow, populate the source and target connection Id's, etc. Where it starts to get confusing is when dealing with the attribute generation rules, worse, the child value generation rule objects. All of the properties of the valueGenerationRule type are all read-only.

The TL;DR of all this is simple: does anyone happen to have any sample code demonstrating creation of workflows or mapping pairs? It would be most extremely helpful!

Thanks so much!
Shawn.