Add one target to a many-valued relationship field without disturbing any existing members.
managed object type, e.g. alpha_user
managed object id
relationship field name, e.g. 'roles'
the object to add, as plain { type, id }
Optionalrev: stringoptional optimistic concurrency revision token
the patched object
Count managed objects of the specified type.
managed object type, e.g. alpha_user or user
Optionalfilter: stringCREST search filter
a promise that resolves to the object count
Create managed object
managed object type, e.g. teammember or alpha_user
managed object data
Optionalid: stringmanaged object _id
Delete managed object
managed object type, e.g. alpha_user or user
managed object id
a promise that resolves to an IdObjectSkeletonInterface
Delete managed objects by filter
managed object type, e.g. alpha_user or user
filter
a promise that resolves the number of deleted objects
Find a managed object by a CREST query filter, creating one with a
server-generated _id if no match exists. Intended for JIT-provisioning
flows where an external identity (e.g. a JWT subject from a foreign IDP)
must not become the managed object's own _id/userName: query by a
metadata field pair that captures the external identity instead (e.g.
custom_merchantCustomerId eq "..." and custom_merchantId eq "..."),
and let IDM generate the local _id on first use.
managed object type, e.g. alpha_user
CREST search filter uniquely identifying the object by its external identity metadata
object data to create with if no match is found; ignored if a match is found
Optionalfields: string[]array of fields to return in either case
the found or newly created object, and whether it was newly created
Query managed objects
managed object type, e.g. alpha_user or user
Optionalfilter: stringCREST search filter
Optionalfields: string[]array of fields to return
OptionalpageSize: numberpage size
a promise resolving to an array of managed objects
Query related managed objects
managed object type, e.g. alpha_user or user
managed object id
name of the relationship to query, e.g. "members" for team membership relationships
Optionalfields: string[]array of fields to return
OptionalpageSize: numbera promise resolving to an array of managed objects
Read managed object
managed object type, e.g. alpha_user or user
managed object id
Optionalfields: string[]array of fields to include
a promise that resolves to an IdObjectSkeletonInterface
Read all managed object of the specified type
managed object type, e.g. alpha_user or user
Optionalfields: string[]array of fields to return
a promise that resolves to an array of IdObjectSkeletonInterfaces
Read the current value of a relationship field directly off a managed
object (the forward direction, e.g. an alpha_user's own manager or
roles field). For the reverse direction use queryRelatedManagedObjects.
managed object type, e.g. alpha_user
managed object id
relationship field name, e.g. 'manager' or 'roles'
the field's current value: a single ref object, an array of them, or null/undefined if unset
Remove one target from a many-valued relationship field without disturbing any other members.
managed object type, e.g. alpha_user
managed object id
relationship field name, e.g. 'roles'
the object to remove, as plain { type, id }
Optionalrev: stringoptional optimistic concurrency revision token
the patched object
Replace the entire value of a relationship field: a single target (or null to clear it) for a single-valued field like 'manager', or an array of targets for a many-valued field like 'roles'. Replaces the whole field — use addRelationship/removeRelationship to change one member of a many-valued field without disturbing the rest.
managed object type, e.g. alpha_user
managed object id
relationship field name, e.g. 'manager' or 'roles'
the new value
Optionalrev: stringoptional optimistic concurrency revision token
the patched object
Resolve a managed object's uuid to a human readable full name
managed object type, e.g. teammember or alpha_user
managed object _id
resolved full name or uuid if any error occurs during reslution
Resolve a DN or bare uuid to a structured identity: what kind of principal it is (managed user, service account, tenant admin, or unknown/unconfirmed) and its display name, without the caller needing to already know its managed object type.
a managed/system object uuid, or a full userId DN (e.g. from an audit log event)
Optionalrealm: stringoptional realm override; only consulted when idOrDn is a bare uuid (a DN's own realm segment, if present, always wins)
the resolved identity
Resolve a managed object's uuid to a human readable username
managed object type, e.g. teammember or alpha_user
managed object _id
resolved username or uuid if any error occurs during reslution
Update managed object
managed object type, e.g. alpha_user or user
managed object id
managed object data
a promise that resolves to an IdObjectSkeletonInterface
Partially update managed object through a collection of patch operations.
managed object type, e.g. alpha_user or user
managed object id
collection of patch operations to perform on the object
Optionalrev: stringmanaged object revision
a promise that resolves to an IdObjectSkeletonInterface
Partially update multiple managed object through a collection of patch operations.
managed object type, e.g. alpha_user or user
CREST search filter
collection of patch operations to perform on the object
Optionalrev: stringmanaged object revision
OptionalpageSize: numberpage size
a promise that resolves to an IdObjectSkeletonInterface
ManagedObjectcovers two distinct things that are easy to conflate:alpha_user), created/read/updated/deleted via thecreateManagedObject/readManagedObject/updateManagedObjectProperties/deleteManagedObjectfamily below.managed.jsonconfig entity that defines every managed type for the tenant (properties, relationships, etc.), read and written as a whole document viaIdmConfigOps.ts'sreadSubConfigEntity('managed', type)/importSubConfigEntity('managed', ...).A type's schema — its resolved property/relationship definitions, and the ways to mutate them — is a third, related thing, covered by
ManagedObjectSchemaOps.tsinstead (exposed asfrodo.idm.managed.schema).