Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Aviso
titleIMPORTANTE
  • A integração TOTVS OMS x TOTVS Planejamento de Rotas (TPR) será descontinuada no próximo release (Outubro/2023).

Introdução

draw.io Diagram
bordertrue
viewerToolbartrue
fitWindowfalse
diagramDisplayName
lboxtrue
revision7
diagramNameTPR Roteirização
simpleViewerfalse
width
linksauto
tbstylehidden
diagramWidth480

Sistemas Envolvidos

  • TPR: TOTVS Planejamento de Rotas.
  • Sistema Externo: Todos os ERPs que se conectam ou pretendem se conectar com os produtos de planejamento logístico TOTVS.

Integração

  • Formato de entrada/saída: JSONJSON, para maiores detalhes consulte os Exemplos.

Escopo

  • Integração assíncrona de roteirização, compostas pela chamada e pelo callback, nestas, receberemos uma lista pedidos e, quando possível, retornaremos viagens para rotas para o sistema externo;

Pré-requisitos instalação/implantação/utilização

  • Para clientes Protheus versão xxxxxx;
  • Para clientes Datasul versão xxxxxx;
  • Para todos os clientes, contratação do trial via TOTVS Store.
Layout de Requisição

TPRRouting: Integração rest, Assíncrona com o callback

Pathhttps://planejamentorotasqa.totvs.

.

com/v1/

   

tpr-routing, Método: POST

CampoTipo

Header obrigatório: Chave = "TPR_AUTHORIZATION" e Valor = Chave gerada na integração de Criação de token

Campo

Tipo

Obrigatório

Tamanho

Descrição

Validações

Exemplos

dateCallDate TimeSim
Data da criação da chamada no sistema externo.Formato ISO8601.2021-01-21T10:01:00.0-03:00
YYYY-MM-DDThh:mm:ss.sTZD
systemStringNão4096Identificador do sistema que fez a chamada.Texto Livre.Protheus
versionStringNão4096Versão do sistema externo.Texto Livre.12.36.1
qualifiers
Object
StringNão4096String
chave valor
representando um objeto JSON que tenha o nome da variável e valor sendo String.Formato JSON.

"{ \"

Usuário

Usuario\": \"Pedro

de Alcântara

\", \"Perfil\": \"Analista\" }

callbackURLStringSim4096

"


OBS: É equivalente usar JSON.stringify({"Usuario":"Pedro", "Perfil":"Analista"})

callbackURLStringDepende4096URL de Callback. É obrigatório caso não tenha sido preenchido nada em callbackInfos.
URL de Callback
Início com "https://"
.
quando o tipo  de autenticação não for NONE
callbackAuthenticationTypeString
Sim
Depende4096Tipos de autenticação: BASIC, NONE
É obrigatório caso não tenha sido preenchido nada em callbackInfos.
Opções: BASIC, NONE.NONE
callbackAuthenticationValueStringNão4096Texto de acordo com formato indicado.Texto Livre.QWxhZGRpbjpvcGVuIHNlc2FtZQ==
orders
callbackInfos
TPRRoutingOrders
TPRCallbackInfo[]
Sim
Depende
Lista de
pedidos a serem roteirizados
callbacks. É obrigatório caso não tenha sido preenchido nada em callbackURL e callbackAuthenticationType.

ordersTPRRoutingOrders[]Sim
Lista de pedidos a serem roteirizados.
Tabela abaixo
vehiclesTPRRoutingVehicles[]Sim
Lista de veículos disponíveis para a roteirização.
Tabela abaixo
restrictionsTRPRoutingRestrictionsSim
Restrições de roteirização.
Tabela abaixo
optionsTPRRoutingOptionsSim
Opções de roteirização.
Tabela abaixo

Âncora
TPRRoutingOrdersTPRCallbackInfoTPRRoutingOrders
TPRCallbackInfo

TPRRoutingOrders
TPRCallbackInfo, tipo de dado utilizado nas integrações do TPR
CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
identifier
callbackURLStringSim4096
Identificador do pedido

Texto livre, deve se único dentro da chamada.

"Entrega Carrefour"

"PED00133"

weightDoubleNãoPeso total os itens do pedido em quilos

Se preenchido, deve ser maior ou igual a zero.

Validado de acordo com o campo "capacityCriteria".

Se não existirem veículos que suportem este pedido sozinho  na disponibilidade, ele será rejeitado.

25000volumeDoubleNão
URL de Callback.

Início com "https://" quando o tipo  de autenticação não for NONE


callbackAuthenticationTypeStringSim4096Tipos de autenticação: BASIC, NONE

Opções: BASIC, NONE.

NONE
callbackAuthenticationValueStringNão4096Texto de acordo com formato indicado.

Texto Livre.

QWxhZGRpbjpvcGVuIHNlc2FtZQ==

Âncora
TPRRoutingOrders
TPRRoutingOrders

TPRRoutingOrders, tipo de dado utilizado nas integrações do TPR
CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
identifierStringSim4096Identificador do pedido

Texto livre, deve se único dentro da chamada.

"Entrega Carrefour"

"PED00133"

weightDoubleNão
Peso total os itens do pedido em quilos
Volume total dos itens do pedido em metros cúbicos

Se preenchido, deve ser maior ou igual a zero

.

;

Validado de acordo com o campo "capacityCriteria"

.

;

Se não existirem veículos que suportem este pedido sozinho  na disponibilidade, ele será rejeitado.

5000
25000
volumeDoubleNão
Volume total dos itens do pedido em metros cúbicos

Se preenchido, deve ser maior ou igual a zero;

Validado de acordo com o campo "capacityCriteria";

Se não existirem veículos que suportem este pedido sozinho  na disponibilidade, ele será rejeitado.

5000
pickupTimeWindowStartDate Time
Não
Sim
Início da janela de carregamento

Formato ISO8601;

PickupStart deve ser anterior a PickupEnd, se ambos forem preenchidos

.

;

PickupStart deve ser anterior ou igual a DeliveryStart , se ambos forem preenchidos

.

;

PickupStart deve ser anterior a DeliveryEnd

se

e ambos

forem

devem ser preenchidos.

"2021-01-21T10:01:00.0-03:00
YYYY-MM-DDThh:mm:ss.sTZD"
pickupTimeWindowEndDate TimeNão
Final da janela de carregamentoFormato ISO8601
;
."2021-01-21T10:01:00.0-03:00
YYYY-MM-DDThh:mm:ss.sTZD"
deliveryTimeWindowStartDate TimeNão
Início da janela de entrega

Formato ISO8601

;

.

"2021-01-21T10:01:00.0-03:00
YYYY-MM-DDThh:mm:ss.sTZD"
deliveryTimeWindowEndDate Time
Não
Sim
Final da janela de entrega

Formato ISO8601;

DeliveryEnd deve vir posterior de

PickupStart

DeliveryStart se ambos forem preenchidos

.

;

DeliveryEnd deve vir posterior  ou igual de PickupEnd se ambos forem preenchidos

.

;

