Class ProjectInvitation
Represents an invitation sent by a project owner or member to invite another user to join a project.
public class ProjectInvitation
- Inheritance
-
ProjectInvitation
- Inherited Members
Remarks
Project invitations allow project owners and members to proactively invite specific users to join their project. Invitations can include an optional message and have an expiration date. The recipient can accept, decline, or let the invitation expire. A unique token is generated for each invitation to enable secure acceptance via email links.
Properties
CreatedAtUtc
Gets or sets the UTC timestamp when this invitation was created.
public DateTime CreatedAtUtc { get; set; }
Property Value
- DateTime
- Represents an invitation sent by a project owner or member to invite another user to join a project.
ExpiresAtUtc
Gets or sets the UTC timestamp when this invitation expires, or null if it never expires.
public DateTime? ExpiresAtUtc { get; set; }
Property Value
- DateTime?
- Represents an invitation sent by a project owner or member to invite another user to join a project.
Remarks
If set, the invitation cannot be accepted after this date. Expired invitations should have their status updated to Expired.
FromUser
Gets or sets the user who sent this invitation.
public User FromUser { get; set; }
Property Value
- User
- Represents an invitation sent by a project owner or member to invite another user to join a project.
FromUserId
Gets or sets the unique identifier of the user who sent this invitation.
public Guid FromUserId { get; set; }
Property Value
- Guid
- Represents an invitation sent by a project owner or member to invite another user to join a project.
Id
Gets or sets the unique identifier for this project invitation.
public Guid Id { get; set; }
Property Value
- Guid
- Represents an invitation sent by a project owner or member to invite another user to join a project.
Message
Gets or sets an optional message included with the invitation, providing context or additional information.
public string? Message { get; set; }
Property Value
- string
- Represents an invitation sent by a project owner or member to invite another user to join a project.
Project
Gets or sets the project this invitation is for.
public Project Project { get; set; }
Property Value
- Project
- Represents an invitation sent by a project owner or member to invite another user to join a project.
ProjectId
Gets or sets the unique identifier of the project this invitation is for.
public Guid ProjectId { get; set; }
Property Value
- Guid
- Represents an invitation sent by a project owner or member to invite another user to join a project.
RespondedAtUtc
Gets or sets the UTC timestamp when the invitation was responded to (accepted, declined, etc.), or null if not yet responded to.
public DateTime? RespondedAtUtc { get; set; }
Property Value
- DateTime?
- Represents an invitation sent by a project owner or member to invite another user to join a project.
ResponseReason
Gets or sets an optional reason provided when the invitation was responded to (accepted, declined, etc.).
public string? ResponseReason { get; set; }
Property Value
- string
- Represents an invitation sent by a project owner or member to invite another user to join a project.
Status
Gets or sets the current status of this invitation.
public ProjectInvitationStatus Status { get; set; }
Property Value
- ProjectInvitationStatus
- Represents an invitation sent by a project owner or member to invite another user to join a project.
ToUser
Gets or sets the user who is being invited to join the project.
public User ToUser { get; set; }
Property Value
- User
- Represents an invitation sent by a project owner or member to invite another user to join a project.
ToUserId
Gets or sets the unique identifier of the user who is being invited to join the project.
public Guid ToUserId { get; set; }
Property Value
- Guid
- Represents an invitation sent by a project owner or member to invite another user to join a project.
Token
Gets or sets the unique token associated with this invitation, used for secure acceptance via email links.
public string Token { get; set; }
Property Value
- string
- Represents an invitation sent by a project owner or member to invite another user to join a project.
Remarks
This token is included in invitation emails and allows users to accept invitations without logging in first. The token should be cryptographically secure and unique per invitation.