package dtos // CreateTrackRequest is used for validating input when uploading a new track. type CreateTrackRequest struct { HasObjectKey Name string `json:"name" binding:"required,min=1,max=100"` GenreID string `json:"genre_id" binding:"required,uuid"` IsPublic bool `json:"is_public"` ObjectKey string `json:"object_key" binding:"required"` } func (req CreateTrackRequest) GetObjectKey() string { return req.ObjectKey } type UpdateTrackRequest struct { HasObjectKey Name string `json:"name" binding:"omitempty,min=1,max=100"` ObjectKey string `json:"object_key" binding:"omitempty"` } func (req UpdateTrackRequest) GetObjectKey() string { return req.ObjectKey } type MaxPagesResponse struct { MaxPages int `json:"max_pages" example:"14"` TotalCount int64 `json:"total_count" example:"134"` } type GetPrivateTrackUploadUrl struct { AudioFile string `json:"audio_file" binding:"omitempty"` }