Members on this page
Meshline.Sdk
Meshline.Models.Protocol
GroupApplication Class
Contains a signed request to join a group using an invitation and a member encryption key.
public sealed record GroupApplication : Meshline.Models.Protocol.TypedProtocolModel, System.IEquatable<Meshline.Models.Protocol.GroupApplication>
Inheritance System.Object → ProtocolModel → TypedProtocolModel → GroupApplication
Implements System.IEquatable<GroupApplication>
Constructors
GroupApplication() Constructor
Contains a signed request to join a group using an invitation and a member encryption key.
public GroupApplication();
Properties
GroupApplication.Account Property
The account's CAIP-10 identifier.
public string Account { get; init; }
Property Value
GroupApplication.DeviceSignature Property
The device signature over the model's device signing input.
public System.Collections.Immutable.ImmutableArray<byte> DeviceSignature { get; init; }
Property Value
System.Collections.Immutable.ImmutableArray<System.Byte>
GroupApplication.GroupId Property
The group's canonical grp_ identifier.
public string GroupId { get; init; }
Property Value
GroupApplication.InviteId Property
The invitation's canonical inv_ identifier.
public string InviteId { get; init; }
Property Value
GroupApplication.MemberEncryptionPublicKey Property
The account's 32-byte group-specific X25519 public key.
public System.Collections.Immutable.ImmutableArray<byte> MemberEncryptionPublicKey { get; init; }
Property Value
System.Collections.Immutable.ImmutableArray<System.Byte>
Methods
GroupApplication.GetSigningInput(NetworkContext) Method
Builds the canonical, network-bound bytes used to sign or verify this document.
public byte[] GetSigningInput(Meshline.Models.NetworkContext context);
Parameters
context NetworkContext
The network context bound into identifiers or signing input.
Returns
System.Byte[]
The canonical UTF-8 signing input bound to the network context, with the applicable signature fields omitted.
Exceptions
System.Text.Json.JsonException
The signing payload cannot be represented as canonical protocol JSON, contains conflicting extension fields, or already contains a root $context property.
GroupApplication.Validate(NetworkContext) Method
Validates the group and invitation identifiers, applicant identity, member key, and signature length.
public override Meshline.Validation.ProtocolViolation? Validate(Meshline.Models.NetworkContext? context=null);
Parameters
context NetworkContext
The optional network context passed to nested validation when needed; field-only validation may ignore it.
Returns
ProtocolViolation
The first detected protocol violation, or null if the implemented checks pass.
Remarks
These checks do not verify the external device signature or establish current signer authorization. Verify the signature and the applicable device-state or resource authorization evidence separately.