Package google.research.middlemileoptimization.v1

Índice

MiddleMileOptimization

Serviço para gerenciar uma rede logística e rotear remessas dentro dela. Esse protocolo não tem estado, porque as mensagens são independentes. No entanto, o serviço por trás dele é altamente com estado. Receber uma mensagem pode alterar drasticamente as respostas de muitos métodos, como rotear uma remessa pode alterar o roteamento de outras remessas.

CommitPath

rpc CommitPath(CommitPathRequest) returns (Path)

Confirma o caminho de uma remessa, indicando que não pode ser alterado no futuro, mesmo pelo usuário, salvar para força maior/ato de Deus indicado pelos métodos MakeVehicleUnavailable, MakeHubUnavailable, MakeLineUnavailable. Esse método não é usado para marcar uma revisão específica de um caminho.

CreateHub

rpc CreateHub(CreateHubRequest) returns (Hub)

Cria um Hub.

CreateLine

rpc CreateLine(CreateLineRequest) returns (Line)

Cria uma linha.

CreateLineRotation

rpc CreateLineRotation(CreateLineRotationRequest) returns (LineRotation)

Cria uma linha de rotação.

CreateNetwork

rpc CreateNetwork(CreateNetworkRequest) returns (Network)

Cria uma rede.

CreateVehicle

rpc CreateVehicle(CreateVehicleRequest) returns (Vehicle)

Cria um veículo.

DeleteHub

rpc DeleteHub(DeleteHubRequest) returns (Empty)

Exclui um Hub.

DeleteLine

rpc DeleteLine(DeleteLineRequest) returns (Empty)

Exclui uma linha.

DeleteLineRotation

rpc DeleteLineRotation(DeleteLineRotationRequest) returns (Empty)

Exclui uma LineRotação.

DeleteNetwork

rpc DeleteNetwork(DeleteNetworkRequest) returns (Empty)

Exclui uma rede.

DeleteShipment

rpc DeleteShipment(DeleteShipmentRequest) returns (Empty)

Exclui uma remessa.

DeleteVehicle

rpc DeleteVehicle(DeleteVehicleRequest) returns (Empty)

Exclui um Veículo.

GetHub

rpc GetHub(GetHubRequest) returns (Hub)

Recebe os detalhes de um Hub.

GetLine

rpc GetLine(GetLineRequest) returns (Line)

Extrai os detalhes de uma linha.

GetLineRotation

rpc GetLineRotation(GetLineRotationRequest) returns (LineRotation)

Extrai os detalhes de uma LineRotação.

GetNetwork

rpc GetNetwork(GetNetworkRequest) returns (Network)

Extrai os detalhes de uma rede.

GetShipment

rpc GetShipment(GetShipmentRequest) returns (Shipment)

Recebe os detalhes de uma remessa.

GetVehicle

rpc GetVehicle(GetVehicleRequest) returns (Vehicle)

Extrai os detalhes de um Veículo.

ListHubs

rpc ListHubs(ListHubsRequest) returns (ListHubsResponse)

Lista os hubs.

ListLineRotations

rpc ListLineRotations(ListLineRotationsRequest) returns (ListLineRotationsResponse)

Lista as Rotações de linha.

ListLines

rpc ListLines(ListLinesRequest) returns (ListLinesResponse)

Lista as linhas.

ListNetworks

rpc ListNetworks(ListNetworksRequest) returns (ListNetworksResponse)

Lista a rede.

ListPaths

rpc ListPaths(ListPathsRequest) returns (ListPathsResponse)

Retorna todos os caminhos que estão disponíveis no momento. Esse método é idempotente e não tem efeito colateral.

ListShipments

rpc ListShipments(ListShipmentsRequest) returns (ListShipmentsResponse)

Lista as remessas.

ListVehicles

rpc ListVehicles(ListVehiclesRequest) returns (ListVehiclesResponse)

Lista os veículos.

MakeHubAvailable

rpc MakeHubAvailable(MakeHubAvailableRequest) returns (MakeHubAvailableResponse)

Disponibiliza um hub.

MakeHubUnavailable

rpc MakeHubUnavailable(MakeHubUnavailableRequest) returns (MakeHubUnavailableResponse)

Torna um hub indisponível.

MakeLineAvailable

rpc MakeLineAvailable(MakeLineAvailableRequest) returns (MakeLineAvailableResponse)

Disponibiliza uma linha.

MakeLineUnavailable

rpc MakeLineUnavailable(MakeLineUnavailableRequest) returns (MakeLineUnavailableResponse)

Torna uma linha indisponível.

MakeVehicleAvailable

rpc MakeVehicleAvailable(MakeVehicleAvailableRequest) returns (MakeVehicleAvailableResponse)

Disponibiliza um veículo.

MakeVehicleUnavailable

