Problem
New- and Update- cmdlets currently bind only top-level primitive body properties as parameters (SchemaProperties.ExtractPrimitiveProperties is intentionally shallow). Complex properties get no parameter at all, so generated cmdlets cannot set them. The published SDK exposes every complex body property as a typed parameter that accepts a hashtable — New-MgUser has ~90 parameters, e.g. -PasswordProfile @{ Password = '...' }. This is the largest remaining functionality and parity gap in body binding.
Possible path forward
For every complex body property, emit a parameter typed as the corresponding Kiota model class, resolved from the property's $ref. Coverage comes from the schema itself — no per-property special cases.
Problem
New- and Update- cmdlets currently bind only top-level primitive body properties as parameters (SchemaProperties.ExtractPrimitiveProperties is intentionally shallow). Complex properties get no parameter at all, so generated cmdlets cannot set them. The published SDK exposes every complex body property as a typed parameter that accepts a hashtable — New-MgUser has ~90 parameters, e.g. -PasswordProfile @{ Password = '...' }. This is the largest remaining functionality and parity gap in body binding.
Possible path forward
For every complex body property, emit a parameter typed as the corresponding Kiota model class, resolved from the property's $ref. Coverage comes from the schema itself — no per-property special cases.