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