DeliveryEnd deve vir posterior

de DeliveryStart se ambos forem

de PickupStart e ambos devem ser preenchidos.

"2021-01-21T10:01:00.0-03:00
YYYY-MM-DDThh:mm:ss.sTZD"
serviceLoadDurationLongNão

Se

não informado, será considerado um serviço de 30 minutos

for 0 minutos a soma dos serviços dos pedidos, consideraremos 30 minutos de serviço;

Soma com menos de 30 minutos será sempre 30 minutos;

Se a soma do tempo de serviço dos pedidos for maior que 8h, consideraremos 8h de serviço;

Se preenchido, deve ser maior que zero, em Milissegundos.3600000 [ms]
serviceUnloadDurationLongNão

Se

não informado, será considerado um de 30 minutos

for 0 minutos a soma dos serviços dos pedidos, consideraremos 30 minutos de serviço;

Soma com menos de 30 minutos será sempre 30 minutos;

Se a soma do tempo de serviço dos pedidos for maior que 8h, consideraremos 8h de serviço;

Se preenchido, deve ser maior que zero, em Milissegundos.3600000 [ms]
originTPRRoutingLocalitySim
Localidade de origem do pedido-Tabela abaixo
destinationTPRRoutingLocalitySim
Localidade de destino do pedido-Tabela abaixo

Âncora
TPRRoutingLocality
TPRRoutingLocality

DoubleSim
TPRRoutingLocality, tipo de dado utilizado nas integrações do TPR
CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
identifierStringSim4096Identificador da localidade.Texto livre, deve se único dentro da chamada."Carrefour 123-1"
nameStringNão4096Nome da localidade.Texto livre."Carrefour Vila Mariana"
countryStringSim3País do endereço.Fomato Formato ISO 3166-1 alfa-3."BRA"latitude
stateStringNão2Estado do endereço

Se TPRRoutingRestrictions stateReturnForbidden é true, todas as localidades deverão enviar a UF, que deverá ser:

Não nula ou vazia
Composta por dois caracteres
Deve ser uma UF válida para o Brasil