rpc MakeVehicleUnavailable(MakeVehicleUnavailableRequest) returns (MakeVehicleUnavailableResponse)

Torna um veículo indisponível.

RouteShipment

rpc RouteShipment(RouteShipmentRequest) returns (RouteShipmentResponse)

Encaminhar uma nova remessa. Semelhante à criação, essa operação implica uma mudança de estado.

UpdateHub

rpc UpdateHub(UpdateHubRequest) returns (Hub)

Atualiza um Hub.

UpdateLine

rpc UpdateLine(UpdateLineRequest) returns (Line)

Atualiza uma linha.

UpdateLineRotation

rpc UpdateLineRotation(UpdateLineRotationRequest) returns (LineRotation)

Atualiza uma LineRotação.

UpdateNetwork

rpc UpdateNetwork(UpdateNetworkRequest) returns (Network)

Atualiza uma rede.

UpdatePath

rpc UpdatePath(UpdatePathRequest) returns (Path)

Muda o caminho de uma remessa: em vez de usar o serviço calculado pelo serviço, o estado vai conter o que foi definido pelo usuário na chamada.

UpdateVehicle

rpc UpdateVehicle(UpdateVehicleRequest) returns (Vehicle)

Atualiza um veículo.

AnnotatedPathSegment

Representa uma parte de um caminho com informações mais redundantes que podem ser computadas com base no PathSegment contido e na rede. Essas mensagens costumam ser retornadas pelo servidor da API.

Campos
segment

PathSegment

Obrigatório. Segmento que está sendo anotado.

arrival_time

DateTime

Apenas saída. Hora de chegada deste trecho.

departure_time

DateTime

Apenas saída. Hora de partida deste trecho.

is_committed

bool

Apenas saída. Se o cliente da API decidiu comprometer essa parte do caminho.

segment_cost_constant

double

Apenas saída. Custo constante para este segmento.

segment_cost_due_to_vehicle

map<string, double>

Apenas saída. Uma entrada por dimensão.

segment_cost_due_to_departure

double

Apenas saída. Custo devido à rotação da linha: partida.

segment_cost_due_to_arrival

double

Apenas saída. Custo devido à rotação da linha: chegada.

CommitPathRequest

A mensagem de solicitação para o método CommitPath.

Campos
name

string

Obrigatório. O nome da remessa cujo caminho precisa ser confirmado. Formato: "networks/{network}/shipments/{shipment}"

Campo de união path_to_commit. Um ou mais caminhos que serão confirmados. path_to_commit só pode ser de um dos seguintes tipos:
complete_shipment_path

PathToCommit

Os segmentos de um caminho de uma origem até um destino.

segments

IncompletePathToCommit

Um subconjunto dos segmentos de um caminho de uma origem até um destino.

IncompletePathToCommit

Parte do caminho que está sendo confirmado, ou seja, alguns segmentos entre a origem e o destino.

Campos
segments[]

PathSegment

Obrigatório. Um subconjunto dos segmentos de um caminho de uma origem até um destino.

PathToCommit

Caminho completo sendo confirmado, da origem ao destino.

Campos
segments[]

PathSegment

Obrigatório. Os segmentos precisam estar em ordem, de uma origem para um destino.

CreateHubRequest

A mensagem de solicitação para o método CreateHub.

Campos
parent

string

Obrigatório. O recurso pai em que este hub será criado. Formato: "networks/{network}"

hub_id

string

Obrigatório. Identificador do hub a ser criado.

hub

Hub

Obrigatório. O hub a ser criado.

CreateLineRequest

A mensagem de solicitação para o método CreateLine.

Campos
parent

string

Obrigatório. O recurso pai em que esta linha será criada. Formato: "networks/{network}"

line_id

string

Obrigatório. Identificador da linha a ser criada.

line

Line

Obrigatório. A linha a ser criada.

CreateLineRotationRequest

A mensagem de solicitação para o método CreateLineRotation.

Campos
parent

string

Obrigatório. O recurso pai em que essa rotação de linha será criada. Formato: "networks/{network}/lines/{line}"

line_rotation_id

string

Obrigatório. Identificador da rotação de linha a ser criada.

line_rotation

LineRotation

Obrigatório. A rotação de linha a ser criada.

CreateNetworkRequest

A mensagem de solicitação para o método CreateNetwork.

Campos
network_id

string

Obrigatório. Identificador da rede a ser criada.

network

Network

Obrigatório. A rede a ser criada.

CreateVehicleRequest

A mensagem de solicitação para o método CreateVehicle.

Campos
parent

string

Obrigatório. O recurso pai em que este veículo será criado. Formato: "networks/{network}"

vehicle_id

string

Obrigatório. Identificador do veículo a ser criado.

vehicle

Vehicle

Obrigatório. O veículo a ser criado.

CrossDockingCapacity

