Class CreateProjectRequest
- Namespace
- Builvero.Application.DTOs.Project
- Assembly
- Builvero.Application.dll
Request model for creating a new project.
public class CreateProjectRequest
- Inheritance
-
CreateProjectRequest
- Inherited Members
Remarks
This DTO is used by the project creation endpoint. The creating user becomes the project owner. Category must match a valid ProjectCategory enum value. Status is optional and defaults to "Idea" if not provided or invalid.
Properties
BuilderTagIds
Gets or sets the list of builder tag identifiers to associate with the project.
public List<Guid> BuilderTagIds { get; set; }
Property Value
Remarks
All provided tag IDs must exist. Empty list is allowed.
Category
Gets or sets the project category as a string (e.g., "Software", "Hardware", "Design").
public string Category { get; set; }
Property Value
- string
- Request model for creating a new project.
Remarks
This is a required field and must match a valid ProjectCategory enum value.
Description
Gets or sets the main description of the project.
public string Description { get; set; }
Property Value
- string
- Request model for creating a new project.
Remarks
This is a required field and should not be empty.
Name
Gets or sets the name of the project.
public string Name { get; set; }
Property Value
- string
- Request model for creating a new project.
Remarks
This is a required field and should not be empty.
PreferredExperienceLevel
Gets or sets the preferred experience level for project members (e.g., "Beginner", "Intermediate", "Expert").
public string? PreferredExperienceLevel { get; set; }
Property Value
- string
- Request model for creating a new project.
Remarks
Optional field. Used for matching builders with appropriate skill levels.
RichDescription
Gets or sets an optional rich description of the project, which may include formatted text or additional details.
public string? RichDescription { get; set; }
Property Value
- string
- Request model for creating a new project.
ShortDescription
Gets or sets an optional short description of the project, suitable for previews or summaries.
public string? ShortDescription { get; set; }
Property Value
- string
- Request model for creating a new project.
SkillIds
Gets or sets the list of skill identifiers to associate with the project.
public List<Guid> SkillIds { get; set; }
Property Value
Remarks
All provided skill IDs must exist and be active. Empty list is allowed.
Status
Gets or sets the project status as a string (e.g., "Idea", "InProgress", "Completed").
public string? Status { get; set; }
Property Value
- string
- Request model for creating a new project.
Remarks
Optional field. Must match a valid ProjectStatus enum value. If not provided or invalid, defaults to "Idea".
Tags
Gets or sets optional tags or keywords associated with the project.
public string? Tags { get; set; }
Property Value
- string
- Request model for creating a new project.
Remarks
Optional field. Can be used for additional categorization or search keywords.