Get Identities Operation
-
Upon document creation, providing a collection name with a pipe symbol (
|
) will cause the server to generate an ID for the new document called an identity.
E.g.companies|
-
The identity document ID is unique across the entire cluster within the database scope.
It is composed of the provided collection name and an integer value that is continuously incremented. -
Identity values can also be managed from the Studio identities view.
-
Use
GetIdentitiesOperation
to get the dictionary that maps collection names to their corresponding latest identity values. -
Learn more about identities in:
-
In this page:
Get identities operation
# Create a document with an identity ID:
# ======================================
with store.open_session() as session:
# Request the server to generate an identity ID for the new document. Pass:
# * The entity to store
# * The collection name with a pipe (|) postfix
session.store(Company(name="RavenDB"), "companies|")
# If this is the first identity created for this collection,
# and if the identity value was not customized
# then a document with an identity ID "companies/1" will be created
session.save_changes()
# Get identities information:
# ===========================
# Define the get identities operation
get_identities_op = GetIdentitiesOperation()
# Execute the operation by passing it to maintenance.send
identities = store.maintenance.send(get_identities_op)
# Results
latest_identity_value = identities["companies|"] # => value will be 1
Syntax
class GetIdentitiesOperation(MaintenanceOperation[Dict[str, int]]): ...