Package google.research.middlemileoptimization.v1

Indice

MiddleMileOptimization

Servizio per la gestione di una rete logistica e il routing delle spedizioni all'interno. Questo protocollo è stateless (i messaggi sono indipendenti), sebbene il servizio alla base sia altamente stateful (la ricezione di un messaggio può cambiare drasticamente le risposte per molti metodi, ad esempio l'indirizzamento di una spedizione può cambiare il routing di altre spedizioni).

CommitPath

rpc CommitPath(CommitPathRequest) returns (Path)

Esegue il commit del percorso di una spedizione, indicando che non potrà essere modificata in futuro, nemmeno da parte dell'utente, fatta eccezione per caso di forza maggiore o atto di Dio indicato dai metodi MakeVeicoliUnavailable, MakeHubUnavailable e MakeLineUnavailable. Questo metodo non viene usato per taggare una particolare revisione di un percorso.

CreateHub

rpc CreateHub(CreateHubRequest) returns (Hub)

Crea un hub.

CreateLine

rpc CreateLine(CreateLineRequest) returns (Line)

Crea una linea.

CreateLineRotation

rpc CreateLineRotation(CreateLineRotationRequest) returns (LineRotation)

Crea una rotazione di linea.

CreateNetwork

rpc CreateNetwork(CreateNetworkRequest) returns (Network)

Crea una rete.

CreateVehicle

rpc CreateVehicle(CreateVehicleRequest) returns (Vehicle)

Crea un veicolo.

DeleteHub

rpc DeleteHub(DeleteHubRequest) returns (Empty)

Elimina un hub.

DeleteLine

rpc DeleteLine(DeleteLineRequest) returns (Empty)

Elimina una linea.

DeleteLineRotation

rpc DeleteLineRotation(DeleteLineRotationRequest) returns (Empty)

Elimina una rotazione di linea.

DeleteNetwork

rpc DeleteNetwork(DeleteNetworkRequest) returns (Empty)

Elimina una rete.

DeleteShipment

rpc DeleteShipment(DeleteShipmentRequest) returns (Empty)

Elimina una spedizione.

DeleteVehicle

rpc DeleteVehicle(DeleteVehicleRequest) returns (Empty)

Elimina un veicolo.

GetHub

rpc GetHub(GetHubRequest) returns (Hub)

Recupera i dettagli di un hub.

GetLine

rpc GetLine(GetLineRequest) returns (Line)

Recupera i dettagli di una linea.

GetLineRotation

rpc GetLineRotation(GetLineRotationRequest) returns (LineRotation)

Recupera i dettagli di una rotazione di linea.

GetNetwork

rpc GetNetwork(GetNetworkRequest) returns (Network)

Recupera i dettagli di una rete.

GetShipment

rpc GetShipment(GetShipmentRequest) returns (Shipment)

Recupera i dettagli di una spedizione.

GetVehicle

rpc GetVehicle(GetVehicleRequest) returns (Vehicle)

Recupera i dettagli di un veicolo.

ListHubs

rpc ListHubs(ListHubsRequest) returns (ListHubsResponse)

Elenca gli hub.

ListLineRotations

rpc ListLineRotations(ListLineRotationsRequest) returns (ListLineRotationsResponse)

Elenca le Rotazioni delle linee.

ListLines

rpc ListLines(ListLinesRequest) returns (ListLinesResponse)

Elenca le linee.

ListNetworks

rpc ListNetworks(ListNetworksRequest) returns (ListNetworksResponse)

Elenca la rete.

ListPaths

rpc ListPaths(ListPathsRequest) returns (ListPathsResponse)

Restituisce tutti i percorsi attualmente disponibili. Questo metodo è idempotente e non ha alcun effetto collaterale.

ListShipments

rpc ListShipments(ListShipmentsRequest) returns (ListShipmentsResponse)

Elenca le spedizioni.

ListVehicles

rpc ListVehicles(ListVehiclesRequest) returns (ListVehiclesResponse)

Elenca i veicoli.

MakeHubAvailable

rpc MakeHubAvailable(MakeHubAvailableRequest) returns (MakeHubAvailableResponse)

Rende disponibile un hub.

MakeHubUnavailable

rpc MakeHubUnavailable(MakeHubUnavailableRequest) returns (MakeHubUnavailableResponse)

Rende un hub non disponibile.

MakeLineAvailable

rpc MakeLineAvailable(MakeLineAvailableRequest) returns (MakeLineAvailableResponse)

Rende disponibile una linea.

MakeLineUnavailable

rpc MakeLineUnavailable(MakeLineUnavailableRequest) returns (MakeLineUnavailableResponse)

Rende una linea non disponibile.

MakeVehicleAvailable

rpc MakeVehicleAvailable(MakeVehicleAvailableRequest) returns (MakeVehicleAvailableResponse)

Rende disponibile un veicolo.

MakeVehicleUnavailable

rpc MakeVehicleUnavailable(MakeVehicleUnavailableRequest) returns (MakeVehicleUnavailableResponse)

Rende un veicolo non disponibile.

RouteShipment

rpc RouteShipment(RouteShipmentRequest) returns (RouteShipmentResponse)