Capacidade geral de cross-docking para um hub.

Campos
capacity_per_hour[]

ValueDimension

Opcional. Capacidade de cross-docking para cada dimensão.

CrossDockingTime

Tempo geral de cross-docking para um hub.

Campos
time_constant

Duration

Opcional. Tempo constante para uma operação de docking.

time

SeparableNDFunction

Opcional. A separação é uma suposição simplificada.

DateTimeRange

Intervalo de horários entre dois DateTime. Para uma data e hora pontual, use start == end.

google/type/interval.proto serve a uma finalidade semelhante, mas com tempo físico (nos preocupamos apenas com o tempo civil).

Campos
first_date

DateTime

Início do intervalo.

last_date

DateTime

Fim do intervalo

DeleteHubRequest

A mensagem de solicitação para o método DeleteHub.

Campos
name

string

Obrigatório. O nome do hub a ser excluído. Formato: "networks/{network}/hubs/{hub}"

DeleteLineRequest

A mensagem de solicitação para o método DeleteLine.

Campos
name

string

Obrigatório. O nome da linha a ser excluída. Formato: "networks/{network}/lines/{line}"

force

bool

Opcional. Se definido como verdadeiro, exclua os recursos filhos.

DeleteLineRotationRequest

A mensagem de solicitação para o método DeleteLineRotation.

Campos
name

string

Obrigatório. O nome da rotação da linha a ser excluída. Formato: "networks/{network}/lines/{line}/rotations/{rotation}"

DeleteNetworkRequest

A mensagem de solicitação para o método DeleteNetwork.

Campos
name

string

Obrigatório. O nome da rede que será excluída. Formato: "networks/{network}"

force

bool

Opcional. Se definido como verdadeiro, exclua os recursos filhos.

DeleteShipmentRequest

A mensagem de solicitação para o método DeleteShipment.

Campos
name

string

Obrigatório. O nome da remessa a ser excluída. Formato: "networks/{network}/shipments/{shipment}"

DeleteVehicleRequest

A mensagem de solicitação para o método DeleteVehicle.

Campos
name

string

Obrigatório. O nome do veículo a ser excluído. Formato: "networks/{network}/vehicles/{vehicle}"

DistanceMatrixEntry

Distância entre um hub de origem e um hub de destino.

Campos
source_hub

string

Obrigatório. Hub de origem.

destination_hub

string

Obrigatório. Hub de destino.

weights[]

ValueDimension

Obrigatório. Distância entre os hubs, medida em várias dimensões.

EarlinessTardiness

funções de custo devido à chegada/partida de uma remessa antes ou depois do necessário (restrições flexíveis).

Campos
maximum_earliness

Duration

Opcional. Antecipação máxima permitida. Útil apenas com custos.

maximum_tardiness

Duration

Opcional. Atraso máximo permitido. Útil apenas com custos.

earliness_cost

Function1D

Opcional. Custo da antecipação. Não definido se não houver custo para antecipação.

tardiness_cost

Function1D

Opcional. Custo do atraso. Não definido se não houver custo por atraso.

Função 1D

Função de um argumento.

Campos
Campo de união function. A unidade do argumento da função deve ser: - se um peso: kg - se um tempo: min - se um número de paletes: 1 function pode ser apenas um dos seguintes:
constant

double

A função é uma constante.

pwl

PieceWiseAffineFunction

A função é linear em trechos.

GeneratedLineAndRotation

Uma rotação de uma linha gerada por esta API, e não pelo cliente da API. Ela é inerentemente menos restrita e pode usar qualquer veículo (a menos que o cliente da API decida o contrário nas chamadas subsequentes).

Campos
arrival_times

map<string, DateTime>

Apenas saída. Mapear entre IDs e horários de hub. Este mapa deve ter as mesmas chaves (menos o hub de origem, sem horário de chegada).

departure_times

map<string, DateTime>

Apenas saída. Mapear entre IDs e horários de hub. Este mapa deve ter as mesmas chaves (menos o hub de destino, sem horário de partida).

GetHubRequest

A mensagem de solicitação para o método GetHub.

Campos
name

string

Obrigatório. O nome do hub a ser recuperado. Formato: "networks/{network}/hubs/{hub}"

GetLineRequest

A mensagem de solicitação para o método GetLine.

Campos
name

string

Obrigatório. O nome da rede a ser recuperada. Formato: "networks/{network}/lines/{line}"

GetLineRotationRequest

A mensagem de solicitação para o método GetLineRotation.

Campos
name

string

Obrigatório. O nome da rotação de linha a ser recuperada. Formato: "networks/{network}/lines/{line}/rotations/{rotation}"

GetNetworkRequest

A mensagem de solicitação para o método GetNetwork.

Campos
name

string

Obrigatório. O nome da rede a ser recuperada. Formato: "networks/{network}"

