mex.backend.identity package

Submodules

mex.backend.identity.main module

mex.backend.identity.main.assign_identity(hadPrimarySource: Annotated[MergedPrimarySourceIdentifier, Body(PydanticUndefined)], identifierInPrimarySource: Annotated[str, Body(PydanticUndefined)]) Identity

Insert a new identity or update an existing one.

mex.backend.identity.main.fetch_identity(hadPrimarySource: Annotated[Identifier | None, Query(PydanticUndefined)] = None, identifierInPrimarySource: Annotated[str | None, Query(PydanticUndefined)] = None, stableTargetId: Annotated[Identifier | None, Query(PydanticUndefined)] = None) PaginatedItemsContainer[Identity]

Find an Identity instance from the database if it can be found.

Either provide stableTargetId or hadPrimarySource and identifierInPrimarySource together to get a unique result.

mex.backend.identity.provider module

class mex.backend.identity.provider.GraphIdentityProvider

Bases: BaseProvider

Identity provider that communicates with the graph connector.

__init__() None

Create a new graph identity provider.

assign(had_primary_source: MergedPrimarySourceIdentifier, identifier_in_primary_source: str) Identity

Return a cached or a newly assigned Identity.

close() None

Close the connector cache.

fetch(*, had_primary_source: Identifier | None = None, identifier_in_primary_source: str | None = None, stable_target_id: Identifier | None = None) list[Identity]

Find Identity instances matching the given filters.

Either provide stable_target_id or had_primary_source and identifier_in_primary_source together to get a unique result.

metrics() dict[str, int]

Generate metrics about identity provider usage.

Module contents