Skip to main content Module message_contents Copy item path Source content_types encrypted_group_info_blob Nested message and enum types in EncryptedGroupInfoBlob. external_commit_policy_entry Nested message and enum types in ExternalCommitPolicyEntry. external_invite_payload Nested message and enum types in ExternalInvitePayload. group_membership_entry Nested message and enum types in GroupMembershipEntry. group_updated Nested message and enum types in GroupUpdated. membership_policy Nested message and enum types in MembershipPolicy. metadata_policy Nested message and enum types in MetadataPolicy. oneshot_message Nested message and enum types in OneshotMessage. permissions_update_policy Nested message and enum types in PermissionsUpdatePolicy. plaintext_envelope Nested message and enum types in PlaintextEnvelope. welcome_pointer Nested message and enum types in WelcomePointer. CommitLogEntry ComponentMetadata Metadata describing a component: its data type and permission policies. ComponentPermissions Per-component permission policy with separate rules for insert, update,
and delete operations. ContentTypeId ContentTypeId is used to identify the type of content stored in a Message. DmMembers Ordering does not matter here EncodedContent EncodedContent bundles the content with metadata identifying its type
and parameters required for correct decoding and presentation of the content. EncryptedGroupInfoBlob Versioned envelope wrapping a single GroupInfo TLS-serialized bytes
under an AEAD scheme (ChaCha20Poly1305 in v1) with a fresh nonce per
re-encryption. Stored on the external service and replaced by joiners
(with a fresh nonce) after each successful join. EncryptedGroupInfoBlobV1 v1 shape of the encrypted-GroupInfo envelope. ExternalCommitPolicyEntry Versioned envelope. New variants are added as new oneof variants;
readers that don’t recognize a variant treat the policy as default
(all fields zero) per the standard unknown-variant tolerance rules. ExternalCommitPolicyV1 v1 external-commit-policy payload.
Field-coupling invariants enforced by libxmtp when applying an
AppDataUpdate(EXTERNAL_COMMIT_POLICY) proposal: ExternalInvitePayload Versioned envelope for the shareable invite blob. The application embeds
the serialized bytes in whatever transport it prefers (hex, base64, raw
QR, NFC, etc.) and stores the corresponding EncryptedGroupInfoBlob on an
external service keyed by the v1 payload’s external_group_id. ExternalInvitePayloadV1 v1 shape of the shareable invite blob for QR-code or link-based joining
of an XMTP group via an MLS external commit. GroupMembership Contains a mapping of inbox_id -> sequence_id for all members of a group.
Designed to be stored in the group context extension of the MLS group GroupMembershipChanges The group membership change proto GroupMembershipEntry Per-member membership state stored inside the GROUP_MEMBERSHIP component
as a TlsMap<InboxId, bytes>. Keys are 32-byte inbox ids, values are the
encoded bytes of this message. GroupMetadataV1 Parent message for group metadata GroupMutableMetadataV1 Message for group mutable metadata GroupMutablePermissionsV1 Message for group mutable metadata GroupUpdated A summary of the changes in a commit.
Includes added/removed inboxes and changes to metadata Inbox Wrapper around an Inbox Id Inboxes Wrapper around a list of repeated Inbox Ids MembershipChange A group member and affected installation IDs MembershipPolicy A policy that governs adding/removing members or installations MetadataPolicy A policy that governs updating metadata OneshotMessage PermissionsUpdatePolicy A policy that governs updating permissions PlaintextCommitLogEntry PlaintextCommitLogEntry indicates whether a commit was successful or not,
when applied on top of the indicated last_epoch_authenticator. PlaintextEnvelope A PlaintextEnvelope is the outermost payload that gets encrypted by MLS PolicySet The set of policies that govern the group ProposalSupport Extension data for proposal support in group context.
When present in the group context extensions, indicates the group
uses proposal-by-reference flow. ReaddRequest A request sent by an installation to recover from a fork. Other members
may remove and readd that installation from the group.
XIP: https://community.xmtp.org/t/xip-68-draft-automated-fork-recovery/951 WelcomePointeeEncryptionAeadTypesExtension Extension message that indicates the types of encryption supported by a client WelcomePointer A WelcomePointer is used to point to the welcome message for several installations at once to save overhead WelcomeWrapperEncryption The KeyPackageExtension that stores the PubKey and the WelcomeWrapperEncryption CommitResult ComponentType The data structure type of a component’s value Compression Recognized compression algorithms
protolint:disable ENUM_FIELD_NAMES_ZERO_VALUE_END_WITH ConversationType Defines the type of conversation WelcomePointeeEncryptionAeadType WelcomePointerWrapperAlgorithm MUST match the WelcomeWrapperAlgorithm enum values without 25519 so that the i32 transformations are compatible WelcomeWrapperAlgorithm Describes the algorithm used to encrypt the Welcome Wrapper