Indirizzare una nuova spedizione. Questa operazione, simile alla creazione, implica un cambiamento di stato.

UpdateHub

rpc UpdateHub(UpdateHubRequest) returns (Hub)

Aggiorna un hub.

UpdateLine

rpc UpdateLine(UpdateLineRequest) returns (Line)

Aggiorna una linea.

UpdateLineRotation

rpc UpdateLineRotation(UpdateLineRotationRequest) returns (LineRotation)

Aggiorna una rotazione di linea.

UpdateNetwork

rpc UpdateNetwork(UpdateNetworkRequest) returns (Network)

Consente di aggiornare una rete.

UpdatePath

rpc UpdatePath(UpdatePathRequest) returns (Path)

Modifica il percorso di una spedizione: invece di utilizzare quella calcolata dal servizio, lo stato conterrà quella impostata dall'utente tramite questa chiamata.

UpdateVehicle

rpc UpdateVehicle(UpdateVehicleRequest) returns (Vehicle)

Aggiorna un veicolo.

AnnotatedPathSegment

Rappresenta una parte di un percorso con informazioni più ridondanti che possono essere calcolate in base al PathSegment e alla Rete contenuti. Questi messaggi vengono generalmente restituiti dal server API.

Campi
segment

PathSegment

Obbligatoria. Segmento annotato.

arrival_time

DateTime

Solo output. Ora di arrivo di questo tratto.

departure_time

DateTime

Solo output. Ora di partenza di questo tratto.

is_committed

bool

Solo output. Indica se il cliente dell'API ha deciso di eseguire il commit di questa parte del percorso.

segment_cost_constant

double

Solo output. Costo costante per questo segmento.

segment_cost_due_to_vehicle

map<string, double>

Solo output. Una voce per dimensione.

segment_cost_due_to_departure

double

Solo output. Costo dovuto alla rotazione delle righe: partenza.

segment_cost_due_to_arrival

double

Solo output. Costo dovuto alla rotazione delle linee: arrivo.

CommitPathRequest

Il messaggio di richiesta per il metodo CommitPath.

Campi
name

string

Obbligatoria. Il nome della spedizione il cui percorso deve essere confermato. Formato: "networks/{network}/shipments/{shipment}"

Campo unione path_to_commit. Il percorso o le sue parti di cui eseguire il commit. path_to_commit può essere solo uno dei seguenti:
complete_shipment_path

PathToCommit

I segmenti di un percorso da un'origine a una destinazione.

segments

IncompletePathToCommit

Un sottoinsieme dei segmenti di un percorso dall'origine a una destinazione.

IncompletePathToCommit

Parte del percorso di cui viene eseguito il commit, ovvero alcuni segmenti tra l'origine e la destinazione.

Campi
segments[]

PathSegment

Obbligatoria. Un sottoinsieme dei segmenti di un percorso dall'origine a una destinazione.

PathToCommit

Percorso completo in fase di commit, dall'origine alla destinazione.

Campi
segments[]

PathSegment

Obbligatoria. I segmenti devono essere in ordine, dall'origine alla destinazione.

CreateHubRequest

Il messaggio di richiesta per il metodo CreateHub.

Campi
parent

string

Obbligatoria. La risorsa padre in cui verrà creato questo hub. Formato: "networks/{network}"

hub_id

string

Obbligatoria. Identificatore dell'hub da creare.

hub

Hub

Obbligatoria. L'hub da creare.

CreateLineRequest

Il messaggio di richiesta per il metodo CreateLine.

Campi
parent

string

Obbligatoria. La risorsa padre in cui verrà creata questa riga. Formato: "networks/{network}"

line_id

string

Obbligatoria. Identificatore della riga da creare.

line

Line

Obbligatoria. La riga da creare.

CreateLineRotationRequest

Il messaggio di richiesta per il metodo CreateLineRotation.

Campi
parent

string

Obbligatoria. La risorsa padre in cui verrà creata la rotazione di linee. Formato: "networks/{network}/lines/{line}"

line_rotation_id

string

Obbligatoria. Identificatore della rotazione di linee da creare.

line_rotation

LineRotation

Obbligatoria. La rotazione di linee da creare.

CreateNetworkRequest

Il messaggio di richiesta per il metodo CreateNetwork.

Campi
network_id

string

Obbligatoria. Identificatore della rete da creare.

network

Network

Obbligatoria. La rete da creare.

CreateVehicleRequest

Il messaggio di richiesta per il metodo CreateVehicle.

Campi
parent

string

Obbligatoria. La risorsa padre in cui verrà creato questo veicolo. Formato: "networks/{network}"

vehicle_id

string

Obbligatoria. Identificatore del veicolo da creare.

vehicle

Vehicle

Obbligatoria. Il veicolo da creare.

CrossDockingCapacity

Capacità cross-docking complessiva per un hub.

Campi
capacity_per_hour[]

ValueDimension

Campo facoltativo. Capacità di cross-docking per ogni dimensione.

CrossDockingTime

Tempo complessivo di cross-docking per un hub.

Campi
time_constant

Duration

Campo facoltativo. Tempo costante per un'operazione cross-docking.

time

SeparableNDFunction

Campo facoltativo. La separazione è un presupposto che semplifica.