GetShipmentRequest

A mensagem de solicitação para o método GetShipment.

Campos
name

string

Obrigatório. O nome da remessa a ser recuperada. Formato: "networks/{network}/shipments/{shipment}"

GetVehicleRequest

A mensagem de solicitação para o método GetVehicle.

Campos
name

string

Obrigatório. O nome do veículo a ser recuperado. Formato: "networks/{network}/vehicles/{vehicle}"

Hub

As remessas precisam ser trazidas de um hub para outro.

Campos
name

string

Obrigatório. Identificador. Não foi possível atualizar.

position

LatLng

Opcional. Posição para calcular caminhos reais.

opening_times[]

DateTimeRange

Obrigatório. Horário de funcionamento. Por enquanto, use uma representação aproximada: uma entrada toda vez que o hub for aberto. Se os workers tiverem um intervalo para o almoço e ninguém trabalhar nesse horário, haverá duas entradas para esse dia.

cross_docking_capacity

CrossDockingCapacity

Opcional. Capacidade do hub completo.

cross_docking_time

CrossDockingTime

Opcional. Tempo para realizar uma operação de docks (por veículo).

IntegerRange

Intervalo de números inteiros.

Campos
start_value

int32

Intervalo aberto se não for definido.

end_value

int32

Intervalo aberto se não for definido.

Linha

Uma linha que está sendo operada em uma determinada frequência.

Campos
name

string

Obrigatório. Identificador. Não foi possível atualizar.

hub_ids[]

string

Obrigatório. Lista de hubs chamados por esta linha, na ordem em que os veículos param neles.

LineRotation

Um veículo começa a operar essa linha em um horário específico.

Campos
name

string

Obrigatório. Identificador. Não foi possível atualizar.

arrival_times

map<string, DateTimeRange>

Opcional. Intervalo em que a partida é permitida sem custo (ou seja, se não for relevante, os horários de chegada reais são decididos pelo sistema). Este mapa deve ter as mesmas chaves (menos o hub de origem, sem horário de chegada).

departure_times

map<string, DateTimeRange>

Opcional. Intervalo em que a chegada é permitida sem custos (ou seja, se não for apontada, os horários de partida reais são decididos pelo sistema). Este mapa deve ter as mesmas chaves (menos o hub de destino, sem horário de partida).

departure_earliness_tardiness_costs

map<string, EarlinessTardiness>

Opcional. Custos de atraso/atraso e limites de partida. Esses mapas devem ter as mesmas chaves, menos o hub de destino, sem horário de partida.

arrival_earliness_tardiness_costs

map<string, EarlinessTardiness>

Opcional. Custos de atraso/atraso e limites para chegada. Esses mapas devem ter as mesmas chaves (menos o hub de origem, sem horário de chegada).

vehicles[]

string

Opcional. Lista de veículos que podem estar fazendo essa rotação de linha (ou seja, lista de permissões). Se number_vehicles for reduzido a um valor correspondente ao número de veículos, todos eles serão atribuídos à rotação da linha. Se não houver veículos, todos serão considerados disponíveis.

fixed_price

PricingStrategy

Opcional. Custo de ter qualquer veículo nessa linha, independentemente do veículo (motorista, manutenção etc.).

maximum_number_vehicles

IntegerRange

Opcional. Número máximo de veículos que podem ser atribuídos a esta rotação. Se não definido: não haverá limite de veículos para essa rotação. Caso contrário, o limite superior do número de veículos que podem ser alocados para essa rotação (entre a lista de permissões vehicle_ids). Especificamente, um valor de 0 desativa essa rotação (veículos não são permitidos).

ListHubsRequest

A mensagem de solicitação para o método ListHubs.

Campos
parent

string

Obrigatório. O pai, que é proprietário desse conjunto de hubs. Formato: "networks/{network}"

page_size

int32

Opcional. O número máximo de hubs a serem retornados. O serviço pode retornar menos que esse valor. Se não for especificado, serão retornados no máximo 50 hubs. O valor máximo é 1.000. Valores maiores serão convertidos para 1.000.

page_token

string

Opcional. Um token de página recebido de uma chamada ListHubs anterior. Forneça isso para recuperar a página subsequente.

Ao paginar, todos os outros parâmetros fornecidos para ListHubs precisam corresponder à chamada que forneceu o token da página.

ListHubsResponse

A mensagem de resposta para o método ListHubs.

Campos
hubs[]

Hub

Os hubs da rede especificada.

next_page_token

string

Um token, que pode ser enviado como page_token para recuperar a próxima página. Se esse campo for omitido, não haverá páginas subsequentes.

ListLineRotationsRequest

A mensagem de solicitação para o método ListLineRotations.

Campos
parent

string

