package request type MissionFileInput struct { UploadIntentUUID string `json:"upload_intent_uuid" example:"018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d"` Name string `json:"name" example:"mission-brief.pdf"` } type MissionCreateAttributes struct { FlightID string `json:"flight_id" validate:"required" example:"019d6774-98e8-7fba-9ef4-3795c0da8a13"` Type string `json:"type" validate:"required" example:"HEMS"` SubtypeID string `json:"subtype_id,omitempty" example:"019d6774-98e8-7fba-9ef4-3795c0da8a99"` Note string `json:"note,omitempty" example:"Mission note"` Files []MissionFileInput `json:"files,omitempty"` } type MissionCreateData struct { Type string `json:"type" validate:"required,oneof=mission_create mission" example:"mission_create"` Attributes MissionCreateAttributes `json:"attributes" validate:"required"` } type MissionCreateRequest struct { Data MissionCreateData `json:"data" validate:"required"` } type MissionUpdateAttributes struct { Type string `json:"type" validate:"required" example:"SPO"` SubtypeID string `json:"subtype_id,omitempty" example:"019d6774-98e8-7fba-9ef4-3795c0da8a99"` Note string `json:"note,omitempty" example:"Mission note"` Files []MissionFileInput `json:"files,omitempty"` } type MissionUpdateData struct { Type string `json:"type" validate:"required,oneof=mission_update mission" example:"mission_update"` Attributes MissionUpdateAttributes `json:"attributes" validate:"required"` } type MissionUpdateRequest struct { Data MissionUpdateData `json:"data" validate:"required"` } type MissionTypeCreateAttributes struct { CodeType string `json:"code_type" validate:"required" example:"HEMS"` TypeName string `json:"name" validate:"required" example:"HEMS"` } type MissionTypeCreateData struct { Type string `json:"type" validate:"required,oneof=mission_type_create mission_type" example:"mission_type_create"` Attributes MissionTypeCreateAttributes `json:"attributes" validate:"required"` } type MissionTypeCreateRequest struct { Data MissionTypeCreateData `json:"data" validate:"required"` }