DateTimeRange

Intervallo di tempo tra due DateTime. Per una data e un'ora pertinenti, utilizza start == end.

google/type/interval.proto ha uno scopo simile, ma con l'orario fisico (ci interessa solo l'ora civile).

Campi
first_date

DateTime

Inizio dell'intervallo.

last_date

DateTime

Fine dell'intervallo

DeleteHubRequest

Il messaggio di richiesta per il metodo DeleteHub.

Campi
name

string

Obbligatoria. Il nome dell'hub da eliminare. Formato: "networks/{network}/hubs/{hub}"

DeleteLineRequest

Il messaggio di richiesta per il metodo DeleteLine.

Campi
name

string

Obbligatoria. Il nome della riga da eliminare. Formato: "networks/{network}/lines/{line}"

force

bool

Campo facoltativo. Se il criterio è impostato su true, elimina le risorse figlio.

DeleteLineRotationRequest

Il messaggio di richiesta per il metodo DeleteLineRotation.

Campi
name

string

Obbligatoria. Il nome della rotazione di linee da eliminare. Formato: "networks/{network}/lines/{line}/rotations/{rotation}"

DeleteNetworkRequest

Il messaggio di richiesta per il metodo DeleteNetwork.

Campi
name

string

Obbligatoria. Il nome della rete da eliminare. Formato: "networks/{network}"

force

bool

Campo facoltativo. Se il criterio è impostato su true, elimina le risorse figlio.

DeleteShipmentRequest

Il messaggio di richiesta per il metodo DeleteShipment.

Campi
name

string

Obbligatoria. Il nome della spedizione da eliminare. Formato: "networks/{network}/shipments/{shipment}"

DeleteVehicleRequest

Il messaggio di richiesta per il metodo DeleteVehicle.

Campi
name

string

Obbligatoria. Il nome del veicolo da eliminare. Formato: "networks/{network}/vehicles/{vehicle}"

DistanceMatrixEntry

Distanza tra un hub di origine e un hub di destinazione.

Campi
source_hub

string

Obbligatoria. Hub di origine.

destination_hub

string

Obbligatoria. Hub di destinazione.

weights[]

ValueDimension

Obbligatoria. Distanza tra gli hub, misurata in diverse dimensioni.

EarlinessTardiness

Funzioni di costo dovute all'arrivo/partenza di una spedizione prima o dopo il tempo richiesto (vincoli flessibili).

Campi
maximum_earliness

Duration

Campo facoltativo. Massima anticipo consentita. Utile solo con i costi.

maximum_tardiness

Duration

Campo facoltativo. Ritardo massimo consentito. Utile solo con i costi.

earliness_cost

Function1D

Campo facoltativo. Costo della tempestività. Annulla impostazione se non prevede costi per la tempestività.

tardiness_cost

Function1D

Campo facoltativo. Costo del ritardo. Annulla l'impostazione senza costi aggiuntivi per il ritardo.

Funzione1D

Funzione di un argomento.

Campi
Campo unione function. L'unità dell'argomento della funzione dovrebbe essere: - se un peso: kg - se un tempo: min - se un numero di pallet: 1 function può essere solo uno dei seguenti:
constant

double

La funzione è una costante.

pwl

PieceWiseAffineFunction

La funzione è lineare a tratti.

GeneratedLineAndRotation

Una rotazione di una linea generata da questa API e non dal cliente dell'API. È intrinsecamente meno vincolato e potrebbe utilizzare qualsiasi veicolo (a meno che il cliente dell'API non decida diversamente nelle chiamate successive).

Campi
arrival_times

map<string, DateTime>