Obrigatório. O pai, que é proprietário desse conjunto de rotações de linha. Formato: "networks/{network}/lines/{line}"

page_size

int32

Opcional. O número máximo de rotações de linha a serem retornadas. O serviço pode retornar menos que esse valor. Se não for especificado, serão retornadas no máximo 50 Line mínimoções. O valor máximo é 1.000. Valores maiores serão convertidos para 1.000.

page_token

string

Opcional. Um token de página recebido de uma chamada ListLineRotations anterior. Forneça isso para recuperar a página subsequente.

Ao paginar, todos os outros parâmetros fornecidos para ListLineRotations precisam corresponder à chamada que forneceu o token da página.

ListLineRotationsResponse

A mensagem de resposta para o método ListLineRotations.

Campos
line_rotations[]

LineRotation

As rotações da linha originadas da rede e da linha especificadas.

next_page_token

string

Um token, que pode ser enviado como page_token para recuperar a próxima página. Se esse campo for omitido, não haverá páginas subsequentes.

ListLinesRequest

A mensagem de solicitação para o método ListLines.

Campos
parent

string

Obrigatório. O pai, proprietário desse conjunto de linhas. Formato: "networks/{network}"

page_size

int32

Opcional. O número máximo de linhas a serem retornadas. O serviço pode retornar menos que esse valor. Se não for especificado, serão retornadas no máximo 50 linhas. O valor máximo é 1.000. Valores maiores serão convertidos para 1.000.

page_token

string

Opcional. Um token de página recebido de uma chamada ListLines anterior. Forneça isso para recuperar a página subsequente.

Ao paginar, todos os outros parâmetros fornecidos para ListLines precisam corresponder à chamada que forneceu o token da página.

ListLinesResponse

A mensagem de resposta para o método ListLines.

Campos
lines[]

Line

As linhas da rede especificada.

next_page_token

string

Um token, que pode ser enviado como page_token para recuperar a próxima página. Se esse campo for omitido, não haverá páginas subsequentes.

ListNetworksRequest

A mensagem de solicitação para o método ListNetworks.

Campos
page_size

int32

Opcional. O número máximo de redes a serem retornadas. O serviço pode retornar menos que esse valor. Se não for especificado, serão retornadas no máximo 50 redes. O valor máximo é 1.000. Valores maiores serão convertidos para 1.000.

page_token

string

Opcional. Um token de página recebido de uma chamada ListNetworks anterior. Forneça isso para recuperar a página subsequente.

Ao paginar, todos os outros parâmetros fornecidos para ListNetworks precisam corresponder à chamada que forneceu o token da página.

ListNetworksResponse

A mensagem de resposta para o método ListNetworks.

Campos
networks[]

Network

A lista de redes.

next_page_token

string

Um token, que pode ser enviado como page_token para recuperar a próxima página. Se esse campo for omitido, não haverá páginas subsequentes.

ListPathsRequest

A mensagem de solicitação para o método ListPaths.

Campos
parent

string

Obrigatório. O nome da rede para a qual os caminhos precisam ser enviados. Formato: "networks/{network}"

page_size

int32

Opcional. O número máximo de redes a serem retornadas. O serviço pode retornar menos que esse valor. Se não for especificado, serão retornadas no máximo 50 redes. O valor máximo é 1.000. Valores maiores serão convertidos para 1.000.

page_token

string

Opcional. Um token de página recebido de uma chamada ListNetworks anterior. Forneça isso para recuperar a página subsequente.

Ao paginar, todos os outros parâmetros fornecidos para ListNetworks precisam corresponder à chamada que forneceu o token da página.

ListPathsResponse

A mensagem de resposta para o método ListPaths.

Campos
paths[]

Path

A lista de caminhos.

next_page_token

string

Um token, que pode ser enviado como page_token para recuperar a próxima página. Se esse campo for omitido, não haverá páginas subsequentes.

ListShipmentsRequest

A mensagem de solicitação para o método ListShipments.

Campos
parent

string

Obrigatório. O pai, que é proprietário desta coleção de remessas. Formato: "networks/{network}"

page_size

int32

Opcional. O número máximo de fretes a serem devolvidos. O serviço pode retornar menos que esse valor. Se não for especificado, no máximo 50 envios serão devolvidos. O valor máximo é 1.000. Valores maiores serão convertidos para 1.000.

page_token

string

Opcional. Um token de página recebido de uma chamada ListShipments anterior. Forneça isso para recuperar a página subsequente.

Ao paginar, todos os outros parâmetros fornecidos para ListShipments precisam corresponder à chamada que forneceu o token da página.

ListShipmentsResponse

A mensagem de resposta para o método ListShipments.

Campos
shipments[]

Shipment

Os envios da rede especificada.

next_page_token

string

Um token, que pode ser enviado como page_token para recuperar a próxima página. Se esse campo for omitido, não haverá páginas subsequentes.

