---
title: UserIdentity
framework: Assignables
role: symbol
role_heading: Protocol
platforms: [iOS 17.4+, iPadOS 17.4+, Mac Catalyst 17.4+]
path: assignables/useridentity
---

# UserIdentity

Types conforming to this protocol can act as user identities for editors of a document.

## Declaration

```swift
protocol UserIdentity : Decodable, Encodable, Hashable, Sendable
```

## Topics

### Inspecting an identity

- [stringRepresentation](assignables/useridentity/stringrepresentation.md)
- [typeID](assignables/useridentity/typeid.md)

### Setting the scope

- [scope(_:)](assignables/useridentity/scope(_:)-esta.md)
- [scope(_:)](assignables/useridentity/scope(_:)-j2jq.md)

### Getting a type eraser

- [eraseToAnyUserIdentity()](assignables/useridentity/erasetoanyuseridentity().md)
- [UserIdentity.As](assignables/useridentity/as.md)

## Relationships

### Inherits From

- [Decodable](swift/decodable.md)
- [Encodable](swift/encodable.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

### Conforming Types

- [AnonymousUserIdentity](assignables/anonymoususeridentity.md)
- [AnyUserIdentity](assignables/anyuseridentity.md)
- [StringUserIdentity](assignables/stringuseridentity.md)

## See Also

### Identity

- [AnonymousUserIdentity](assignables/anonymoususeridentity.md)
- [AnyUserIdentity](assignables/anyuseridentity.md)
- [StringUserIdentity](assignables/stringuseridentity.md)
- [UserIdentityTypeRegistry](assignables/useridentitytyperegistry.md)
- [UserIdentityFactory](assignables/useridentityfactory.md)
