Members on this page
Meshline.Sdk
Meshline.Models.Protocol
GroupInvite Class
Contains a device-signed, expiring invitation to join a group.
public sealed record GroupInvite : Meshline.Models.Protocol.TypedProtocolModel, System.IEquatable<Meshline.Models.Protocol.GroupInvite>
Inheritance System.Object → ProtocolModel → TypedProtocolModel → GroupInvite
Implements System.IEquatable<GroupInvite>
Constructors
GroupInvite() Constructor
Contains a device-signed, expiring invitation to join a group.
public GroupInvite();
Properties
GroupInvite.CreatedAt Property
The creation time, in Unix seconds.
public long CreatedAt { get; init; }
Property Value
GroupInvite.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>
GroupInvite.ExpiresAt Property
The expiration time, in Unix seconds.
public long ExpiresAt { get; init; }
Property Value
GroupInvite.GroupId Property
The group's canonical grp_ identifier.
public string GroupId { get; init; }
Property Value
GroupInvite.Invitee Property
The account allowed to use a targeted invitation, or null for a shareable invitation.
public string? Invitee { get; init; }
Property Value
GroupInvite.InviteId Property
The invitation's canonical inv_ identifier.
public string InviteId { get; init; }
Property Value
GroupInvite.Inviter Property
The CAIP-10 account identifier of the invitation's creator.
public string Inviter { get; init; }
Property Value
GroupInvite.MaxUses Property
The maximum number of invitation uses, or null when no explicit use limit is supplied.
public System.Nullable<long> MaxUses { get; init; }
Property Value
Methods
GroupInvite.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.
GroupInvite.Validate(NetworkContext) Method
Validates invitation identifiers, target and use-limit rules, validity times, 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.