Skip to content

Invite data types ​

Fields below are declared serialized members. Base types contribute their own fields; related types link the payload graph. ? means nullable, and required marks a required C# initializer. These are schematic C# contract shapes, not compilable declarations or a separate JSON schema. Constructor members are repeated in the field list for easy scanning. Serialization attributes and implementation helpers are omitted; use the linked source for exact wire aliases and formatters.

ChatInvite ​

Invite link for joining a specific chat. Source

csharp
public sealed partial record ChatInvite(
    Symbol Id,
    long Version = 0
) : Invite(Id, Version)
{
    ChatId ChatId;
}

Related types: ChatId, Invite.

Invite ​

Abstract invitation link. Concrete kinds: ChatInvite, PlaceInvite, UserInvite. Source

csharp
public abstract partial record Invite(
    Symbol Id,
    long Version = 0
)
    : IHasId<Symbol>,
      IHasVersion<long>,
      IRequirementTarget,
      IForwardCompatibleUnion<Invite>
{
    Symbol Id;
    long Version;
    string CreatedBy;
    Moment CreatedAt;
    Moment ExpiresOn;
    int Remaining;
}

Related types: ChatInvite, PlaceInvite, UserInvite.

InviteChatLinkPreview ​

Preview data for an invite link showing the target chat or place. Source

csharp
public partial record InviteChatLinkPreview(Chat.Chat? Chat, Chat.Place? Place )
{
    Chat.Chat? Chat;
    Chat.Place? Place;
}

Related types: Chat, Place.

Invites_Generate ​

Command payload for invites generate. Source

csharp
public sealed partial record Invites_Generate : ApiCommand<Invite>
{
    required Invite Invite;
}

Related types: ApiCommand, Invite.

Invites_Revoke ​

Command payload for invites revoke. Source

csharp
public sealed partial record Invites_Revoke : ApiCommand<Unit>
{
    required string InviteId;
}

Related types: ApiCommand.

Invites_Use ​

Command payload for invites use. Source

csharp
public sealed partial record Invites_Use : ApiCommand<Invite>
{
    required string InviteId;
}

Related types: ApiCommand, Invite.

PlaceInvite ​

Invite link for joining a specific place. Source

csharp
public sealed partial record PlaceInvite(
    Symbol Id,
    long Version = 0
) : Invite(Id, Version)
{
    PlaceId PlaceId;
}

Related types: Invite, PlaceId.

UserInvite ​

Invite link for adding the inviter as a contact (no chat / place attached). Source

csharp
public sealed partial record UserInvite : Invite

No additional serialized fields are declared here; use the base contract or string-identifier representation.

Related types: Invite.