ListVehiclesRequest

A mensagem de solicitação para o método ListVehicles.

Campos
parent

string

Obrigatório. O pai, que é proprietário dessa coleção de veículos. Formato: "networks/{network}"

page_size

int32

Opcional. O número máximo de veículos a serem retornados. O serviço pode retornar menos que esse valor. Se não for especificado, serão retornados no máximo 50 veículos. O valor máximo é 1.000. Valores maiores serão convertidos para 1.000.

page_token

string

Opcional. Um token de página recebido de uma chamada ListVehicles anterior. Forneça isso para recuperar a página subsequente.

Ao paginar, todos os outros parâmetros fornecidos para ListVehicles precisam corresponder à chamada que forneceu o token da página.

ListVehiclesResponse

A mensagem de resposta para o método ListVehicles.

Campos
vehicles[]

Vehicle

Os veículos da rede especificada.

next_page_token

string

Um token, que pode ser enviado como page_token para recuperar a próxima página. Se esse campo for omitido, não haverá páginas subsequentes.

MakeHubAvailableRequest

A mensagem de solicitação para o método MakeHubAvailable.

Campos
name

string

Obrigatório. O nome do hub a ser disponibilizado. Formato: "networks/{network}/hubs/{hub}"

availability_starts[]

DateTime

Obrigatório. Os períodos em que a disponibilidade vai começar. Precisam ser pontos no tempo no futuro. Se esse campo estiver ausente, a disponibilidade começará quando a mensagem for recebida.

MakeHubAvailableResponse

A mensagem de resposta para o método MakeHubAvailable.

Campos
name

string

O nome do hub cuja indisponibilidade foi atualizada. Formato: "networks/{network}/hubs/{hub}"

path[]

Path

Os caminhos que foram atualizados.

MakeHubUnavailableRequest

A mensagem de solicitação para o método MakeHubUnavailable.

Campos
name

string

Obrigatório. O nome do hub a ser tornado indisponível. Formato: "networks/{network}/hubs/{hub}"

unavailability_starts[]

DateTime

Obrigatório. Os períodos em que a indisponibilidade começa. Precisam ser pontos no tempo no futuro. Se esse campo estiver ausente, a indisponibilidade começará quando a mensagem for recebida.

MakeHubUnavailableResponse

A mensagem de resposta para o método MakeHubUnavailable.

Campos
name

string

O nome do hub cuja indisponibilidade foi atualizada. Formato: "networks/{network}/hubs/{hub}"

path[]

Path

Os caminhos que foram atualizados.

MakeLineAvailableRequest

A mensagem de solicitação para o método MakeHubAvailable.

Campos
name

string

Obrigatório. O nome da linha a ser disponibilizada. Formato: "networks/{network}/lines/{line}"

availability_starts[]

DateTime

Obrigatório. Os períodos em que a disponibilidade vai começar. Precisam ser pontos no tempo no futuro. Se esse campo estiver ausente, a disponibilidade começará quando a mensagem for recebida.

MakeLineAvailableResponse

A mensagem de resposta para o método MakeLineAvailable.

Campos
name

string

O nome da linha cuja indisponibilidade foi atualizada. Formato: "networks/{network}/lines/{line}"

path[]

Path

Os caminhos que foram atualizados.

MakeLineUnavailableRequest

A mensagem de solicitação para o método MakeLineUnavailable.

Campos
name

string

Obrigatório. O nome da linha a tornar indisponível. Formato: "networks/{network}/lines/{line}"

unavailability_starts[]

DateTime

Obrigatório. Os períodos em que a indisponibilidade começa. Precisam ser pontos no tempo no futuro. Se esse campo estiver ausente, a indisponibilidade começará quando a mensagem for recebida.

MakeLineUnavailableResponse

A mensagem de resposta para o método MakeLineUnavailable.

Campos
name

string

O nome da linha cuja indisponibilidade foi atualizada. Formato: "networks/{network}/lines/{line}"

path[]

Path

Os caminhos que foram atualizados.

MakeVehicleAvailableRequest

A mensagem de solicitação para o método MakeVehicleAvailable.

Campos
name

string

Obrigatório. O nome do veículo a ser disponibilizado. Formato: "networks/{network}/vehicle/{vehicle}"

availability_starts[]

DateTime

Obrigatório. Os períodos em que a disponibilidade vai começar. Precisam ser pontos no tempo no futuro. Se esse campo estiver ausente, a disponibilidade começará quando a mensagem for recebida.

MakeVehicleAvailableResponse

A mensagem de resposta para o método MakeVehicleAvailable.

Campos
name

string

O nome do veículo cuja disponibilidade foi atualizada. Formato: "networks/{network}/vehicles/{vehicle}"

path[]

Path

Os caminhos que foram atualizados.