"SP"
latitudeDoubleSim
Latitude.Intervalo [LatitudeIntervalo [-90; 90].-23.6114291
longitudeDoubleSim
Longitude.Intervalo [-180; 180].-46.6946795
operationStringSim
Funcionamento simplificado com as opções:
UNRESTRICTED, BUSINESS_DAYS, MORNING, AFTERNOON, CUSTOMIZED

Opções:

UNRESTRICTED  (00:00-
24
23:
00
59 de Dom-Sab)
,

BUSINESS_DAYS (08
-18h de
:00-17:59 de Seg-Sex)
MORNING (08:00-
12
11:
00h
59 de Seg-Sex)
AFTERNOON
.
     (14:00-
18
17:
00h
59 de Seg-Sex)
CUSOTMIZED (Valores preenchidos na tabela abaixo)
BUSINESS_DAYS
anchor
customizedOperations
TPRRoutingVehiclesTPRRoutingVehicles
Não
Horários de funcionamento customizadoSe operação customizada (operation=CUSTOMIZED) ao menos uma recorrência será obrigatória.Tabela a baixo
restrictedVehiclesTPRRoutingRestrictedVehicles[]Não
Lista de veículos restritos para esta localidade
Tabela a baixo

Âncora
TPRRoutingCustomizedOperation
TPRRoutingCustomizedOperation

TPRRoutingVehicles, tipo de dado utilizado nas integrações do TPR
TPRRoutingCustomizedOperation, tipo de dado utilizado nas integrações do TPR
CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
identifier
weekDayStringSim
4096Identificador do tipo do veículo;
Quando a disponibilidade for insuficiente, podemos retornar novas instâncias deste veículo marcados como viagem extra;
Sempre será escolhido para as viagens extras os veículos que minimizem o número de viagens.Texto livre, deve se único dentro da chamada.

"Truck"

"Carreta"

weightCapacityDoubleSimCapacidade do veículo em quilos

Se preenchido, deve ser maior ou igual a zero.
Validado de acordo com o campo "capacityCriteria".

25000volumeCapacityDoubleSimCapacidade do veículo em metros cúbicosSe preenchido, deve ser maior ou igual a zero.
Validado de acordo com o campo "capacityCriteria".5000speeddoubleNãoDefine a velocidade que dos veículos em uma roteirização.

Se preenchido, deve ser maior que zero. 

Se não informado trabalharemos com a menor entre as velocidades informadas e se nenhum for informado: 30 km/h.

quantityIntNãoQuantidade de veículos, semelhantes a este, disponíveis

Zerado, nulo ou omitido para os cenários de "Frota Ideal".

Se passados valores quebrados apenas a parte inteira será considerada.

Âncora
3Dia da semanaSUN, MON, TUE, WED, THU, FRI, SAT"MON"
startTimeStringSim5Horário de inicio de operação.Deve estar no intervalo: 00:00 - 23:59"08:00"
endTimeStringSim5Horário de fim de operaçãoDeve estar no intervalo: 00:00 - 23:59"12:00"

Âncora
TPRRoutingRestrictecVehicles
TPRRoutingRestrictecVehicles

TPRRoutingRestrictedVehicles, tipo de dado utilizado nas integrações do TPR
CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
identifierStringSim4096Identificador do tipo do veículo.Deve constar na lista veículos disponíveis.

"Truck"

"Carreta"

Âncora
TPRRoutingVehicles
TPRRoutingVehicles

TPRRoutingVehicles
TRPRoutingRestrictionsTRPRoutingRestrictions
TPRRoutingRestrictionsmaxLoadingStopsInt

Quantidade máxima de paradas de carregamento por viagem.

Quantidade máxima de paradas de descarregamento por viagem que

Se passados valores quebrados apenas a parte inteira será considerada.

Máxima distância, em km, entre paradas de carregamento;Double
, tipo de dado utilizado nas integrações do TPR
CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
identifierStringSimNão4096Identificador do tipo do veículo;
Quando a disponibilidade for insuficiente, podemos retornar novas instâncias deste veículo marcados como rota extra;
Sempre será escolhido para as rotas extras os veículos que minimizem o número de rotas.
Texto livre, deve se único dentro da chamada.

"Truck"

"Carreta"

weightCapacityDoubleSim
Capacidade do veículo em quilos

Se preenchido, deve ser maior que zero.

Se passados valores quebrados apenas a parte inteira será considerada.

1maxUnloadingStopsIntNão.

Se preenchido, deve ser maior

ou igual a zero.

15allowInterleavingBooleanNãoPermite carregamento após descarregamento na mesma viagem. Default: false

Tabela para validação de campos Bolean

maxDistanceBetweenLoadStopsDoubleNão

Validado de acordo com o campo "capacityCriteria".

25000
volumeCapacityDoubleSim
Capacidade do veículo em metros cúbicos.Se preenchido, deve ser maior ou igual a zero.
Validado de acordo com o campo "capacityCriteria".
5000
speedDoubleNão
Define a velocidade que dos veículos em uma roteirização.

Se preenchido, deve ser maior que zero.

100maxDistanceBetweenUnloadStops

 

Senão, utilizaremos 30 km/h.


quantityIntNãoMáxima distância, em km, entre paradas de descarregamento;Se preenchido, deve ser maior que zero.100
ÂncoraTPRRoutingOptionsTPRRoutingOptionsTPRRoutingOptions, tipo de dado utilizado nas integrações do TPRCampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemploscapacityCriteriaStringSim4096Tipos de roteirização: WEIGHT, VOLUME ou BOTHOpções: WEIGHT, VOLUME ou BOTH."WEIGHT"routingInstantTypeStringNão4096Define o instante em que a viagens podem ser expedidas. Valor default D+1
"Now" considera a saída como hora do servidor no momento da roteirização + 1 hora
"D+1" Primeiro horário factível na origem de acordo com o funcionamento da mesmaValores: "D+1", "NOW"."NOW"considerReturnDistancebooleanNão

Verifica se é para contabilizar a distancia de retorno a origem na roteirização. 

Tabela para validação de campos Bolean;

Se não informado assumiremos "False".

ÂncoraTPRRoutingResponseTPRRoutingResponse

Layout de Resposta

TPRRoutingResponse, tipo de dado utilizado nas integrações do TPRCampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplosresponseDateDate TimeSimData do envio da resposta no TPR-2021-01-21T10:01:00.0-03:00
YYYY-MM-DDThh:mm:ss.sTZDversionStringSim4096Versão do TPR que executou a resposta-0.0.0.1successBooleanSimTrue se sucesso, false se falhaSe uma única validação falhar, todo o pacote falha.TruemessageTPRMessage[]SimLista de mensagens a serem exibidas pelo sistema externo para o usuário- ÂncoraTPRMessage TPRMessage

TPRMessage: Tipo de dado utilizado nas integrações do TPR

CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplosmessageCodeStringSim4096Código de identificação da mensagemCódigo existente e válido.TPR0001messageStringSim4096Mensagem escritaTexto Livre."Para finalizar o cadastro, acesse seu e-mail e valide o Token" ÂncoraTPRCatMsgTPRCatMsg

Catálogo de Mensagens

CódigoMensagemDescriçãoTPRRT0000SucessoSucessoTPRRT0001A mensagem está nulaAo enviar um payload nuloTPRRT0002A mensagem está vaziaAo enviar um payload vazioTPRRT0003A data de criação está nulaAo enviar campo "dataCall" nulaTPRRT0004O valor da versão possui mais de 4096 caracteresAo enviar o campo "version" com mais de 4096 caracteresTPRRT0005A chave dos qualificadores possui mais de 4096 caracteresAo enviar o campo "qualifiers" que possui uma chave com mais de 4096 caracteresTPRRT0006A máxima distância de paradas de carregamento não pode ser menor que 0Ao enviar o campo "maxDistanceBetweenLoadStops" com o valor menor a 0TPRRT0007O valor do sistema possui mais de 4096 caracteresAo enviar o campo "system" com mais de 4096 caracteresTPRRT0008A url de callback está nulaAo enviar o campo "callbackUrl" nulaTPRRT0009A url de callback está inválidaAo enviar o campo "callbackUrl" inválidaTPRRT0010O valor da url de callback possui mais de 4096 caracteresAo enviar o campo "callbackUrl" com mais de 4096 caracteresTPRRT0011O tipo de autenticação de callback está nulaAo enviar o campo "callbackAuthenticationType" nuloTPRRT0012O valor do tipo de autenticação de callback possui mais de 4096 caracteresAo enviar o campo "callbackAuthenticationType" com mais de 4096 caracteresTPRRT0013O tipo de autenticação de callback está inválido ('BASIC', 'NONE')Ao enviar o campo "callbackAuthenticationType" inválidoTPRRT0014O tipo de roteirização está nuloAo enviar o campo "capacityCriteria" nulaTPRRT0015O valor do tipo de roteirização possui mais de 4096 caracteresAo enviar o campo "capacityCriteria" com mais de 4096 caracteresTPRRT0016O tipo de roteirização está inválido ('WEIGHT', 'VOLUME', 'BOTH')Ao enviar o campo "capacityCriteria" com valores diferentes de ('WEGHT', 'VOLUME', 'BOTH')TPRRT0017O valor do instante da roteirização possui mais de 4096 caracteresAo enviar o campo "routingInstantType" com mais de 4096 caracteresTPRRT0018A restrição está nulaAo enviar o campo "restriction" nulaTPRRT0019A localidade está nulaAo enviar alguma localidade nulaTPRRT0020O identificador da localidade está inválidoAo enviar o Identificador da Localidade vazio ou nuloTPRRT0021A latitude da localidade [IDENTIFICADOR_LOCALIDADE] está nulaAo enviar a latitude de alguma localidade nulaTPRRT0022A longitude da localidade [IDENTIFICADOR_LOCALIDADE] está nulaAo enviar a longitude de alguma localidade nulaTPRRT0023A operação da localidade [IDENTIFICADOR_LOCALIDADE] está nulaAo enviar o funcionamento de alguma localidade nulaTPRRT0024O país da localidade [IDENTIFICADOR_LOCALIDADE] está nulaAo enviar o campo "country" de alguma localidade nuloTPRRT0025O valor do identificador da localidade possui mais de 4096 caracteresAo enviar o campo "identifier" de alguma localidade com mais de 4096 caracteresTPRRT0026O país da localidade [IDENTIFICADOR_LOCALIDADE] está inválido. O mesmo deve seguir o formato ISO 3166-1 alfa-3Ao enviar o campo "country" com mais de 3 caracteresTPRRT0027O país da localidade [IDENTIFICADOR_LOCALIDADE] não foi encontradoAo enviar o campo "country" que não está informado no TPRCountryTPRRT0028A latitude da localidade [IDENTIFICADOR_LOCALIDADE] está inválido a mesma precisa estar dentro do intervalo [-90; 90]Ao enviar o campo "latitude" não seguindo o padrão [-90; 90]TPRRT0029A longitude da localidade [IDENTIFICADOR_LOCALIDADE] está inválido a mesma precisa estar dentro do intervalo [-180; 180]Ao enviar o campo "longitude" não seguindo o padrão [-180; 180]TPRRT0030O pedido está nuloAo enviar algum pedido nuloTPRRT0031Os pedidos são inválidosAo enviar o campo pedido vazioTPRRT0032O identificador do pedido é obrigatórioAo enviar o identificador do pedido vazio ou nuloTPRRT0033O peso do pedido com identificador [IDENTIFICADOR_PEDIDO] é obrigatórioAo enviar o peso do pedido nulo, caso o campo "capacityCriteria" do input seja "WEIGHT" ou "BOTH"TPRRT0034O peso do pedido com identificador [IDENTIFICADOR_PEDIDO] deve ser maior que 0Ao enviar o peso do pedido que seja menor que 0, caso o campo "capacityCriteria" do input seja "WEIGHT" ou "BOTH"TPRRT0035O volume do pedido com identificador [IDENTIFICADOR_PEDIDO] é obrigatórioAo enviar o campo "volume" menor que 0, caso o campo "capacityCriteria" do input seja "VOLUME" ou 'BOTH"TPRRT0036O volume do pedido com identificador [IDENTIFICADOR_PEDIDO] deve ser maior que 0Ao enviar o campo "volume" menor que 0. caso o campo "capacityCriteria" do input seja "VOLUME"TPRRT0037A localidade de origem do pedido [IDENTIFICADOR_PEDIDO] está nuloAo enviar a localidade de origem do pedido nulaTPRRT0038A localidade de destino do pedido [IDENTIFICADOR_PEDIDO] está nuloAo enviar a localidade de destino do pedido nulaTPRRT0039O identificador do pedido possui mais de 4096 caracteresO campo "identifier" do pedido com mais de 4096TPRRT0040A duração de serviço de carregamento do pedido [IDENTIFICADOR_PEDIDO] não pode ser menor ou igual a 0Ao enviar o campo "serviceLoadDuration" menor que 0TPRRT0041A duração de serviço de descarregamento pedido [IDENTIFICADOR_PEDIDO] não pode ser menor ou igual a 0Ao enviar o campo "serviceUnloadDuration" menor que 0TPRRT0042Os veículos não podem ser nulosAo enviar o campo "vehicles" nuloTPRRT0043Os veículos não podem ser vaziosAo enviar o campo "vehicles" vazioTPRRT0044O identificador do veículo está inválidoAo enviar o campo "identifier" do veículo nulo ou vazioTPRRT0045A capacidade de volume do veículo com identificador [IDENTIFICADOR_VEICULO] é obrigatórioAo enviar o campo "volumeCapacity" do veículo nula, quando o capacityCriteria é igual a VOLUME ou BOTHTPRRT0046A capacidade de volume do veículo com identificador [IDENTIFICADOR_VEICULO] deve ser maior que 0Ao enviar o campo "volumeCapacity" do veículo é menor que 0, quando o capacityCriteria é igual a VOLUME ou BOTHTPRRT0047A capacidade de peso do veículo com identificador [IDENTIFICADOR_VEICULO] é obrigatórioAo enviar o campo "weightCapacity" do veículo nula, quando o capacityCriteria é igual a WEIGHT ou BOTHTPRRT0048A capacidade de peso do veículo com identificador [IDENTIFICADOR_VEICULO] deve ser maior que 0Ao enviar o campo "weightCapacity" do veículo é menor que 0, quando o capacityCriteria é igual a WEIGHT ou BOTHTPRRT0049O identificador do veículo possui mais de 4096 caracteresAo enviar o identificador de veículo com mais de 4096 caracteresTPRRT0050A quantidade de veículos do veículo com identificador [IDENTIFICADOR_VEICULO], se informada, deve ser maior que 0Ao enviar o campo "quantity" menor que 0TPRRT0051O identificador do pedido [IDENTIFICADOR_PEDIDO] está duplicadoAo enviar dois pedidos com o mesmo identifierTPRRT0052As localidades de origem e destino são iguais no pedido [IDENTIFICADOR_PEDIDO]Ao enviar uma localidade de origem e de destino com o mesmo identifierTPRRT0053O identificador da localidade [IDENTIFICADOR_LOCALIDADE] está duplicado em outras localidadesAo enviar duas localidades quaisquer com o mesmo identifierTPRRT0054O identificador do veículo [IDENTIFICADOR_VEICULO] está duplicado com outros veículosAo enviar veículos com identificadores iguais, mas atributos diferentesTPRRT0055O valor dos qualificadores possui mais de 4096 caracteresAo enviar o campo "qualifiers" que possui um valor com mais de 4096 caracteresTPRRT0056O máximo número de paradas de carregamento não pode ser menor ou igual a 0Ao enviar o campo "maxLoadingStops" com o valor menor ou igual a 0TPRRT0057O máximo número de paradas de descarregamento não pode ser menor ou igual a 0Ao enviar o campo "maxUnloadingStops" com o valor menor ou igual a 0TPRRT0058A máxima distância de paradas de descarregamento não pode ser menor que 0Ao enviar o campo "maxDistanceBetweenUnloadStops" com o valor menor a 0TPRRT0059O pedido [IDENTIFICADOR_PEDIDO] possui início da janela de carregamento maior ou igual que o final da janela de carregamentoAo enviar o campo "pickupTimeWindowStart" maior ou igual que o campo "pickupTimeWindowEnd"TPRRT0060O pedido [IDENTIFICADOR_PEDIDO] possui início da janela de descarregamento maior ou igual que o final da janela de descarregamentoAo enviar o campo "deliveryTimeWindowStart" maior ou igual que o campo "deliveryTimeWindowEnd"TPRRT0061O pedido [IDENTIFICADOR_PEDIDO] possui início da janela de carregamento maior que o início da janela de descarregamentoAo enviar o campo "pickupTimeWindowStart" maior que o campo "deliveryTimeWindowStart"TPRRT0062O pedido [IDENTIFICADOR_PEDIDO] possui início da janela de carregamento maior ou igual que o final da janela de descarregamentoAo enviar o campo "pickupTimeWindowStart" maior ou igual que o campo "deliveryTimeWindowEnd"TPRRT0063O pedido [IDENTIFICADOR_PEDIDO] possui final da janela de carregamento maior que o final da janela de descarregamentoAo enviar o campo "pickupTimeWindowEnd" maior ou igual que o campo "deliveryTimeWindowStart"TPRRT0064O peso do veículo [IDENTIFICADOR_VEÍCULO] ultrapassou o máximo permitido. Peso constatado [PESO_CONSTATADO] Peso máximo [PESO_MAXIMO]Quando o peso máximo do veículo ultrapassa o peso permitido pelo validador MaxWeightVehicleServiceLegValidatorTPRRT0065O volume do veículo [IDENTIFICADOR_VEÍCULO] ultrapassou o máximo permitido. Volume constatado [VOLUME_CONSTATADO]. Volume máximo [VOLUME_MAXIMO]Quando o volume máximo do veículo ultrapassa o volume permitido no validador MaxVolumeVehicleServiceLegValidatorTPRRT0066Não foi possível satisfazer a janela temporal dos pedidos [IDENTIFICADORES_PEDIDOS].Quando a janela de tempo dos pedidos estão infactiveis baseado no validador TimeWindowValidatorTPRRT0067Não foi possível gerar configuração temporal para a viagem [IDENTIFICADORES_VIAGENS].Quando a janela de tempo dos pedidos estão infactiveis baseado no validador PlanTimeConfigurationValidatorWrapperTPRRT0068Viagem supera a quantidade máxima de cargas permitidas. Cargas [QUANTIDADE_CARGA], Máx [MAX_QUANTIDADE_PERMITIDA].Quando a quantidade de cargas de um protótipo de viagem for maior que 1.TPRRT0069A velocidade deve ser maior que 0.Ao enviar o campo "speed" com o valor menor que ou igual a 0.TPRRT0070Erro Interno, tente novamente e se o problema persistir contate o suporte.Erro caso ocorra alguma falha na roterização.

Quantidade de veículos, semelhantes a este, disponíveis.

Zerado, nulo ou omitido para os cenários de "Frota Ideal".

Se passados valores quebrados apenas a parte inteira será considerada.


vehicleTypeStringNão
TRUCK | CAR  | MOTORCYCLESe não preenchido será considerado TRUCK.
É utilizado no calculo do pedágio e para restrições de trafego de caminhões.

tollAxesLongNão
Quantidade de eixos durante a rota.Se informado será considerado no calculo do pedágio.6
tollReturnAxesLongNão
Quantidade de eixos durante o retorno para a origem.Se informado será considerado no calculo do pedágio.4

Âncora
TRPRoutingRestrictions
TRPRoutingRestrictions

TPRRoutingRestrictions, tipo de dado utilizado nas integrações do TPR
CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
maxLoadingStopsIntNão

Quantidade máxima de paradas de carregamento por rota.


Se preenchido, deve ser maior que zero;

Se passados valores quebrados apenas a parte inteira será considerada.

1
maxUnloadingStopsIntNão
Quantidade máxima de paradas de descarregamento por rota.

Se preenchido, deve ser maior que zero.

Se passados valores quebrados apenas a parte inteira será considerada.

15
allowInterleavingBooleanNão
Permite carregamento após descarregamento na mesma rota. Default: false

Tabela para validação de campos Boolean.


maxDistanceBetweenLoadStopsDoubleNão
Máxima distância, em km, entre paradas de carregamento.Se preenchido, deve ser maior que zero.100
stateReturnForbiddenBoolean       Não            Liga e desliga  a validação de retorno ao estado (UF) já visitado

Tabela para validação de campos Boolean.

Se não informado assumiremos "False".


Âncora
TPRRoutingOptions
TPRRoutingOptions

TPRRoutingOptions, tipo de dado utilizado nas integrações do TPR
CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
capacityCriteriaStringSim4096Tipos de roteirização: WEIGHT, VOLUME ou BOTHOpções: WEIGHT, VOLUME ou BOTH."WEIGHT"
routingInstantTypeStringNão4096

Define o instante a partir do qual as rotas podem ser expedidas:

"Now" Inicio das rotas na primeira hora factível a partir do  momento da roteirização mais uma hora.

"D+1" Inicio das rotas amanhã no primeiro horário factível de carregamento.

Pedidos com janelas de carregamento ou descarregamento no futuro, desde que factíveis, não serão influenciados por este parâmetro.

Valores: "D+1", "NOW"."NOW"
considerReturnDistanceBooleanNão

Verifica se é para contabilizar a distância de retorno a origem na roteirização. 

Tabela para validação de campos Boolean.

Se não informado assumiremos "False".


minServiceDurationLongNão

O montante mínimo do tempo de serviço. Caso a soma dos tempos de carregamento e descarregamento não ultrapassem o valor mínimo, este será utilizado.
Valor padrão: 30m

Se preenchido, não pode ser negativo, em Milissegundos.

3600000 [ms]
maxServiceDurationLongNão

O montante máximo do tempo de serviço. Caso a soma dos tempos de carregamento e descarregamento ultrapassem o valor máximo, este será utilizado.
Valor padrão: 8h

Se preenchido, não pode ser negativo, em Milissegundos.

3600000 [ms]
driverRestPlanTypeStringNão
Descanso do motorista

DEFAULT: A cada 5 horas dirigidas 1/2 hora de descanso;

A cada 24 horas dirigidas 11 horas de descanso e 1 hora de almoço

Tempo máximo de direção 8 horas 

EXTRATIME: A cada 5 horas dirigidas 1/2 hora de descanso;

A cada 24 horas dirigidas 11 horas de descanso e 1 hora de almoço

Tempo máximo de direção 10 horas (8 horas normais + Mais 2 horas extras)

NONE: Desativado

"DEFAULT"
routingTypeStringNão
Tipo da Roteirização (Default: 'ROUTING')

ROUTING: Valida peso, volume e considera todos os veículos disponíveis. Se possível gera várias rotas.

SEQUENCE: Não efetua validação de peso, volume e seleciona o primeiro veículo. Utilizado apenas para sequenciar paradas.

"SEQUENCE"

prioritizationOption

          String            Não

Priorização de Roteirização (Default: 'PRIORITIZE_VEHICLES')

PRIORITIZE_VEHICLES: Priorizar minha disponibilidade de veículos (Busca priorizar a capacidade dos veículos cadastrados antes de gerar rota extra).

REDUCE_TRAVEL: Reduzir a quantidade de rotas  (Agrupa os pedidos com objetivo de reduzir a quantidade de rotas, podendo gerar rota extra).

'REDUCE_TRAVEL'
tollCalculationBooleanNão
Calculo do pedágio

Tabela para validação de campos Boolean.

Se não informado assumiremos "False".




Âncora
TPRRoutingResponse
TPRRoutingResponse

Layout de Resposta

TPRRoutingResponse, tipo de dado utilizado nas integrações do TPR
CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
responseDateDate TimeSim
Data do envio da resposta no TPR.-2021-01-21T10:01:00.0-03:00
YYYY-MM-DDThh:mm:ss.sTZD
versionStringSim4096Versão do TPR que executou a resposta.-0.0.0.1
successBooleanSim
True se sucesso, false se falha.Se uma única validação falhar, todo o pacote falha.True
messageTPRMessage[]Sim
Lista de mensagens a serem exibidas pelo sistema externo para o usuário.-

Âncora
TPRMessage
TPRMessage

TPRMessage: Tipo de dado utilizado nas integrações do TPR

CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
messageCodeStringSim4096Código de identificação da mensagem.Código existente e válido.TPR0001
messageStringSim4096Mensagem escrita.Texto Livre."Para finalizar o cadastro, acesse seu e-mail e valide o Token"

Âncora
TPRCatMsg
TPRCatMsg

Catálogo de Mensagens

CódigoMensagemDescrição
TPRRT0000SucessoSucesso
TPRRT0001A mensagem está nulaAo enviar um payload nulo
TPRRT0002A mensagem está vaziaAo enviar um payload vazio
TPRRT0003A data de criação está nulaAo enviar campo "dataCall" nula
TPRRT0004O valor da versão possui mais de 4096 caracteresAo enviar o campo "version" com mais de 4096 caracteres
TPRRT0005O valor dos qualificadores possui mais de 4096 caracteresAo enviar o campo "qualifiers" com mais de 4096 caracteres
TPRRT0006A máxima distância de paradas de carregamento não pode ser menor que 0Ao enviar o campo "maxDistanceBetweenLoadStops" com o valor menor a 0
TPRRT0007O valor do sistema possui mais de 4096 caracteresAo enviar o campo "system" com mais de 4096 caracteres
TPRRT0008A url de callback está nulaAo enviar o campo "callbackUrl" nula
TPRRT0009Para utilizar autenticação, a URL de chamada de retorno deve iniciar com https://.Ao enviar o campo "callbackUrl" com autenticação diferente de none, e que não começe com https://
TPRRT0010O valor da url de callback possui mais de 4096 caracteresAo enviar o campo "callbackUrl" com mais de 4096 caracteres
TPRRT0011O tipo de autenticação de callback está nulaAo enviar o campo "callbackAuthenticationType" nulo
TPRRT0012O valor do tipo de autenticação de callback possui mais de 4096 caracteresAo enviar o campo "callbackAuthenticationType" com mais de 4096 caracteres
TPRRT0013O tipo de autenticação de callback está inválido ('BASIC', 'NONE')Ao enviar o campo "callbackAuthenticationType" inválido
TPRRT0014O tipo de roteirização está nuloAo enviar o campo "capacityCriteria" nula
TPRRT0015O valor do tipo de roteirização possui mais de 4096 caracteresAo enviar o campo "capacityCriteria" com mais de 4096 caracteres
TPRRT0016O tipo de roteirização está inválido ('WEIGHT', 'VOLUME', 'BOTH')Ao enviar o campo "capacityCriteria" com valores diferentes de ('WEGHT', 'VOLUME', 'BOTH')
TPRRT0017O valor do instante da roteirização possui mais de 4096 caracteresAo enviar o campo "routingInstantType" com mais de 4096 caracteres
TPRRT0018A restrição está nulaAo enviar o campo "restriction" nula
TPRRT0019A localidade está nulaAo enviar alguma localidade nula
TPRRT0020O identificador da localidade está inválidoAo enviar o Identificador da Localidade vazio ou nulo
TPRRT0021A latitude da localidade [IDENTIFICADOR_LOCALIDADE] está nulaAo enviar a latitude de alguma localidade nula
TPRRT0022A longitude da localidade [IDENTIFICADOR_LOCALIDADE] está nulaAo enviar a longitude de alguma localidade nula
TPRRT0023A operação da localidade [IDENTIFICADOR_LOCALIDADE] está nulaAo enviar o funcionamento de alguma localidade nula
TPRRT0024O país da localidade [IDENTIFICADOR_LOCALIDADE] está nulaAo enviar o campo "country" de alguma localidade nulo
TPRRT0025O valor do identificador da localidade possui mais de 4096 caracteresAo enviar o campo "identifier" de alguma localidade com mais de 4096 caracteres
TPRRT0026O país da localidade [IDENTIFICADOR_LOCALIDADE] está inválido. O mesmo deve seguir o formato ISO 3166-1 alfa-3Ao enviar o campo "country" com mais de 3 caracteres
TPRRT0027O país da localidade [IDENTIFICADOR_LOCALIDADE] não foi encontradoAo enviar o campo "country" que não está informado no TPRCountry
TPRRT0028A latitude da localidade [IDENTIFICADOR_LOCALIDADE] está inválido a mesma precisa estar dentro do intervalo [-90; 90]Ao enviar o campo "latitude" não seguindo o padrão [-90; 90]
TPRRT0029A longitude da localidade [IDENTIFICADOR_LOCALIDADE] está inválido a mesma precisa estar dentro do intervalo [-180; 180]Ao enviar o campo "longitude" não seguindo o padrão [-180; 180]
TPRRT0030O pedido está nuloAo enviar algum pedido nulo
TPRRT0031Os pedidos são inválidosAo enviar o campo pedido vazio
TPRRT0032O identificador do pedido é obrigatórioAo enviar o identificador do pedido vazio ou nulo
TPRRT0033O peso do pedido com identificador [IDENTIFICADOR_PEDIDO] é obrigatórioAo enviar o peso do pedido nulo, caso o campo "capacityCriteria" do input seja "WEIGHT" ou "BOTH"
TPRRT0034O peso do pedido com identificador [IDENTIFICADOR_PEDIDO] deve ser maior que 0Ao enviar o peso do pedido que seja menor que 0, caso o campo "capacityCriteria" do input seja "WEIGHT" ou "BOTH"
TPRRT0035O volume do pedido com identificador [IDENTIFICADOR_PEDIDO] é obrigatórioAo enviar o campo "volume" menor que 0, caso o campo "capacityCriteria" do input seja "VOLUME" ou 'BOTH"
TPRRT0036O volume do pedido com identificador [IDENTIFICADOR_PEDIDO] deve ser maior que 0Ao enviar o campo "volume" menor que 0. caso o campo "capacityCriteria" do input seja "VOLUME"
TPRRT0037A localidade de origem do pedido [IDENTIFICADOR_PEDIDO] está nuloAo enviar a localidade de origem do pedido nula
TPRRT0038A localidade de destino do pedido [IDENTIFICADOR_PEDIDO] está nuloAo enviar a localidade de destino do pedido nula
TPRRT0039O identificador do pedido possui mais de 4096 caracteresO campo "identifier" do pedido com mais de 4096
TPRRT0040A duração de serviço de carregamento do pedido [IDENTIFICADOR_PEDIDO] não pode ser menor ou igual a 0Ao enviar o campo "serviceLoadDuration" menor que 0
TPRRT0041A duração de serviço de descarregamento pedido [IDENTIFICADOR_PEDIDO] não pode ser menor ou igual a 0Ao enviar o campo "serviceUnloadDuration" menor que 0
TPRRT0042Os veículos não podem ser nulosAo enviar o campo "vehicles" nulo
TPRRT0043Os veículos não podem ser vaziosAo enviar o campo "vehicles" vazio
TPRRT0044O identificador do veículo está inválidoAo enviar o campo "identifier" do veículo nulo ou vazio
TPRRT0045A capacidade de volume do veículo com identificador [IDENTIFICADOR_VEICULO] é obrigatórioAo enviar o campo "volumeCapacity" do veículo nula, quando o capacityCriteria é igual a VOLUME ou BOTH
TPRRT0046A capacidade de volume do veículo com identificador [IDENTIFICADOR_VEICULO] deve ser maior que 0Ao enviar o campo "volumeCapacity" do veículo é menor que 0, quando o capacityCriteria é igual a VOLUME ou BOTH
TPRRT0047A capacidade de peso do veículo com identificador [IDENTIFICADOR_VEICULO] é obrigatórioAo enviar o campo "weightCapacity" do veículo nula, quando o capacityCriteria é igual a WEIGHT ou BOTH
TPRRT0048A capacidade de peso do veículo com identificador [IDENTIFICADOR_VEICULO] deve ser maior que 0Ao enviar o campo "weightCapacity" do veículo é menor que 0, quando o capacityCriteria é igual a WEIGHT ou BOTH
TPRRT0049O identificador do veículo possui mais de 4096 caracteresAo enviar o identificador de veículo com mais de 4096 caracteres
TPRRT0050A quantidade de veículos do veículo com identificador [IDENTIFICADOR_VEICULO], se informada, deve ser maior que 0Ao enviar o campo "quantity" menor que 0
TPRRT0051O identificador do pedido [IDENTIFICADOR_PEDIDO] está duplicadoAo enviar dois pedidos com o mesmo identifier
TPRRT0052As localidades de origem e destino são iguais no pedido [IDENTIFICADOR_PEDIDO]Ao enviar uma localidade de origem e de destino com o mesmo identifier
TPRRT0053O identificador da localidade [IDENTIFICADOR_LOCALIDADE] está duplicado em outras localidadesAo enviar duas localidades quaisquer com o mesmo identifier. É analisado a igualdade de todos os campos daquela localidade.
TPRRT0054O identificador do veículo [IDENTIFICADOR_VEICULO] está duplicado com outros veículosAo enviar veículos com identificadores iguais, mas atributos diferentes
TPRRT0055Os qualificadores não estão em um formato válido (JSON)Ao enviar o campo "qualifiers" com formato diferente de uma String com um objeto JSON em texto.
TPRRT0056O máximo número de paradas de carregamento não pode ser menor ou igual a 0Ao enviar o campo "maxLoadingStops" com o valor menor ou igual a 0
TPRRT0057O máximo número de paradas de descarregamento não pode ser menor ou igual a 0Ao enviar o campo "maxUnloadingStops" com o valor menor ou igual a 0
TPRRT0058A máxima distância de paradas de descarregamento não pode ser menor que 0Ao enviar o campo "maxDistanceBetweenUnloadStops" com o valor menor a 0
TPRRT0059O pedido [IDENTIFICADOR_PEDIDO] possui início da janela de carregamento maior ou igual que o final da janela de carregamentoAo enviar o campo "pickupTimeWindowStart" maior ou igual que o campo "pickupTimeWindowEnd"
TPRRT0060O pedido [IDENTIFICADOR_PEDIDO] possui início da janela de descarregamento maior ou igual que o final da janela de descarregamentoAo enviar o campo "deliveryTimeWindowStart" maior ou igual que o campo "deliveryTimeWindowEnd"
TPRRT0061O pedido [IDENTIFICADOR_PEDIDO] possui início da janela de carregamento maior que o início da janela de descarregamentoAo enviar o campo "pickupTimeWindowStart" maior que o campo "deliveryTimeWindowStart"
TPRRT0062O pedido [IDENTIFICADOR_PEDIDO] possui início da janela de carregamento maior ou igual que o final da janela de descarregamentoAo enviar o campo "pickupTimeWindowStart" maior ou igual que o campo "deliveryTimeWindowEnd"
TPRRT0063O pedido [IDENTIFICADOR_PEDIDO] possui final da janela de carregamento maior que o final da janela de descarregamentoAo enviar o campo "pickupTimeWindowEnd" maior ou igual que o campo "deliveryTimeWindowStart"
TPRRT0064O peso do veículo [IDENTIFICADOR_VEÍCULO] para o pedido [IDENTIFICADOR_PEDIDO] ultrapassou o máximo permitido. Peso constatado [PESO_CONSTATADO] Peso máximo [PESO_MAXIMO]Quando o peso máximo do veículo ultrapassa o peso permitido pelo validador MaxWeightVehicleServiceLegValidator
TPRRT0065O volume do veículo [IDENTIFICADOR_VEÍCULO] para o pedido [IDENTIFICADOR_PEDIDO] ultrapassou o máximo permitido. Volume constatado [VOLUME_CONSTATADO]. Volume máximo [VOLUME_MAXIMO]Quando o volume máximo do veículo ultrapassa o volume permitido no validador MaxVolumeVehicleServiceLegValidator
TPRRT0066Não foi possível satisfazer a janela temporal dos pedidos [IDENTIFICADORES_PEDIDOS].Quando a janela de tempo dos pedidos estão infactiveis baseado no validador TimeWindowValidator
TPRRT0067Pedido [IDENTIFICADOR_PEDIDO] não roteirizado devido estouro da janela de carregamento/descarregamento.Quando a janela de tempo dos pedidos estão infactiveis baseado no validador PlanTimeConfigurationValidatorWrapper
TPRRT0068A rota supera a quantidade máxima de carregamentos permitidos. Carregamentos [QUANTIDADE_CARREGAMENTOS], Máx [MAX_QUANTIDADE_PERMITIDA].Quando a quantidade de carregamentos de um protótipo de rota for maior que 1.
TPRRT0069A rota supera a quantidade máxima de descarregamentos permitidos. Descarregamentos [QUANTIDADE_DESCARREGAMENTOS], Máx [MAX_QUANTIDADE_PERMITIDA].Quando a quantidade de descarregamentos de um protótipo de rota for maior que 1.
TPRRT0070A velocidade deve ser maior que 0.Ao enviar o campo "speed" com o valor menor que ou igual a 0.
TPRRT0071As opções de roteirização estão nulas.Ao enviar o campo TPRRoutingOptions nulo.
TPRRT0072O tempo mínimo de serviço não pode ser menor que zeroAo enviar o campo minServiceDuration com o valor menor que 0.
TPRRT0073O tempo máximo de serviço não pode ser menor que zeroAo enviar o campo maxServiceDuration com o valor menor que 0.
TPRRT0074Erro Interno, tente novamente e se o problema persistir contate: [EMAIL_SUPORTE].Erro caso ocorra alguma falha na roterização.
TPRRT0075O valor do instante da roteirização está inválido ('D+1', 'NOW').Ao enviar o campo "routingInstantType" com valores diferentes de ('D+1', 'NOW').
TPRRT0076O nome da localidade [IDENTIFICADOR_LOCALIDADE] possui mais de 4096 caracteres.Ao enviar o campo "name" for maior que 4096 caracteres
TPRRT0077A rota supera a quantidade máxima de cargas permitidas. Cargas [QUANTIDADE], Máx [QUANTIDADE_MÁXIMA].Quando ultrapassa o número máximo de carga
TPRRT0078A data de inicio da janela de carregamento no pedido [IDENTIFICADOR_PEDIDO]  é obrigatóriaAo enviar o campo "pickupTimeWindowStart" nulo 
TPRRT0079A data de fim da janela de descarregamento no pedido [IDENTIFICADOR_PEDIDO] é obrigatóriaAo enviar o campo "deliveryTimeWindowEnd" nulo
TPRRT0080O campo driverRestPlanType possui mais de 4096 caracteres.Ao enviar o driverRestPlanTypede veículo com mais de 4096 caracteres
TPRRT0081O tipo de plano de descanso do motorista (driverRestPlanType) está inválido. Opções válidas: 'DEFAULT', 'EXTRATIME', 'NONE').Ao enviar uma opção inválida do driverRestPlanType
TPRRT0082O tipo de roteirização (rountingType) está inválido. Opções válidas: 'ROUTING', 'SEQUENCE').Ao enviar uma opção inválida do rountingType
TPRRT0083Não existem rotas que respeitem a zona de restrição [IDENTIFICADOR DA RESTRIÇÃO] para o(s) pedido(s) [IDENTIFICADOR DO PEDIDO]Quando a rota passa por uma zona de restrição de circulação com um veículo restrito em horário de restrição ativa
TPRRT0084O retorno a estado já visitado não é permitido.Quando uma rota retorna a um estado já visitado anteriormente em um serviço de descarregamento (stateReturnForbidden deve ser TRUE em TPRRoutingRestrictions para ligar a validação)
TPRRT0085O estado (UF) da localidade [IDENTIFICADOR DA LOCALIDADE] está nulo.Quando uma localidade é integrada com o estado nulo (stateReturnForbidden deve ser TRUE em TPRRoutingRestrictions para ligar a validação)
TPRRT0086O estado (UF) da localidade [IDENTIFICADOR DA LOCALIDADE] está inválido, o mesmo deve ser composto por duas letras.Quando a UF da localidade possui tamanho diferente de 2 (stateReturnForbidden deve ser TRUE em TPRRoutingRestrictions para ligar a validação)
TPRRT0087O estado da localidade [IDENTIFICADOR DA LOCALIDADE] não é um estado válido.Quando a UF da localidade não corresponde a uma das UFs do Brasil (stateReturnForbidden deve ser TRUE em TPRRoutingRestrictions para ligar a validação)
TPRRT0088O identificador do veículo da restrição da Localidade [IDENTIFICADOR DA LOCALIDADE] é obrigatório.Quando o identificador do veículo restrito for nulo ou vazio.
TPRRT0089O identificador do veículo da restrição da Localidade [IDENTIFICADOR DA LOCALIDADE] possui mais de 4096 caracteres.Quando o identificador do veículo restrito ultrapassar 4096 caracteres
TPRRT0090A restrição do Veículo [IDENTIFICADOR DO VEÍCULO] na Localidade [IDENTIFICADOR DA LOCALIDADE] não existe na lista de veículos providos.Quando houver restrição de um veículo em uma localidade que não consta na lista de veículos do input.
TPRRT0091O Veículo [IDENTIFICADOR DO VEÍCULO] é restrito na Localidade [IDENTIFICADOR DA LOCALIDADE].Mensagem de rejeite quando não encontra veículos compatíveis e o motivo é a restrição de veículos por localidade.
TPRRT0092A Localidade [IDENTIFICADOR DA LOCALIDADE] com operação customizada está com o campo inválido.Ao enviar uma localidade com operação customizada sem enviar uma lista de horários, ou uma lista vazia.
TPRRT0093O dia da semana da Localidade [IDENTIFICADOR DA LOCALIDADE] está inválido. As opções são: [SUN, MON, TUE, WED, THU, FRI, SAT].Ao enviar um dia de semana que não satisfaça as opções.
TPRRT0094O horário de início da operação customizada da Localidade [IDENTIFICADOR DA LOCALIDADE] está inválido. Os valores permitidos devem estar no intervalo: 00:00 - 23:59Ao enviar um tamanho diferente de 5, nulo, vazio ou fora do intervalo.
TPRRT0095O horário de fim da operação customizada da Localidade [IDENTIFICADOR DA LOCALIDADE] está inválido. Os valores permitidos devem estar no intervalo: 00:00 - 23:59Ao enviar um tamanho diferente de 5, nulo, vazio ou fora do intervalo.
TPRRT0096O horário de início da operação customizada da Localidade [IDENTIFICADOR DA LOCALIDADE] deve ser menor que o horário de fim.Ao enviar o tamanho do início maior que o do fim, ou o do fim menor que o do início.
TPRRT0097Há intersecções de horários de operação customizado da Localidade [IDENTIFICADOR DA LOCALIDADE] no dia [DIA_SEMANA]Quando for informado algum horário de funcionamento customizado com intersecções.
TPRRT0098Opção inválida. As opções válidas são: Priorizar minha disponibilidade de veículos ou Reduzir a quantidade de rotasQuando for informado um valor que não corresponde as opções do ENUM.
TPRRT0099O pedido [IDENTIFICADOR_PEDIDO] possui intervalo de início da janela de carregamento e final da janela de descarregamento maior que 90 dias

