@@ -85,23 +85,23 @@ service RouteOptimization {
8585 //
8686 // This method is a Long Running Operation (LRO). The inputs for optimization
8787 // (`OptimizeToursRequest` messages) and outputs (`OptimizeToursResponse`
88- // messages) are read/written from/ to Cloud Storage in user-specified
88+ // messages) are read from and written to Cloud Storage in user-specified
8989 // format. Like the `OptimizeTours` method, each `OptimizeToursRequest`
9090 // contains a `ShipmentModel` and returns an `OptimizeToursResponse`
91- // containing `ShipmentRoute`s , which are a set of routes to be performed by
92- // vehicles minimizing the overall cost.
91+ // containing `ShipmentRoute` fields , which are a set of routes to be
92+ // performed by vehicles minimizing the overall cost.
9393 //
9494 // The user can poll `operations.get` to check the status of the LRO:
9595 //
96- // If the LRO's `done` field is false, then at least one request is still
96+ // If the LRO `done` field is false, then at least one request is still
9797 // being processed. Other requests may have completed successfully and their
98- // results are available in GCS .
98+ // results are available in Cloud Storage .
9999 //
100100 // If the LRO's `done` field is true, then all requests have been processed.
101101 // Any successfully processed requests will have their results available in
102- // GCS . Any requests that failed will not have their results available in
103- // GCS . If the LRO's `error` field is set, then it contains the error from
104- // one of the failed requests.
102+ // Cloud Storage . Any requests that failed will not have their results
103+ // available in Cloud Storage . If the LRO's `error` field is set, then it
104+ // contains the error from one of the failed requests.
105105 rpc BatchOptimizeTours (BatchOptimizeToursRequest )
106106 returns (google.longrunning.Operation ) {
107107 option (google.api.http ) = {
@@ -374,7 +374,7 @@ message OptimizeToursRequest {
374374 // If true, polylines will be populated in response `ShipmentRoute`s.
375375 bool populate_polylines = 12 ;
376376
377- // If true, polylines will be populated in response
377+ // If true, polylines and route tokens will be populated in response
378378 // [ShipmentRoute.transitions][google.maps.routeoptimization.v1.ShipmentRoute.transitions].
379379 bool populate_transition_polylines = 13 ;
380380
@@ -1848,6 +1848,17 @@ message ShipmentRoute {
18481848 // is set to true.
18491849 EncodedPolyline route_polyline = 9 ;
18501850
1851+ // Output only. An opaque token that can be passed to [Navigation
1852+ // SDK](https://developers.google.com/maps/documentation/navigation) to
1853+ // reconstruct the route during navigation, and, in the event of rerouting,
1854+ // honor the original intention when the route was created. Treat this token
1855+ // as an opaque blob. Don't compare its value across requests as its value
1856+ // may change even if the service returns the exact same route. This field
1857+ // is only populated if [populate_transition_polylines]
1858+ // [google.maps.routeoptimization.v1.OptimizeToursRequest.populate_transition_polylines]
1859+ // is set to true.
1860+ string route_token = 12 [(google.api.field_behavior ) = OUTPUT_ONLY ];
1861+
18511862 // Vehicle loads during this transition, for each type that either appears
18521863 // in this vehicle's
18531864 // [Vehicle.load_limits][google.maps.routeoptimization.v1.Vehicle.load_limits],
@@ -2274,253 +2285,21 @@ message OptimizeToursValidationError {
22742285 // A validation error is defined by the pair (`code`, `display_name`) which
22752286 // are always present.
22762287 //
2277- // Other fields (below) provide more context about the error.
2288+ // The fields following this section provide more context about the error.
22782289 //
22792290 // *MULTIPLE ERRORS*:
22802291 // When there are multiple errors, the validation process tries to output
22812292 // several of them. Much like a compiler, this is an imperfect process. Some
22822293 // validation errors will be "fatal", meaning that they stop the entire
22832294 // validation process. This is the case for `display_name="UNSPECIFIED"`
2284- // errors, among others. Some may cause the validation process to skip other
2285- // errors.
2295+ // errors, among others. Some errors may cause the validation process to skip
2296+ // other errors.
22862297 //
22872298 // *STABILITY*:
22882299 // `code` and `display_name` should be very stable. But new codes and
22892300 // display names may appear over time, which may cause a given (invalid)
22902301 // request to yield a different (`code`, `display_name`) pair because the new
2291- // error hid the old one (see "MULTIPLE ERRORS").
2292- //
2293- // *REFERENCE*: A list of all (code, name) pairs:
2294- //
2295- // * UNSPECIFIED = 0;
2296- // * VALIDATION_TIMEOUT_ERROR = 10; Validation couldn't be completed within
2297- // the deadline.
2298- //
2299- // * REQUEST_OPTIONS_ERROR = 12;
2300- // * REQUEST_OPTIONS_INVALID_SOLVING_MODE = 1201;
2301- // * REQUEST_OPTIONS_INVALID_MAX_VALIDATION_ERRORS = 1203;
2302- // * REQUEST_OPTIONS_INVALID_GEODESIC_METERS_PER_SECOND = 1204;
2303- // * REQUEST_OPTIONS_GEODESIC_METERS_PER_SECOND_TOO_SMALL = 1205;
2304- // * REQUEST_OPTIONS_MISSING_GEODESIC_METERS_PER_SECOND = 1206;
2305- // * REQUEST_OPTIONS_POPULATE_PATHFINDER_TRIPS_AND_GEODESIC_DISTANCE
2306- // = 1207;
2307- // * REQUEST_OPTIONS_COST_MODEL_OPTIONS_AND_GEODESIC_DISTANCE = 1208;
2308- // * REQUEST_OPTIONS_TRAVEL_MODE_INCOMPATIBLE_WITH_TRAFFIC = 1211;
2309- // * REQUEST_OPTIONS_MULTIPLE_TRAFFIC_FLAVORS = 1212;
2310- // * REQUEST_OPTIONS_INVALID_TRAFFIC_FLAVOR = 1213;
2311- // * REQUEST_OPTIONS_TRAFFIC_ENABLED_WITHOUT_GLOBAL_START_TIME = 1214;
2312- // * REQUEST_OPTIONS_TRAFFIC_ENABLED_WITH_PRECEDENCES = 1215;
2313- // * REQUEST_OPTIONS_TRAFFIC_PREFILL_MODE_INVALID = 1216;
2314- // * REQUEST_OPTIONS_TRAFFIC_PREFILL_ENABLED_WITHOUT_TRAFFIC = 1217;
2315- // * INJECTED_SOLUTION_ERROR = 20;
2316- // * INJECTED_SOLUTION_MISSING_LABEL = 2000;
2317- // * INJECTED_SOLUTION_DUPLICATE_LABEL = 2001;
2318- // * INJECTED_SOLUTION_AMBIGUOUS_INDEX = 2002;
2319- // * INJECTED_SOLUTION_INFEASIBLE_AFTER_GETTING_TRAVEL_TIMES = 2003;
2320- // * INJECTED_SOLUTION_TRANSITION_INCONSISTENT_WITH_ACTUAL_TRAVEL = 2004;
2321- // * INJECTED_SOLUTION_CONCURRENT_SOLUTION_TYPES = 2005;
2322- // * INJECTED_SOLUTION_MORE_THAN_ONE_PER_TYPE = 2006;
2323- // * INJECTED_SOLUTION_REFRESH_WITHOUT_POPULATE = 2008;
2324- // * INJECTED_SOLUTION_CONSTRAINED_ROUTE_PORTION_INFEASIBLE = 2010;
2325- // * SHIPMENT_MODEL_ERROR = 22;
2326- // * SHIPMENT_MODEL_TOO_LARGE = 2200;
2327- // * SHIPMENT_MODEL_TOO_MANY_CAPACITY_TYPES = 2201;
2328- // * SHIPMENT_MODEL_GLOBAL_START_TIME_NEGATIVE_OR_NAN = 2202;
2329- // * SHIPMENT_MODEL_GLOBAL_END_TIME_TOO_LARGE_OR_NAN = 2203;
2330- // * SHIPMENT_MODEL_GLOBAL_START_TIME_AFTER_GLOBAL_END_TIME = 2204;
2331- // * SHIPMENT_MODEL_GLOBAL_DURATION_TOO_LONG = 2205;
2332- // * SHIPMENT_MODEL_MAX_ACTIVE_VEHICLES_NOT_POSITIVE = 2206;
2333- // * SHIPMENT_MODEL_DURATION_MATRIX_TOO_LARGE = 2207;
2334- // * INDEX_ERROR = 24;
2335- // * TAG_ERROR = 26;
2336- // * TIME_WINDOW_ERROR = 28;
2337- // * TIME_WINDOW_INVALID_START_TIME = 2800;
2338- // * TIME_WINDOW_INVALID_END_TIME = 2801;
2339- // * TIME_WINDOW_INVALID_SOFT_START_TIME = 2802;
2340- // * TIME_WINDOW_INVALID_SOFT_END_TIME = 2803;
2341- // * TIME_WINDOW_OUTSIDE_GLOBAL_TIME_WINDOW = 2804;
2342- // * TIME_WINDOW_START_TIME_AFTER_END_TIME = 2805;
2343- // * TIME_WINDOW_INVALID_COST_PER_HOUR_BEFORE_SOFT_START_TIME = 2806;
2344- // * TIME_WINDOW_INVALID_COST_PER_HOUR_AFTER_SOFT_END_TIME = 2807;
2345- // * TIME_WINDOW_COST_BEFORE_SOFT_START_TIME_WITHOUT_SOFT_START_TIME
2346- // = 2808;
2347- // * TIME_WINDOW_COST_AFTER_SOFT_END_TIME_WITHOUT_SOFT_END_TIME = 2809;
2348- // * TIME_WINDOW_SOFT_START_TIME_WITHOUT_COST_BEFORE_SOFT_START_TIME
2349- // = 2810;
2350- // * TIME_WINDOW_SOFT_END_TIME_WITHOUT_COST_AFTER_SOFT_END_TIME = 2811;
2351- // * TIME_WINDOW_OVERLAPPING_ADJACENT_OR_EARLIER_THAN_PREVIOUS = 2812;
2352- // * TIME_WINDOW_START_TIME_AFTER_SOFT_START_TIME = 2813;
2353- // * TIME_WINDOW_SOFT_START_TIME_OUTSIDE_GLOBAL_TIME_WINDOW = 2819;
2354- // * TIME_WINDOW_SOFT_END_TIME_OUTSIDE_GLOBAL_TIME_WINDOW = 2820;
2355- // * TIME_WINDOW_SOFT_END_TIME_AFTER_END_TIME = 2816;
2356- // * TIME_WINDOW_COST_BEFORE_SOFT_START_TIME_SET_AND_MULTIPLE_WINDOWS
2357- // = 2817;
2358- // * TIME_WINDOW_COST_AFTER_SOFT_END_TIME_SET_AND_MULTIPLE_WINDOWS = 2818;
2359- // * TRANSITION_ATTRIBUTES_ERROR = 30;
2360- // * TRANSITION_ATTRIBUTES_INVALID_COST = 3000;
2361- // * TRANSITION_ATTRIBUTES_INVALID_COST_PER_KILOMETER = 3001;
2362- // * TRANSITION_ATTRIBUTES_DUPLICATE_TAG_PAIR = 3002;
2363- // * TRANSITION_ATTRIBUTES_DISTANCE_LIMIT_MAX_METERS_UNSUPPORTED = 3003;
2364- // * TRANSITION_ATTRIBUTES_UNSPECIFIED_SOURCE_TAGS = 3004;
2365- // * TRANSITION_ATTRIBUTES_CONFLICTING_SOURCE_TAGS_FIELDS = 3005;
2366- // * TRANSITION_ATTRIBUTES_UNSPECIFIED_DESTINATION_TAGS = 3006;
2367- // * TRANSITION_ATTRIBUTES_CONFLICTING_DESTINATION_TAGS_FIELDS = 3007;
2368- // * TRANSITION_ATTRIBUTES_DELAY_DURATION_NEGATIVE_OR_NAN = 3008;
2369- // * TRANSITION_ATTRIBUTES_DELAY_DURATION_EXCEEDS_GLOBAL_DURATION = 3009;
2370- // * AMOUNT_ERROR = 31;
2371- // * AMOUNT_NEGATIVE_VALUE = 3100;
2372- // * LOAD_LIMIT_ERROR = 33;
2373- // * LOAD_LIMIT_INVALID_COST_ABOVE_SOFT_MAX = 3303;
2374- // * LOAD_LIMIT_SOFT_MAX_WITHOUT_COST_ABOVE_SOFT_MAX = 3304;
2375- // * LOAD_LIMIT_COST_ABOVE_SOFT_MAX_WITHOUT_SOFT_MAX = 3305;
2376- // * LOAD_LIMIT_NEGATIVE_SOFT_MAX = 3306;
2377- // * LOAD_LIMIT_MIXED_DEMAND_TYPE = 3307;
2378- // * LOAD_LIMIT_MAX_LOAD_NEGATIVE_VALUE = 3308;
2379- // * LOAD_LIMIT_SOFT_MAX_ABOVE_MAX = 3309;
2380- // * INTERVAL_ERROR = 34;
2381- // * INTERVAL_MIN_EXCEEDS_MAX = 3401;
2382- // * INTERVAL_NEGATIVE_MIN = 3402;
2383- // * INTERVAL_NEGATIVE_MAX = 3403;
2384- // * INTERVAL_MIN_EXCEEDS_CAPACITY = 3404;
2385- // * INTERVAL_MAX_EXCEEDS_CAPACITY = 3405;
2386- // * DISTANCE_LIMIT_ERROR = 36;
2387- // * DISTANCE_LIMIT_INVALID_COST_AFTER_SOFT_MAX = 3601;
2388- // * DISTANCE_LIMIT_SOFT_MAX_WITHOUT_COST_AFTER_SOFT_MAX = 3602;
2389- // * DISTANCE_LIMIT_COST_AFTER_SOFT_MAX_WITHOUT_SOFT_MAX = 3603;
2390- // * DISTANCE_LIMIT_NEGATIVE_MAX = 3604;
2391- // * DISTANCE_LIMIT_NEGATIVE_SOFT_MAX = 3605;
2392- // * DISTANCE_LIMIT_SOFT_MAX_LARGER_THAN_MAX = 3606;
2393- // * DURATION_LIMIT_ERROR = 38;
2394- // * DURATION_LIMIT_MAX_DURATION_NEGATIVE_OR_NAN = 3800;
2395- // * DURATION_LIMIT_SOFT_MAX_DURATION_NEGATIVE_OR_NAN = 3801;
2396- // * DURATION_LIMIT_INVALID_COST_PER_HOUR_AFTER_SOFT_MAX = 3802;
2397- // * DURATION_LIMIT_SOFT_MAX_WITHOUT_COST_AFTER_SOFT_MAX = 3803;
2398- // * DURATION_LIMIT_COST_AFTER_SOFT_MAX_WITHOUT_SOFT_MAX = 3804;
2399- // * DURATION_LIMIT_QUADRATIC_SOFT_MAX_DURATION_NEGATIVE_OR_NAN = 3805;
2400- // * DURATION_LIMIT_INVALID_COST_AFTER_QUADRATIC_SOFT_MAX = 3806;
2401- // * DURATION_LIMIT_QUADRATIC_SOFT_MAX_WITHOUT_COST_PER_SQUARE_HOUR
2402- // = 3807;
2403- // * DURATION_LIMIT_COST_PER_SQUARE_HOUR_WITHOUT_QUADRATIC_SOFT_MAX
2404- // = 3808;
2405- // * DURATION_LIMIT_QUADRATIC_SOFT_MAX_WITHOUT_MAX = 3809;
2406- // * DURATION_LIMIT_SOFT_MAX_LARGER_THAN_MAX = 3810;
2407- // * DURATION_LIMIT_QUADRATIC_SOFT_MAX_LARGER_THAN_MAX = 3811;
2408- // * DURATION_LIMIT_DIFF_BETWEEN_MAX_AND_QUADRATIC_SOFT_MAX_TOO_LARGE
2409- // = 3812;
2410- // * DURATION_LIMIT_MAX_DURATION_EXCEEDS_GLOBAL_DURATION = 3813;
2411- // * DURATION_LIMIT_SOFT_MAX_DURATION_EXCEEDS_GLOBAL_DURATION = 3814;
2412- // * DURATION_LIMIT_QUADRATIC_SOFT_MAX_DURATION_EXCEEDS_GLOBAL_DURATION
2413- // = 3815;
2414- // * SHIPMENT_ERROR = 40;
2415- // * SHIPMENT_PD_LIMIT_WITHOUT_PICKUP_AND_DELIVERY = 4014;
2416- // * SHIPMENT_PD_ABSOLUTE_DETOUR_LIMIT_DURATION_NEGATIVE_OR_NAN = 4000;
2417- // * SHIPMENT_PD_ABSOLUTE_DETOUR_LIMIT_DURATION_EXCEEDS_GLOBAL_DURATION
2418- // = 4001;
2419- // * SHIPMENT_PD_RELATIVE_DETOUR_LIMIT_INVALID = 4015;
2420- // * SHIPMENT_PD_DETOUR_LIMIT_AND_EXTRA_VISIT_DURATION = 4016;
2421- // * SHIPMENT_PD_TIME_LIMIT_DURATION_NEGATIVE_OR_NAN = 4002;
2422- // * SHIPMENT_PD_TIME_LIMIT_DURATION_EXCEEDS_GLOBAL_DURATION = 4003;
2423- // * SHIPMENT_EMPTY_SHIPMENT_TYPE = 4004;
2424- // * SHIPMENT_NO_PICKUP_NO_DELIVERY = 4005;
2425- // * SHIPMENT_INVALID_PENALTY_COST = 4006;
2426- // * SHIPMENT_ALLOWED_VEHICLE_INDEX_OUT_OF_BOUNDS = 4007;
2427- // * SHIPMENT_DUPLICATE_ALLOWED_VEHICLE_INDEX = 4008;
2428- // * SHIPMENT_INCONSISTENT_COST_FOR_VEHICLE_SIZE_WITHOUT_INDEX = 4009;
2429- // * SHIPMENT_INCONSISTENT_COST_FOR_VEHICLE_SIZE_WITH_INDEX = 4010;
2430- // * SHIPMENT_INVALID_COST_FOR_VEHICLE = 4011;
2431- // * SHIPMENT_COST_FOR_VEHICLE_INDEX_OUT_OF_BOUNDS = 4012;
2432- // * SHIPMENT_DUPLICATE_COST_FOR_VEHICLE_INDEX = 4013;
2433- // * VEHICLE_ERROR = 42;
2434- // * VEHICLE_EMPTY_REQUIRED_OPERATOR_TYPE = 4200;
2435- // * VEHICLE_DUPLICATE_REQUIRED_OPERATOR_TYPE = 4201;
2436- // * VEHICLE_NO_OPERATOR_WITH_REQUIRED_OPERATOR_TYPE = 4202;
2437- // * VEHICLE_EMPTY_START_TAG = 4203;
2438- // * VEHICLE_DUPLICATE_START_TAG = 4204;
2439- // * VEHICLE_EMPTY_END_TAG = 4205;
2440- // * VEHICLE_DUPLICATE_END_TAG = 4206;
2441- // * VEHICLE_EXTRA_VISIT_DURATION_NEGATIVE_OR_NAN = 4207;
2442- // * VEHICLE_EXTRA_VISIT_DURATION_EXCEEDS_GLOBAL_DURATION = 4208;
2443- // * VEHICLE_EXTRA_VISIT_DURATION_EMPTY_KEY = 4209;
2444- // * VEHICLE_FIRST_SHIPMENT_INDEX_OUT_OF_BOUNDS = 4210;
2445- // * VEHICLE_FIRST_SHIPMENT_IGNORED = 4211;
2446- // * VEHICLE_FIRST_SHIPMENT_NOT_BOUND = 4212;
2447- // * VEHICLE_LAST_SHIPMENT_INDEX_OUT_OF_BOUNDS = 4213;
2448- // * VEHICLE_LAST_SHIPMENT_IGNORED = 4214;
2449- // * VEHICLE_LAST_SHIPMENT_NOT_BOUND = 4215;
2450- // * VEHICLE_IGNORED_WITH_USED_IF_ROUTE_IS_EMPTY = 4216;
2451- // * VEHICLE_INVALID_COST_PER_KILOMETER = 4217;
2452- // * VEHICLE_INVALID_COST_PER_HOUR = 4218;
2453- // * VEHICLE_INVALID_COST_PER_TRAVELED_HOUR = 4219;
2454- // * VEHICLE_INVALID_FIXED_COST = 4220;
2455- // * VEHICLE_INVALID_TRAVEL_DURATION_MULTIPLE = 4221;
2456- // * VEHICLE_TRAVEL_DURATION_MULTIPLE_WITH_SHIPMENT_PD_DETOUR_LIMITS
2457- // = 4223;
2458- // * VEHICLE_MATRIX_INDEX_WITH_SHIPMENT_PD_DETOUR_LIMITS = 4224;
2459- // * VEHICLE_MINIMUM_DURATION_LONGER_THAN_DURATION_LIMIT = 4222;
2460- // * VISIT_REQUEST_ERROR = 44;
2461- // * VISIT_REQUEST_EMPTY_TAG = 4400;
2462- // * VISIT_REQUEST_DUPLICATE_TAG = 4401;
2463- // * VISIT_REQUEST_DURATION_NEGATIVE_OR_NAN = 4404;
2464- // * VISIT_REQUEST_DURATION_EXCEEDS_GLOBAL_DURATION = 4405;
2465- // * PRECEDENCE_ERROR = 46;
2466- // * PRECEDENCE_RULE_MISSING_FIRST_INDEX = 4600;
2467- // * PRECEDENCE_RULE_MISSING_SECOND_INDEX = 4601;
2468- // * PRECEDENCE_RULE_FIRST_INDEX_OUT_OF_BOUNDS = 4602;
2469- // * PRECEDENCE_RULE_SECOND_INDEX_OUT_OF_BOUNDS = 4603;
2470- // * PRECEDENCE_RULE_DUPLICATE_INDEX = 4604;
2471- // * PRECEDENCE_RULE_INEXISTENT_FIRST_VISIT_REQUEST = 4605;
2472- // * PRECEDENCE_RULE_INEXISTENT_SECOND_VISIT_REQUEST = 4606;
2473- // * BREAK_ERROR = 48;
2474- // * BREAK_RULE_EMPTY = 4800;
2475- // * BREAK_REQUEST_UNSPECIFIED_DURATION = 4801;
2476- // * BREAK_REQUEST_UNSPECIFIED_EARLIEST_START_TIME = 4802;
2477- // * BREAK_REQUEST_UNSPECIFIED_LATEST_START_TIME = 4803;
2478- // * BREAK_REQUEST_DURATION_NEGATIVE_OR_NAN = 4804; = 4804;
2479- // * BREAK_REQUEST_LATEST_START_TIME_BEFORE_EARLIEST_START_TIME = 4805;
2480- // * BREAK_REQUEST_EARLIEST_START_TIME_BEFORE_GLOBAL_START_TIME = 4806;
2481- // * BREAK_REQUEST_LATEST_END_TIME_AFTER_GLOBAL_END_TIME = 4807;
2482- // * BREAK_REQUEST_NON_SCHEDULABLE = 4808;
2483- // * BREAK_FREQUENCY_MAX_INTER_BREAK_DURATION_NEGATIVE_OR_NAN = 4809;
2484- // * BREAK_FREQUENCY_MIN_BREAK_DURATION_NEGATIVE_OR_NAN = 4810;
2485- // * BREAK_FREQUENCY_MIN_BREAK_DURATION_EXCEEDS_GLOBAL_DURATION = 4811;
2486- // * BREAK_FREQUENCY_MAX_INTER_BREAK_DURATION_EXCEEDS_GLOBAL_DURATION
2487- // = 4812;
2488- // * BREAK_REQUEST_DURATION_EXCEEDS_GLOBAL_DURATION = 4813;
2489- // * BREAK_FREQUENCY_MISSING_MAX_INTER_BREAK_DURATION = 4814;
2490- // * BREAK_FREQUENCY_MISSING_MIN_BREAK_DURATION = 4815;
2491- // * SHIPMENT_TYPE_INCOMPATIBILITY_ERROR = 50;
2492- // * SHIPMENT_TYPE_INCOMPATIBILITY_EMPTY_TYPE = 5001;
2493- // * SHIPMENT_TYPE_INCOMPATIBILITY_LESS_THAN_TWO_TYPES = 5002;
2494- // * SHIPMENT_TYPE_INCOMPATIBILITY_DUPLICATE_TYPE = 5003;
2495- // * SHIPMENT_TYPE_INCOMPATIBILITY_INVALID_INCOMPATIBILITY_MODE = 5004;
2496- // * SHIPMENT_TYPE_INCOMPATIBILITY_TOO_MANY_INCOMPATIBILITIES = 5005;
2497- // * SHIPMENT_TYPE_REQUIREMENT_ERROR = 52;
2498- // * SHIPMENT_TYPE_REQUIREMENT_NO_REQUIRED_TYPE = 52001;
2499- // * SHIPMENT_TYPE_REQUIREMENT_NO_DEPENDENT_TYPE = 52002;
2500- // * SHIPMENT_TYPE_REQUIREMENT_INVALID_REQUIREMENT_MODE = 52003;
2501- // * SHIPMENT_TYPE_REQUIREMENT_TOO_MANY_REQUIREMENTS = 52004;
2502- // * SHIPMENT_TYPE_REQUIREMENT_EMPTY_REQUIRED_TYPE = 52005;
2503- // * SHIPMENT_TYPE_REQUIREMENT_DUPLICATE_REQUIRED_TYPE = 52006;
2504- // * SHIPMENT_TYPE_REQUIREMENT_NO_REQUIRED_TYPE_FOUND = 52007;
2505- // * SHIPMENT_TYPE_REQUIREMENT_EMPTY_DEPENDENT_TYPE = 52008;
2506- // * SHIPMENT_TYPE_REQUIREMENT_DUPLICATE_DEPENDENT_TYPE = 52009;
2507- // * SHIPMENT_TYPE_REQUIREMENT_SELF_DEPENDENT_TYPE = 52010;
2508- // * SHIPMENT_TYPE_REQUIREMENT_GRAPH_HAS_CYCLES = 52011;
2509- // * VEHICLE_OPERATOR_ERROR = 54;
2510- // * VEHICLE_OPERATOR_EMPTY_TYPE = 5400;
2511- // * VEHICLE_OPERATOR_MULTIPLE_START_TIME_WINDOWS = 5401;
2512- // * VEHICLE_OPERATOR_SOFT_START_TIME_WINDOW = 5402;
2513- // * VEHICLE_OPERATOR_MULTIPLE_END_TIME_WINDOWS = 5403;
2514- // * VEHICLE_OPERATOR_SOFT_END_TIME_WINDOW = 5404;
2515- // * DURATION_SECONDS_MATRIX_ERROR = 56;
2516- // * DURATION_SECONDS_MATRIX_DURATION_NEGATIVE_OR_NAN = 5600;
2517- // * DURATION_SECONDS_MATRIX_DURATION_EXCEEDS_GLOBAL_DURATION = 5601;
2518- // * WARNING = 9;
2519- // * WARNING_INJECTED_FIRST_SOLUTION = 90;
2520- // * WARNING_INJECTED_FIRST_SOLUTION_INFEASIBLE_SHIPMENTS_REMOVED
2521- // = 9000;
2522- // * WARNING_INJECTED_FIRST_SOLUTION_INFEASIBLE_AFTER_GETTING_TRAVEL_TIMES
2523- // = 9001;
2302+ // error hid the old one. For example, see "MULTIPLE ERRORS".
25242303 int32 code = 1 ;
25252304
25262305 // The error display name.
0 commit comments