MakeVehicleUnavailableRequest

A mensagem de solicitação para o método MakeVehicleUnavailable.

Campos
name

string

Obrigatório. O nome do veículo que ficará indisponível. Formato: "networks/{network}/vehicles/{vehicle}"

unavailability_starts[]

DateTime

Obrigatório. Os períodos em que a indisponibilidade começa. Precisam ser pontos no tempo no futuro. Se esse campo estiver ausente, a indisponibilidade começará quando a mensagem for recebida.

MakeVehicleUnavailableResponse

A mensagem de resposta para o método MakeVehicleUnavailable.

Campos
name

string

O nome do veículo cuja indisponibilidade foi atualizada. Formato: "networks/{network}/vehicles/{vehicle}"

path[]

Path

Os caminhos que foram atualizados.

Rede

Descreve toda a rede existente que pode ser usada. Um determinado cliente da API pode ter várias redes (por exemplo, a rede principal e uma possível modificação futura para avaliação).

Campos
name

string

Obrigatório. Identificador. Não foi possível atualizar.

dimensions[]

ValueDimension

Distância, peso, paletes etc., além de escala (para associar pontos flutuantes a números inteiros).

pricing

PricingStrategy

Opcional. Preço a ser pago pelo remetente pelo envio de uma remessa que não requer uma linha dedicada.

currency_code

string

Opcional. Unidade monetária única usada em toda a rede. Um determinado cliente da API pode ter várias unidades para diferentes redes; uma rede só pode ter uma unidade monetária. A unidade precisa ser codificada no formato ISO 4217, como google3/google/type/money.proto.

time_step

Duration

Opcional. Discretização de tempo. As decisões são geradas com essa precisão de tempo. Internamente, o estado é mantido com essa precisão.

distance_matrix[]

DistanceMatrixEntry

Opcional. Matriz de distância (representada uma lista de arestas direcionadas ponderadas).

Caminho

Caminho para uma remessa dentro da rede.

Campos
shipment

string

Obrigatório. Remessa cujo caminho está sendo descrito.

segments[]

AnnotatedPathSegment

Obrigatório. Segmentos do caminho.

departure_time

DateTime

Apenas saída. Horário real de partida da remessa.

arrival_time

DateTime

Apenas saída. Horário real de chegada da remessa.

incurred_penalties

double

Apenas saída. Punições devido a restrições simples não respeitadas.

cost_constant

double

Apenas saída. Custo constante para essa remessa.

cost

map<string, double>

Apenas saída. Custo por componentes.

PathSegment

Representa uma parte de um caminho, enviado pelo cliente da API ao servidor da API (por exemplo, alteração de estado) ou pelo servidor da API ao cliente da API (por exemplo, encaminhar uma remessa).

Campos
source_hub

string

Obrigatório. Origem do segmento.

destination_hub

string

Obrigatório. Destino do trecho.

line

string

Obrigatório. Linha sendo seguida para este trecho.

line_rotation

string

Obrigatório. Rotação seguida para este segmento.

vehicle

string

Obrigatório. Veículo seguido por este trecho.

PieceWiseAffineFunction

Função linear linear, limitada a um argumento. Design semelhante a https://github.com/google/or-tools/blob/stable/ortools/util/piecewise_linear_function.h

Campos
segments[]

PieceWiseAffineSegment

Segmentos lineares da função.

PieceWiseAffineSegment

Um segmento de uma função linear em trechos.

Campos
start_x

double

Início do segmento: x.

start_y

double

Início do segmento: y.

end_x

double

Fim do segmento: x.

end_y

double

Fim do segmento: y.

PricingStrategy

Uma estratégia de preços.

Campos
Campo de união pricing_strategy. Uma estratégia de preços. pricing_strategy só pode ser de um dos seguintes tipos:
separable

SeparableNDFunction

A estratégia de preços é uma função separável de diversas variáveis.

RouteShipmentRequest

A mensagem de solicitação para o método RouteShipment.

Campos
parent

string

Obrigatório. O pai, a rede em que a remessa deve ser roteada. Formato: "networks/{network}"

shipment

Shipment

Obrigatório. A remessa a ser encaminhada.

RouteShipmentResponse

A mensagem de resposta para o método RouteShipment.

Campos
shipment

Shipment

A remessa recém-criada.

paths[]

Path

Os caminhos que foram alterados devido ao encaminhamento da remessa. Este campo inclui pelo menos uma entrada, o caminho da remessa que precisou ser roteada. Ele pode conter mais caminhos para outras remessas, refletindo alterações de estado internas.

lines[]

GeneratedLineAndRotation

As rotações de linha que foram criadas durante o roteamento da remessa. Ele pode estar vazio ou conter rotações para outras remessas, refletindo as alterações de estado internas.

SeparableNDFunction

