Read managed object schema
managed object type, e.g. alpha_user or user
OptionalrefreshCache: booleanwhether to refresh the schema cache for the specified type
Optionaloptions: ManagedObjectSchemaOptionsoptions to filter the returned schema
a promise that resolves to a managed object schema
Read a single managed object relationship-property definition. Cloud (PingOne Advanced Identity Cloud) only — uses IDM's dedicated v2 relationship-schema API to read one relationship-property definition without fetching the type's entire schema. For any non-relationship property, or for any property (including relationships) on ForgeOps/classic, use readSubConfigEntity('managed', type) and read the property off the returned schema.properties instead.
managed object type, e.g. alpha_user
schema property name, e.g. custom_merchantId
a promise that resolves to the property definition
Remove a single managed object relationship-property definition, leaving the rest of the type's schema untouched. Cloud only — see readManagedObjectSchemaProperty.
managed object type, e.g. alpha_user
schema property name, e.g. custom_merchantId
a promise that resolves to the removed property definition
Create or update a single managed object relationship-property definition, leaving the rest of the type's schema untouched. Cloud only — see readManagedObjectSchemaProperty. For any non-relationship property, or for any property on ForgeOps/classic, use importSubConfigEntity('managed', ...) with the full updated type definition instead.
managed object type, e.g. alpha_user
schema property name, e.g. custom_merchantId
the property definition to write
a promise that resolves to the written property definition
A managed-object type's schema is its resolved property/relationship definitions, readable in full via
readManagedObjectSchemabelow — a read-only projection of the same underlying configurationIdmConfigOps.ts'sreadSubConfigEntity('managed', type)/importSubConfigEntity('managed', ...)read and write as a whole document. SeeManagedObjectOps.ts's own header comment for how schema relates to managed-object records and configuration, the other two things this domain covers.There are two ways to mutate a type's schema, and they are not interchangeable:
readManagedObjectSchemaProperty/updateManagedObjectSchemaProperty/removeManagedObjectSchemaPropertybelow use IDM's dedicated v2 schema API, which is specifically for relationship-property definitions, one at a time, in place, with no whole-blob read-modify-write. This is Cloud (PingOne Advanced Identity Cloud) only — see rockcarver/frodo-lib#388 for the design discussion this followed.IdmConfigOps.ts'sreadSubConfigEntity('managed', type)/importSubConfigEntity('managed', ...)to read-modify-write the entire type definition (edit.schema.propertieson the object you read before writing it back). This is the general-purpose path; #1 above is a narrow, Cloud-specific optimization for one particular case, not the default.Neither path touches the underlying repository's index/persistence-layer definitions (e.g. DS's
repo.dson ForgeOps/classic) — Frodo has no support for reading or writingrepo.dstoday, so adding a genuinely new custom relationship property on ForgeOps/classic still requires a manual, Frodo-unassisted edit to that file outside either API above.