O período entre o início da janela de carregamento e o fim da janela de

descarregamento deve ser no máximo 90 dias.

TPRTK0032A chave do token não foi informada.Retorno inválido para requisição que não envia o header "TPR_AUTHORIZATION" com a chave do token.
TPRTK0033A chave do token informada não foi encontrada.Retorno inválido para requisição que enviar uma chave no header "TPR_AUTHORIZATION" que não existe na base de dados.
TPRTK0034Seu token expirou. Entre em contato com: [EMAIL_SUPORTE]Retorno inválido para requisição que enviar uma chave no header "TPR_AUTHORIZATION" que não tenha um plano vigente.
TPRTK0035Seu plano mensal já foi consumido, para continuar utilizando o produto acesse 'Meu Plano' e configure o consumo fora do pacote.Retorno inválido para requisição que enviar uma chave no header "TPR_AUTHORIZATION" que já tenha consumido toda quota de rotas e/ou roteirizações do plano vigente.
TPRTK0036O seu período de pré-trial acabou! Você ainda pode experimentar o TOTVS PLANEJAMENTO DE ROTAS por 30 dias, gratuitamente, assinando o Trial através da TOTVS Store [Link TOTVS Store].Retorno inválido para requisição que enviar uma chave no header "TPR_AUTHORIZATION" que já tenha consumido toda quota de roteirizações ou finalizado o tempo de "TRIAL"
TPRTK0037O seu trial chegou ao fim. Para continuar usando o TOTVS Planejamento de Rotas, faça a contratação acessando "https://partner.totvs.store/br/produto/totvs-planejamento-de-rotas.html".Retorno inválido para requisição que enviar uma chave no header "TPR_AUTHORIZATION" que já tenha finalizado o tempo de "TRIAL"

Âncora
TRPFrota_Ideal
TRPFrota_Ideal

Frota Ideal: A roteirização com a frota ideal, ocorre quando não limitamos as quantidades disponíveis dos veículos que serão utilizados em uma determinada roteirização, definimos apenas os tipos destes, por exemplo:

Dada uma cesta de pedidos com vinte pedidos de 5.000 kg sem janela de coleta ou entrega e os veículos disponíveis são Carretas com capacidade de 25.000 kg e Trucks com capacidade de 10.000 kg: 

Se eu não limito a quantidade disponível de veículos, o sistema roteirizara quatro viagens rotas com Carretas, e esta é a frota ideal para este cenário;

Se eu limito os veículos disponíveis em duas Carretas e vinte Truckso sistema roteirizara sete viagensrotas, duas com Carretas e cinco com Trucks e esta é a melhor frota factível para este cenário, porem não é a frota ideal;

Âncora
boolean_tab
boolean_tab

Tabela de Boolean:

Valor Assumido

Valor recebido

True

"true"

true12-1-2""
False

false

0"false"null


Anexos

Anexos
oldfalse