Solo output. Mappa tra ID hub e orari. Questa mappa dovrebbe avere le stesse chiavi (meno l'hub di origine, senza ora di arrivo).

departure_times

map<string, DateTime>

Solo output. Mappa tra ID hub e orari. Questa mappa dovrebbe avere le stesse chiavi (meno l'hub di destinazione, senza orario di partenza).

GetHubRequest

Il messaggio di richiesta per il metodo GetHub.

Campi
name

string

Obbligatoria. Il nome dell'hub da recuperare. Formato: "networks/{network}/hubs/{hub}"

GetLineRequest

Il messaggio di richiesta per il metodo GetLine.

Campi
name

string

Obbligatoria. Il nome della rete da recuperare. Formato: "networks/{network}/lines/{line}"

GetLineRotationRequest

Il messaggio di richiesta per il metodo GetLineRotation.

Campi
name

string

Obbligatoria. Il nome della rotazione di linea da recuperare. Formato: "networks/{network}/lines/{line}/rotations/{rotation}"

GetNetworkRequest

Il messaggio di richiesta per il metodo GetNetwork.

Campi
name

string

Obbligatoria. Il nome della rete da recuperare. Formato: "networks/{network}"

GetShipmentRequest

Il messaggio di richiesta per il metodo GetShipment.

Campi
name

string

Obbligatoria. Il nome della spedizione da recuperare. Formato: "networks/{network}/shipments/{shipment}"

GetVehicleRequest

Il messaggio di richiesta per il metodo GetVehicle.

Campi
name

string

Obbligatoria. Il nome del veicolo da recuperare. Formato: "networks/{network}/vehicles/{vehicle}"

Hub

Le spedizioni devono essere portate da un hub a un altro.

Campi
name

string

Obbligatoria. Identificatore. Impossibile aggiornare.

position

LatLng

Campo facoltativo. La posizione per calcolare i percorsi reali.

opening_times[]

DateTimeRange

Obbligatoria. Orari di apertura. Per ora, usa una rappresentazione molto approssimativa: una voce ogni volta che si apre l'hub (se i suoi lavoratori fanno una pausa pranzo e nessuno lavora in quel momento, ci saranno due voci per quel giorno).

cross_docking_capacity

CrossDockingCapacity

Campo facoltativo. Capacità dell'hub completo.

cross_docking_time

CrossDockingTime

Campo facoltativo. Tempo per eseguire un'operazione cross-docking (per veicolo).

IntegerRange

Intervallo di numeri interi.

Campi
start_value

int32

Intervallo aperto se non impostato.

end_value

int32

Intervallo aperto se non impostato.

A linee

Una linea gestita con una determinata frequenza.

Campi
name

string

Obbligatoria. Identificatore. Impossibile aggiornare.

hub_ids[]

string

Obbligatoria. Elenco degli hub da questa linea, nell'ordine di arrivo dei veicoli.

LineRotation

Un veicolo inizia a utilizzare questa linea in un orario specifico.

Campi
name

string

Obbligatoria. Identificatore. Impossibile aggiornare.

arrival_times

map<string, DateTimeRange>

Campo facoltativo. Intervallo in cui la partenza è consentita senza costi (in caso contrario, gli orari di arrivo effettivi vengono stabiliti dal sistema). Questa mappa dovrebbe avere le stesse chiavi (meno l'hub di origine, senza ora di arrivo).

departure_times

map<string, DateTimeRange>

Campo facoltativo. Intervallo in cui l'arrivo è consentito senza costi (ovvero, se non è puntuale, gli orari di partenza effettivi vengono stabiliti dal sistema). Questa mappa dovrebbe avere le stesse chiavi (meno l'hub di destinazione, senza orario di partenza).

departure_earliness_tardiness_costs

map<string, EarlinessTardiness>

Campo facoltativo. Costi di anticipo/tardiness e limiti per la partenza. Questa mappa deve avere le stesse chiavi (meno l'hub di destinazione, senza orario di partenza).

arrival_earliness_tardiness_costs

map<string, EarlinessTardiness>

Campo facoltativo. Costi di anticipo/tardiness e limiti per l'arrivo. Questa mappa deve avere le stesse chiavi (meno l'hub di origine, senza ora di arrivo).

vehicles[]

string

Campo facoltativo. Elenco dei veicoli che potrebbero effettuare questa rotazione di linea (ad es. lista consentita). Se il valore di "numero_veicoli" si riduce a un valore corrispondente al numero di veicoli, tutti questi veicoli verranno assegnati alla rotazione delle linee. Se non ci sono veicoli, vengono considerati disponibili tutti.

fixed_price

PricingStrategy

Campo facoltativo. Costo di gestire qualsiasi veicolo per questa linea, indipendentemente dal veicolo (autista, manutenzione ecc.).

maximum_number_vehicles

IntegerRange

Campo facoltativo. Numero massimo di veicoli che può essere assegnato a questa rotazione. Se il criterio non viene configurato: nessun limite in termini di veicoli per questa rotazione. In caso contrario, il limite superiore al numero di veicoli che possono essere assegnati a questa rotazione (tra la lista consentita vehicle_ids). In particolare, un valore pari a 0 disattiva questa rotazione (nessun veicolo consentito).

ListHubsRequest

Il messaggio di richiesta per il metodo ListHubs.

Campi
parent

string

Obbligatoria. L'elemento principale, proprietario di questa raccolta di hub. Formato: "networks/{network}"

page_size

int32

Campo facoltativo. Il numero massimo di hub da restituire. Il servizio potrebbe restituire un valore inferiore a questo valore. Se non specificati, verranno restituiti al massimo 50 hub. Il valore massimo è 1000; i valori superiori a 1000 verranno forzati a 1000.

page_token

string

Campo facoltativo. Un token di pagina, ricevuto da una precedente chiamata a ListHubs. Forniscilo per recuperare la pagina successiva.

Durante l'impaginazione, tutti gli altri parametri forniti a ListHubs devono corrispondere alla chiamata che ha fornito il token della pagina.

ListHubsResponse

Il messaggio di risposta per il metodo ListHubs.

Campi
hubs[]

Hub

Gli hub della rete specificata.

next_page_token

string

Un token, che può essere inviato come page_token per recuperare la pagina successiva. Se questo campo viene omesso, non verranno visualizzate altre pagine.

ListLineRotationsRequest

Il messaggio di richiesta per il metodo ListLineRotations.

Campi
parent

string

Obbligatoria. L'elemento principale, proprietario di questa raccolta di rotazioni di linee. Formato: "networks/{network}/lines/{line}"

page_size

int32

Campo facoltativo. Il numero massimo di rotazioni di linee da restituire. Il servizio potrebbe restituire un valore inferiore a questo valore. Se non specificato, verranno restituite al massimo 50 Rotazioni di linea. Il valore massimo è 1000; i valori superiori a 1000 verranno forzati a 1000.

page_token

string

Campo facoltativo. Un token di pagina, ricevuto da una precedente chiamata a ListLineRotations. Forniscilo per recuperare la pagina successiva.

Durante l'impaginazione, tutti gli altri parametri forniti a ListLineRotations devono corrispondere alla chiamata che ha fornito il token della pagina.

ListLineRotationsResponse

Il messaggio di risposta per il metodo ListLineRotations.

Campi
line_rotations[]

LineRotation

La linea rota dalla rete e dalla linea specificate.

next_page_token

string

Un token, che può essere inviato come page_token per recuperare la pagina successiva. Se questo campo viene omesso, non verranno visualizzate altre pagine.

ListLinesRequest

Il messaggio di richiesta per il metodo ListLines.

Campi
parent

string

Obbligatoria. L'elemento principale, proprietario di questa raccolta di righe. Formato: "networks/{network}"

page_size

int32

Campo facoltativo. Il numero massimo di righe da restituire. Il servizio potrebbe restituire un valore inferiore a questo valore. Se non specificato, verranno restituite al massimo 50 righe. Il valore massimo è 1000; i valori superiori a 1000 verranno forzati a 1000.

page_token

string

Campo facoltativo. Un token di pagina, ricevuto da una precedente chiamata a ListLines. Forniscilo per recuperare la pagina successiva.

Durante l'impaginazione, tutti gli altri parametri forniti a ListLines devono corrispondere alla chiamata che ha fornito il token della pagina.

ListLinesResponse

Il messaggio di risposta per il metodo ListLines.

Campi
lines[]

Line

Le linee della rete specificata.

next_page_token

string

Un token, che può essere inviato come page_token per recuperare la pagina successiva. Se questo campo viene omesso, non verranno visualizzate altre pagine.

ListNetworksRequest

Il messaggio di richiesta per il metodo ListNetworks.

Campi
page_size

int32

Campo facoltativo. Il numero massimo di reti da restituire. Il servizio potrebbe restituire un valore inferiore a questo valore. Se non specificato, verranno restituite al massimo 50 reti. Il valore massimo è 1000; i valori superiori a 1000 verranno forzati a 1000.

page_token

string

Campo facoltativo. Un token di pagina, ricevuto da una precedente chiamata a ListNetworks. Forniscilo per recuperare la pagina successiva.

Durante l'impaginazione, tutti gli altri parametri forniti a ListNetworks devono corrispondere alla chiamata che ha fornito il token della pagina.

ListNetworksResponse

Il messaggio di risposta per il metodo ListNetworks.

Campi
networks[]

Network

L'elenco delle reti.

next_page_token

string

Un token, che può essere inviato come page_token per recuperare la pagina successiva. Se questo campo viene omesso, non verranno visualizzate altre pagine.

ListPathsRequest

Il messaggio di richiesta per il metodo ListPaths.

Campi
parent

string

Obbligatoria. Il nome della rete per la quale devono essere inviati i percorsi. Formato: "networks/{network}"

page_size

int32

Campo facoltativo. Il numero massimo di reti da restituire. Il servizio potrebbe restituire un valore inferiore a questo valore. Se non specificato, verranno restituite al massimo 50 reti. Il valore massimo è 1000; i valori superiori a 1000 verranno forzati a 1000.

page_token

string

Campo facoltativo. Un token di pagina, ricevuto da una precedente chiamata a ListNetworks. Forniscilo per recuperare la pagina successiva.

Durante l'impaginazione, tutti gli altri parametri forniti a ListNetworks devono corrispondere alla chiamata che ha fornito il token della pagina.

ListPathsResponse

Il messaggio di risposta per il metodo ListPaths.

Campi
paths[]

Path

L'elenco dei percorsi.

next_page_token

string

Un token, che può essere inviato come page_token per recuperare la pagina successiva. Se questo campo viene omesso, non verranno visualizzate altre pagine.

ListShipmentsRequest

Il messaggio di richiesta per il metodo ListShipments.

Campi
parent

string

Obbligatoria. L'inserzionista principale, proprietario di questa raccolta di spedizioni. Formato: "networks/{network}"

page_size

int32

Campo facoltativo. Il numero massimo di spedizioni da restituire. Il servizio potrebbe restituire un valore inferiore a questo valore. Se non specificato, verranno restituite al massimo 50 spedizioni. Il valore massimo è 1000; i valori superiori a 1000 verranno forzati a 1000.

page_token

string

Campo facoltativo. Un token di pagina, ricevuto da una precedente chiamata a ListShipments. Forniscilo per recuperare la pagina successiva.

Durante l'impaginazione, tutti gli altri parametri forniti a ListShipments devono corrispondere alla chiamata che ha fornito il token della pagina.

ListShipmentsResponse

Il messaggio di risposta per il metodo ListShipments.

Campi
shipments[]

Shipment

Le spedizioni dalla rete specificata.

next_page_token

string

Un token, che può essere inviato come page_token per recuperare la pagina successiva. Se questo campo viene omesso, non verranno visualizzate altre pagine.

ListVehiclesRequest

Il messaggio di richiesta per il metodo ListVehicles.

Campi
parent

string

Obbligatoria. Il genitore, proprietario di questa raccolta di veicoli. Formato: "networks/{network}"

page_size

int32

Campo facoltativo. Il numero massimo di veicoli da restituire. Il servizio potrebbe restituire un valore inferiore a questo valore. Se non specificato, verranno restituiti al massimo 50 veicoli. Il valore massimo è 1000; i valori superiori a 1000 verranno forzati a 1000.

page_token

string

Campo facoltativo. Un token di pagina, ricevuto da una precedente chiamata a ListVehicles. Forniscilo per recuperare la pagina successiva.

Durante l'impaginazione, tutti gli altri parametri forniti a ListVehicles devono corrispondere alla chiamata che ha fornito il token della pagina.

ListVehiclesResponse

Il messaggio di risposta per il metodo ListVehicles.

Campi
vehicles[]

Vehicle

I veicoli della rete specificata.

next_page_token

string

Un token, che può essere inviato come page_token per recuperare la pagina successiva. Se questo campo viene omesso, non verranno visualizzate altre pagine.

MakeHubAvailableRequest

Il messaggio di richiesta per il metodo MakeHubAvailable.

Campi
name

string

Obbligatoria. Il nome dell'hub da rendere disponibile. Formato: "networks/{network}/hubs/{hub}"

availability_starts[]

DateTime

Obbligatoria. I periodi in cui inizierà la disponibilità. Devono essere momenti futuri. Se questo campo non è presente, la disponibilità inizia quando viene ricevuto il messaggio.

MakeHubAvailableResponse

Il messaggio di risposta per il metodo MakeHubAvailable.

Campi
name

string

Il nome dell'hub di cui è stata aggiornata l'indisponibilità. Formato: "networks/{network}/hubs/{hub}"

path[]

Path

I percorsi che sono stati aggiornati.

MakeHubUnavailableRequest

Il messaggio di richiesta per il metodo MakeHubUnavailable.

Campi
name

string

Obbligatoria. Il nome dell'hub da rendere non disponibile. Formato: "networks/{network}/hubs/{hub}"

unavailability_starts[]

DateTime

Obbligatoria. I periodi in cui inizierà l'indisponibilità. Devono essere momenti futuri. Se questo campo non è presente, l'indisponibilità inizia quando viene ricevuto il messaggio.

MakeHubUnavailableResponse

Il messaggio di risposta per il metodo MakeHubUnavailable.

Campi
name

string

Il nome dell'hub di cui è stata aggiornata l'indisponibilità. Formato: "networks/{network}/hubs/{hub}"

path[]

Path

I percorsi che sono stati aggiornati.

MakeLineAvailableRequest

Il messaggio di richiesta per il metodo MakeHubAvailable.

Campi
name

string

Obbligatoria. Il nome della riga da rendere disponibile. Formato: "networks/{network}/lines/{line}"

availability_starts[]

DateTime

Obbligatoria. I periodi in cui inizierà la disponibilità. Devono essere momenti futuri. Se questo campo non è presente, la disponibilità inizia quando viene ricevuto il messaggio.

MakeLineAvailableResponse

Il messaggio di risposta per il metodo MakeLineAvailable.

Campi
name

string

Il nome della riga di cui è stata aggiornata l'indisponibilità. Formato: "networks/{network}/lines/{line}"

path[]

Path

I percorsi che sono stati aggiornati.

MakeLineUnavailableRequest

Il messaggio di richiesta per il metodo MakeLineUnavailable.

Campi
name

string

Obbligatoria. Il nome della riga da rendere non disponibile. Formato: "networks/{network}/lines/{line}"

unavailability_starts[]

DateTime

Obbligatoria. I periodi in cui inizierà l'indisponibilità. Devono essere momenti futuri. Se questo campo non è presente, l'indisponibilità inizia quando viene ricevuto il messaggio.

MakeLineUnavailableResponse

Il messaggio di risposta per il metodo MakeLineUnavailable.

Campi
name

string

Il nome della riga di cui è stata aggiornata l'indisponibilità. Formato: "networks/{network}/lines/{line}"

path[]

Path

I percorsi che sono stati aggiornati.

MakeVehicleAvailableRequest

Il messaggio di richiesta per il metodo MakeVehicleAvailable.

Campi
name

string

Obbligatoria. Il nome del veicolo da rendere disponibile. Formato: "networks/{network}/vehicle/{vehicle}"

availability_starts[]

DateTime

Obbligatoria. I periodi in cui inizierà la disponibilità. Devono essere momenti futuri. Se questo campo non è presente, la disponibilità inizia quando viene ricevuto il messaggio.

MakeVehicleAvailableResponse

Il messaggio di risposta per il metodo MakeVehicleAvailable.

Campi
name

string

Il nome del veicolo di cui è stata aggiornata la disponibilità. Formato: "networks/{network}/vehicles/{vehicle}"

path[]

Path

I percorsi che sono stati aggiornati.

MakeVehicleUnavailableRequest

Il messaggio di richiesta per il metodo MakeVehicleUnavailable.

Campi
name

string

Obbligatoria. Il nome del veicolo da rendere non disponibile. Formato: "networks/{network}/vehicles/{vehicle}"

unavailability_starts[]

DateTime

Obbligatoria. I periodi in cui inizierà l'indisponibilità. Devono essere momenti futuri. Se questo campo non è presente, l'indisponibilità inizia quando viene ricevuto il messaggio.

MakeVehicleUnavailableResponse

Il messaggio di risposta per il metodo MakeVehicleUnavailable.

Campi
name

string

Il nome del veicolo di cui è stata aggiornata l'indisponibilità. Formato: "networks/{network}/vehicles/{vehicle}"

path[]

Path

I percorsi che sono stati aggiornati.

Rete

Descrive l'intera rete esistente che può essere utilizzata. Un determinato cliente API potrebbe avere diverse reti (ad es. la rete principale e una possibile modifica futura da valutare).

Campi
name

string

Obbligatoria. Identificatore. Impossibile aggiornare.

dimensions[]

ValueDimension

Distanza, peso, pallet e così via, più il ridimensionamento (per mappare i numeri in virgola mobile a numeri interi).

pricing

PricingStrategy

Campo facoltativo. Prezzo che deve essere pagato dal mittente per la spedizione di una spedizione che non richiede una linea dedicata.

currency_code

string

Campo facoltativo. Unità monetaria unica utilizzata in tutta la rete. Un determinato cliente API può avere diverse unità diverse per reti diverse; una rete può avere una sola unità monetaria. L'unità deve essere codificata in formato ISO 4217, ad esempio google3/google/type/money.proto.

time_step

Duration

Campo facoltativo. Scretizzazione temporale. Le decisioni vengono elaborate con questa precisione nel tempo. Internamente, lo stato viene mantenuto con questa precisione.

distance_matrix[]

DistanceMatrixEntry

Campo facoltativo. Matrice delle distanze (rappresentata da un elenco di bordi diretti ponderati).

Percorso

Percorso di una spedizione all'interno della rete.

Campi
shipment

string

Obbligatoria. Spedizione il cui percorso è descritto.

segments[]

AnnotatedPathSegment

Obbligatoria. Segmenti del percorso.

departure_time

DateTime

Solo output. Orario di partenza effettivo della spedizione.

arrival_time

DateTime

Solo output. Ora di arrivo effettiva della spedizione.

incurred_penalties

double

Solo output. Le rigori dovute a vincoli morbidi non vengono rispettate.

cost_constant

double

Solo output. Costo costante per questa spedizione.

cost

map<string, double>

Solo output. Costo per componenti.

PathSegment

Rappresenta una parte di un percorso, inviata dal cliente API al server API (ad es. modifica di stato) o dal server API al cliente API (ad es. smistamento di una spedizione).

Campi
source_hub

string

Obbligatoria. Origine del segmento.

destination_hub

string

Obbligatoria. Destinazione del segmento.

line

string

Obbligatoria. Linea seguita per questo segmento.

line_rotation

string

Obbligatoria. Rotazione seguita per questo segmento.

vehicle

string

Obbligatoria. Veicolo seguito da questo tratto.

PieceWiseAffineFunction

Funzione lineare a tratti, limitata a un argomento. Un design simile a https://github.com/google/or-tools/blob/stable/ortools/util/piecewise_linear_function.h

Campi
segments[]

PieceWiseAffineSegment

Segmenti lineari della funzione.

PieceWiseAffineSegment

Un segmento di una funzione lineare a tratti.

Campi
start_x

double

Inizio del segmento: x.

start_y

double

Inizio del segmento: y.

end_x

double

Fine del segmento: x.

end_y

double

Fine del segmento: y.

PricingStrategy

Una strategia di determinazione dei prezzi.

Campi
Campo unione pricing_strategy. Una strategia di determinazione dei prezzi. pricing_strategy può essere solo uno dei seguenti:
separable

SeparableNDFunction

La strategia di determinazione dei prezzi è una funzione separabile di più variabili.

RouteShipmentRequest

Il messaggio di richiesta per il metodo RouteShipment.

Campi
parent

string

Obbligatoria. L'elemento principale, ovvero la rete entro la quale deve essere instradata la spedizione. Formato: "networks/{network}"

shipment

Shipment

Obbligatoria. La spedizione da indirizzare.

RouteShipmentResponse

Il messaggio di risposta per il metodo RouteShipment.

Campi
shipment

Shipment

La spedizione appena creata.

paths[]

Path

I percorsi che sono stati modificati a causa del routing della spedizione. Questo campo include almeno una voce, ovvero il percorso della spedizione che ha dovuto essere instradata. Potrebbe contenere più percorsi per altre spedizioni, in base alle modifiche interne allo stato.

lines[]

GeneratedLineAndRotation

Le rotazioni di linee create durante l'instradamento della spedizione. Potrebbe essere vuoto o contenere rotazioni per altre spedizioni, per riflettere i cambiamenti di stato interni.

SeparableNDFunction

Funzione di N argomenti espressa come somma di funzioni di un argomento.

Campi
components

map<string, Function1D>

Componenti della funzione, con una voce per argomento/dimensione.

constant_price

double

Parte costante della funzione.

Spedizione

Spedizione prevista.

Campi
name

string

Obbligatoria. Identificatore. Impossibile aggiornare.

source_hub

string

Obbligatoria. Hub in cui viene resa disponibile la spedizione.

destination_hub

string

Obbligatoria. Hub a cui deve essere consegnata la spedizione.

departure_time

DateTime

Obbligatoria. Ora di partenza.

arrival_time

DateTimeRange

Obbligatoria. Ora di arrivo prevista (ad es. vincolo soft).

arrival_earliness_tardiness_cost

EarlinessTardiness

Campo facoltativo. Gli SLA indicano che questo tempo può essere superato con alcune penali. Se è successiva al limite massimo, il pacchetto non è più utile. La penalità è data da una funzione del ritardo (in minuti).

size[]

ValueDimension

Campo facoltativo. Utilizzato con la capacità del veicolo e del hub.

revenue

double

Campo facoltativo. Entrate derivanti da questo pacchetto (utilizzate solo per calcolare il premio), ovvero il prezzo pagato dal pagatore. Se non viene configurato, le entrate vengono calcolate dal sistema (a seconda che venga generata o meno una nuova riga per la spedizione).

UpdateHubRequest

Il messaggio di richiesta per il metodo UpdateHub.

Campi
hub

Hub

Obbligatoria. L'hub da aggiornare.

Il campo name dell'hub viene utilizzato per identificare l'hub da aggiornare. Formato: "networks/{network}/hubs/{hub}"

update_mask

FieldMask

Campo facoltativo. L'elenco dei campi da aggiornare.

UpdateLineRequest

Il messaggio di richiesta per il metodo UpdateLine.

Campi
line

Line

Obbligatoria. La riga da aggiornare.

Il campo name della riga viene utilizzato per identificare la riga da aggiornare. Formato: "networks/{network}/lines/{line}"

update_mask

FieldMask

Campo facoltativo. L'elenco dei campi da aggiornare.

UpdateLineRotationRequest

Il messaggio di richiesta per il metodo UpdateLineRotation.

Campi
line_rotation

LineRotation

Obbligatoria. La rete da aggiornare.

Il campo name della rotazione viene utilizzato per identificare la rotazione da aggiornare. Formato: "networks/{network}/lines/{line}/rotations/{rotation}"

update_mask

FieldMask

Campo facoltativo. L'elenco dei campi da aggiornare.

UpdateNetworkRequest

Il messaggio di richiesta per il metodo UpdateNetwork.

Campi
network

Network

Obbligatoria. La rete da aggiornare.

Il campo name della rete viene utilizzato per identificare la rete da aggiornare. Formato: "networks/{network}"

update_mask

FieldMask

Campo facoltativo. L'elenco dei campi da aggiornare.

UpdatePathRequest

Il messaggio di richiesta per il metodo UpdatePath.

Campi
path

Path

Obbligatoria. Il nuovo percorso per la spedizione.

UpdateVehicleRequest

Il messaggio di richiesta per il metodo UpdateVehicle.

Campi
vehicle

Vehicle

Obbligatoria. Il veicolo da aggiornare.

Il campo name del veicolo viene utilizzato per identificare il veicolo da aggiornare. Formato: "networks/{network}/vehicles/{vehicle}"

update_mask

FieldMask

Campo facoltativo. L'elenco dei campi da aggiornare.

ValueDimension

Un valore in una dimensione predefinita. Il campo value deve essere impostato sul tipo corrispondente di dimension.

Campi
value

int64

Campo facoltativo. conv.

dimension

string

Obbligatoria. Dimensione.

Veicolo

Nessun nome, viene memorizzata come chiave di mappa all'interno della rete.

Campi
name

string

Obbligatoria. Identificatore. Impossibile aggiornare.

capacities[]

ValueDimension

Campo facoltativo. Caratteristiche del veicolo.

cost

PricingStrategy

Obbligatoria. Costo di utilizzo del veicolo. Queste sono funzioni di un argomento: la distanza percorsa dal veicolo, il peso che quest'ultimo trasporta, il numero di pallet trasportati. Queste funzioni tengono conto dei costi di manutenzione, carburante e gestione. che possono includere un pagamento anticipato (pagato in seguito all'utilizzo del veicolo, utile soprattutto per la subappalto).

pricing

PricingStrategy

Campo facoltativo. Prezzo che deve essere pagato dalla parte pagante, solo se il veicolo viene utilizzato in una riga generata (ovvero non fa parte della rete di input).

allowed_for_generated_lines

bool

Obbligatoria. Indica se questo veicolo può essere utilizzato per le linee generate. Se impostato su false, il veicolo sarà limitato a linee predefinite dove è consentito.

vehicle_position_constraints[]

VehiclePositionConstraint

Campo facoltativo. Posizioni forzate per il veicolo corrente, insieme agli orari. Ad esempio, utilizza le voci per modellare il fatto che un veicolo che inizia o finisce in un determinato hub.

VehiclePositionConstraint

Vincolo alla posizione di un veicolo.

Campi
time

DateTime

Ora del vincolo.

hub_id

string

Hub del vincolo.