Função de N argumentos expressa como a soma das funções de um argumento.

Campos
components

map<string, Function1D>

Componentes da função, com uma entrada por argumento/dimensão.

constant_price

double

Parte constante da função.

Envio

Envio a ser realizado.

Campos
name

string

Obrigatório. Identificador. Não foi possível atualizar.

source_hub

string

Obrigatório. Hub em que o envio é disponibilizado.

destination_hub

string

Obrigatório. Hub para onde a remessa deve ser entregue.

departure_time

DateTime

Obrigatório. Horário de partida.

arrival_time

DateTimeRange

Obrigatório. Horário de chegada esperado (ou seja, restrição flexível).

arrival_earliness_tardiness_cost

EarlinessTardiness

Opcional. Os SLAs indicam que esse período pode ser excedido com alguma penalidade. Se for posterior ao máximo, o pacote não será mais útil. A penalidade é determinada por uma função do atraso (em minutos).

size[]

ValueDimension

Opcional. Usado com as capacidades do veículo e do hub.

revenue

double

Opcional. Receita desse pacote (usada apenas para calcular a recompensa), ou seja, o preço pago pelo pagador. Se não for definida, a receita será calculada pelo sistema (dependendo se uma nova linha for gerada para essa remessa ou não).

UpdateHubRequest

A mensagem de solicitação para o método UpdateHub.

Campos
hub

Hub

Obrigatório. O hub a ser atualizado.

O campo name do hub é usado para identificar aquele que será atualizado. Formato: "networks/{network}/hubs/{hub}"

update_mask

FieldMask

Opcional. Lista de campos a serem atualizados.

UpdateLineRequest

A mensagem de solicitação para o método UpdateLine.

Campos
line

Line

Obrigatório. A linha a ser atualizada.

O campo name da linha é usado para identificar a linha a ser atualizada. Formato: "networks/{network}/lines/{line}"

update_mask

FieldMask

Opcional. Lista de campos a serem atualizados.

UpdateLineRotationRequest

A mensagem de solicitação para o método UpdateLineRotation.

Campos
line_rotation

LineRotation

Obrigatório. A rede a ser atualizada.

O campo name da rotação é usado para identificar a rotação a ser atualizada. Formato: "networks/{network}/lines/{line}/rotations/{rotation}"

update_mask

FieldMask

Opcional. Lista de campos a serem atualizados.

UpdateNetworkRequest

A mensagem de solicitação para o método UpdateNetwork.

Campos
network

Network

Obrigatório. A rede a ser atualizada.

O campo name da rede é usado para identificar a rede a ser atualizada. Formato: "networks/{network}"

update_mask

FieldMask

Opcional. Lista de campos a serem atualizados.

UpdatePathRequest

A mensagem de solicitação para o método UpdatePath.

Campos
path

Path

Obrigatório. O novo caminho para o envio.

UpdateVehicleRequest

A mensagem de solicitação para o método UpdateVehicle.

Campos
vehicle

Vehicle

Obrigatório. O veículo a ser atualizado.

O campo name do veículo é usado para identificar aquele que será atualizado. Formato: "networks/{network}/vehicles/{vehicle}"

update_mask

FieldMask

Opcional. Lista de campos a serem atualizados.

ValueDimension

Um valor em uma dimensão predefinida. O campo value precisa ser definido como o tipo correspondente de dimension.

Campos
value

int64

Opcional. Valor

dimension

string

Obrigatório. Dimensionamento.

Veículo

Sem nome, ele é armazenado como uma chave de mapa na rede.

Campos
name

string

Obrigatório. Identificador. Não foi possível atualizar.

capacities[]

ValueDimension

Opcional. Características do veículo.

cost

PricingStrategy

Obrigatório. Custo de uso do veículo. Essas são funções de um único argumento: a distância que o veículo percorre, o peso que ele transporta e o número de paletes que o veículo transporta. Essas funções contabilizam os custos de manutenção, combustível e manuseio. Esses custos podem incluir um valor inicial (pago assim que o veículo é usado, útil principalmente para subcontratação).

pricing

PricingStrategy

Opcional. Preço a ser pago pelo pagador, somente se o veículo estiver sendo usado em uma linha gerada (ou seja, não fizer parte da rede de entrada).

allowed_for_generated_lines

bool

Obrigatório. Indica se este veículo pode ser usado para linhas geradas. Se definido como false, o veículo será limitado a linhas predefinidas onde ele é permitido.

vehicle_position_constraints[]

VehiclePositionConstraint

Opcional. Posições forçadas do veículo atual e os horários. Por exemplo, use entradas para modelar o fato de que um veículo começa ou termina em um determinado hub.

VehiclePositionConstraint

Restrição na posição de um veículo.

Campos
time

DateTime

Horário da restrição.

hub_id

string

Hub da restrição.