package upstreamApi type MsgData struct { Data VstpMsg `json:"VSTPCIFMsgV1,omitempty"` } type VstpMsg struct { CIFMsg Schedule `json:"schedule,omitempty"` } type Schedule struct { TransactionType string `json:"transaction_type,omitempty"` ScheduleStartDate string `json:"schedule_start_date,omitempty"` ScheduleEndDate string `json:"schedule_end_date,omitempty"` ScheduleDaysRun string `json:"schedule_days_runs,omitempty"` CIFTrainUID string `json:"CIF_train_uid,omitempty"` CIFSTPIndicator string `json:"CIF_stp_indicator,omitempty"` ScheduleSegment []ScheduleSegment `json:"schedule_segment,omitempty"` } type ScheduleSegment struct { SignallingID string `json:"signalling_id,omitempty"` ATOCCode string `json:"atoc_code,omitempty"` CIFTrainCategory string `json:"CIF_train_category,omitempty"` CIFHeadcode string `json:"CIF_headcode,omitempty"` CIFPowerType string `json:"CIF_power_type,omitempty"` CIFSpeed string `json:"CIF_speed,omitempty"` ScheduleLocation []ScheduleLocation `json:"schedule_location,omitempty"` } type ScheduleLocation struct { ScheduledArrivalTime string `json:"scheduled_arrival_time,omitempty"` ScheduledDepartureTime string `json:"scheduled_departure_time,omitempty"` ScheduledPassTime string `json:"scheduled_pass_time,omitempty"` PublicArrivalTime string `json:"public_arrival_time,omitempty"` PublicDepartureTime string `json:"public_departure_time,omitempty"` CIFPlatform string `json:"CIF_platform,omitempty"` CIFLine string `json:"CIF_line,omitempty"` Tiploc LocationTiploc `json:"location,omitempty"` } type LocationTiploc struct { Tiploc struct { TiplocId string `json:"tiploc_id,omitempty"` } `json:"tiploc,omitempty"` }