API de Integração - devbasetecnologia/devmobility GitHub Wiki
- API de Integração
- Calcular Valores de Solicitação de Viagem
- Calcular Valores de Solicitação de Entrega
- Criação de Solicitação de Viagem
- Criação de Solicitação de Entrega
- Consultar Solicitação
- Cancelar Solicitação
- Consultar Status da Solicitação
- Consultar Agrupamentos de Veículo
- Consultar Formas de Pagamento
- Consultar Forma de Pagamento por ServicoItem
- Consultar Forma de Pagamento por Serviço e Região
- Consultar Cliente
- Consultar Prestador
- Consultar Empresa
- Cadastrar Pré-Cliente
- Excluir Vínculo do Cliente Com a Empresa
- Status Localização
- Status Solicitação por Etapas
- Consultar Valor Final Solicitacão
- Consultar Configurações
- Avaliar Motorista
- Datas da Solicitação de Entrega
- Status da Solicitação de Entrega
- Histórico Status da Solicitação de Entrega
- Referência
- Códigos de Erros da API
Este é o manual para que você possa integrar sua empresa à Plataforma Digital da DevBase.
Sugerimos que este documento seja lido com atenção, e usado como guia de referência para quaisquer dúvidas não somente no momento da implementação da integração de sua plataforma com a API da DevBase, mas para quaisquer mudanças nos sistemas.
O conteúdo deste Manual de Integração se destina a programadores e desenvolvedores de plataformas de mobilidade urbana e/ou entregas que desejam realizar a criação de solicitações por integração via API no sistemas da família DevMobility e DevEntregas.
Neste documento o desenvolvedor/analista terá acesso a todos os passos e processos referentes à integração via as funcionalidades da API.
Sugerimos também que, periodicamente e sempre que for iniciar um desenvolvimento relacionado à criação de solicitações, utilize este portal para acompanhamento de mudanças e versionamento dos produtos de nossa plataforma.
Todo consumo da webapi deve ser realizado acompanhando do envio das credenciais de autenticação. O sistema de autenticação utilizado é o Basic Authentication (Basic Auth), e deve ser feito em uma requisição segura HTTPS (TLS 1.2).
Suas credencias de autenticação para o ambiente de produção devem ser solicitadas diretamente para o administrador da plataforma.
- "ServicoItemID": ID do Serviço por região (solicitar ao administrador da plataforma);
- "TipoPagamentoID": ID da forma de pagamento (solicitar ao administrador da plataforma);
- "CategoriaMercadoriaID" (Somente para solicitação de entregas): ID da categoria de mercadoria (solicitar ao administrador da plataforma);
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/CalcularValoresViagem Método: POST
Ex. de consumo:
Header:
POST /api/External/CalcularValoresViagem HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic aHDCQHNlVXNyVDV0OkcqT1U2czQwOCYldXNrMHMkIypnY2xqZg==
Content-Type: application/json
Cookie: ARRAffinity=0de3dfe0f956df48d150a3cc8506c1efae6a5e5a5e673891639f0556803020f3
JSON de requisição:
{
"ClienteID":"1",
"EnderecoOrigem":"R. Tv. 1, 61 - Leblon, Catalão - GO, Brasil",
"ListaDestinoCidade":[
{
"Latitude": "-18.164714",
"Longitude": "-47.94141800000001"
}]
}
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
ServicoItemID | Inteiro | Não | O código do serviço desejado (opcional, se não informado, serão listados todos os serviços disponíveis. | |
ClienteID | Inteiro | Sim * | Obrigatório para acessos de empresa (* Não é necessário informar esse campo se o cadastro de integração for de cliente) . | |
Latitude | Texto | 20 | Não | Latitude do endereço. ¹ |
Longitude | Texto | 20 | Não | Longitude do endereço. ¹ |
EnderecoOrigem | Texto | 300 | Sim | |
ListaDestinoCidade | List<EnderecoDestino> | Sim | Lista de destinos. Obrigatória a informação de ao menos 1 destino, exceto quando o sistema estiver com a funcionalidade PermiteInformarDestinoDepois habilitada; neste caso, a lista pode ser enviada vazia. | |
TipoPagamentoID | Inteiro | Não | ID do tipo de pagamento. Somente para tipos de pagamento de Viagem. Caso o tipo de pagamento não seja para viagem e não esteja vinculado no serviço por região, será retornado um erro. |
¹ Se latitude/longitude não forem informadas, serão definidas automaticamente com base nas informações do endereço.
Propriedade | Tipo | Tamanho | Obrigatório | Descrição Propriedade |
---|---|---|---|---|
Endereco | Texto | 300 | Sim | Logradouro com número. |
Latitude | Texto | 20 | Não | Latitude do endereço. ¹ |
Longitude | Texto | 20 | Não | Longitude do endereço. ¹ |
¹ Se latitude/longitude não forem informadas, serão definidas automaticamente com base nas informações do endereço.
Ex. de retorno bem sucedido:
{
"RetornoCalculoValores": {
"Latitude": "-18.1498",
"Longitude": "-47.93871",
"EnderecoOrigem": "Travessa Um, Residencial Leblon, Catalão - GO, 75703-490, Brasil",
"ListaDestinoCidade": [
{
"Endereco": "Rua João Boaventura, 217, São João, Catalão - GO, 75703-260, Brasil",
"Peso": null,
"AlturaCM": null,
"LarguraCM": null,
"ComprimentoCM": null,
"Latitude": "-18.16493",
"Longitude": "-47.9415"
}
],
"ListaServicoValor": [
{
"ServicoItemID": 1,
"ServicoNome": "X",
"Valor": 7.99
}
]
}
}
Ex. de retorno com erro:
{
"message": "Endereço de origem não econtrado. Por favor, informe um endereço de origem válido."
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/CalcularValoresEntrega Método: POST
Ex. de consumo:
Header:
POST /api/External/CalcularValoresEntrega HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic aHDCQHNlVXNyVDV0OkcqT1U2czQwOCYldXNrMHMkIypnY2xqZg==
Content-Type: application/json
Cookie: ARRAffinity=0de3dfe0f956df48d150a3cc8506c1efae6a5e5a5e673891639f0556803020f3
JSON de requisição:
{
"ClienteID":"1",
"ServicoItemID":"201",
"EnderecoOrigem":"R. Tv. 1, 61 - Leblon, Catalão - GO, Brasil",
"AgrupamentoVeiculoID":"2",
"ListaDestinoCidade":[
{
"Endereco": "Rua João Boaventura, 217, São João, Catalão - GO, 75703-260, Brasil",
"Peso":"1",
"AlturaCM":"1",
"LarguraCM":"1",
"ComprimentoCM":"1"
}]
}
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
ClienteID | Inteiro | Sim * | Obrigatório para acessos de empresa (* Não é necessário informar esse campo se o cadastro de integração for de cliente). | |
ServicoItemID | Inteiro | Não | O código do serviço desejado (opcional, se não informado, serão listados todos os serviços disponíveis). | |
AgrupamentoVeiculoID | Inteiro | Sim | O código do agrupamento de veículos. | |
Latitude | Texto | 20 | Não | Latitude do endereço. ¹ |
Longitude | Texto | 20 | Não | Longitude do endereço. ¹ |
EnderecoOrigem | Texto | 300 | Sim | |
ListaDestinoCidade | List<EnderecoDestino> | Sim | Lista de destinos. Obrigatória a informação de ao menos 1 destino. | |
TipoPagamentoID | Inteiro | Não | ID do tipo de pagamento. Somente para tipos de pagamento de Entrega. Caso o tipo de pagamento não seja para entrega não esteja vinculado no serviço por região, será retornado um erro. |
¹ Se latitude/longitude não forem informadas, serão definidas automaticamente com base nas informações do endereço.
Propriedade | Tipo | Tamanho | Obrigatório | Descrição Propriedade |
---|---|---|---|---|
Endereco | Texto | 300 | Sim | Logradouro com número. |
Latitude | Texto | 20 | Não | Latitude do endereço. ¹ |
Longitude | Texto | 20 | Não | Longitude do endereço. ¹ |
Peso | Decimal | 15,3 | Sim | Peso da mercadoria |
AlturaCM | Inteiro | Sim ² | Altura da mercadoria | |
LarguraCM | Inteiro | Sim ² | Largura da mercadoria | |
ComprimentoCM | Inteiro | Sim ² | Comprimento da mercadoria |
¹ Se latitude/longitude não forem informadas, serão definidas automaticamente com base nas informações do endereço.
² Obrigatórios caso o serviço esteja parametrizado para exigir informação das medidas.
Ex. de retorno bem sucedido:
{
"RetornoCalculoValores": {
"Latitude": "-18.1498",
"Longitude": "-47.93871",
"EnderecoOrigem": "Travessa Um, Residencial Leblon, Catalão - GO, 75703-490, Brasil",
"ListaDestinoCidade": [
{
"Endereco": "Rua João Boaventura, 217, São João, Catalão - GO, 75703-260, Brasil",
"Peso": 1.0,
"AlturaCM": null,
"LarguraCM": null,
"ComprimentoCM": null,
"Latitude": "-18.16483",
"Longitude": "-47.94152"
}
],
"ListaServicoValor": [
{
"ServicoItemID": 201,
"ServicoNome": "Entrega Agora",
"Valor": 24.67
}
]
}
}
Ex. de retorno com erro:
{
"message": "Veículos não compatíveis com a carga definida. Por favor verifique os volumes (tamanho/peso/quantidade) e tente novamente."
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/CriarSolicitacaoViagem Método: POST
Ex. de consumo:
Header:
POST /api/External/CriarSolicitacaoViagem HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic aHDCQHNlVXNyVDV0OkcqT1U2czQwOCYldXNrMHMkIypnY2xqZg==
Content-Type: application/json
Cookie: ARRAffinity=0de3dfe0f956df48d150a3cc8506c1efae6a5e5a5e673891639f0556803020f3
JSON de requisição:
{
"ClienteID": 3,
"ServicoItemID": 5,
"TipoPagamentoID": 4,
"Valor": 12.54,
"enderecoOrigem": {
"Endereco": "Rua da Padroeira, 200 - Centro",
"CEP": "13218230",
"Cidade": "Jundiaí ",
"EstadoSigla": "SP",
"Observacao": "Próximo à padaria"
},
"lstDestino": [
{
"Endereco": "R. Euclídes da Cunha, 70 - Centro, Jundiaí - SP, 13201-833",
"CEP": "13201-833",
"Cidade": "Jundiaí",
"EstadoSigla": "SP",
"Observacao": "PA Unimed"
},
{
"Endereco": "R. Onze de Junho, 169 - Centro",
"CEP": "13201-038",
"Cidade": "Jundiaí",
"EstadoSigla": "SP"
}
]
}
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
ServicoItemID | Inteiro | Sim | O código do serviço desejado. | |
ClienteID | Inteiro | Sim * | Obrigatório para acessos de empresa (* Não é necessário informar esse campo se o cadastro de integração for de cliente) . | |
enderecoOrigem | EnderecoSolicitacao | Sim | ||
lstDestino | List<EnderecoSolicitacao> | Sim | Lista de destinos. Obrigatória a informação de ao menos 1 destino, exceto quando o sistema estiver com a funcionalidade PermiteInformarDestinoDepois habilitada; neste caso, a lista pode ser enviada vazia. | |
DataHoraAgendamento | Datahora | Não | Data/hora para agendamento da solicitação. Opcional. Se não informado, a solicitação será executada imediatamente. | |
Valor | Decimal | 15,2 | Não | Se o campo "Valor" não for informado, será calculado automaticamente pelo sistema com base nos parâmetros de preço do serviço. |
TipoPagamentoID | Inteiro | Sim | ID do tipo de pagamento. |
Propriedade | Tipo | Tamanho | Obrigatório | Descrição Propriedade |
---|---|---|---|---|
CEP | Texto | 9 | Sim | CEP do endereço. |
Endereco | Texto | 300 | Sim | Logradouro com número. |
Cidade | Texto | 100 | Sim | Cidade do endereço. |
EstadoSigla | Texto | 100 | Sim | Sigla do estado (SP, RJ, MG, etc) |
Latitude | Texto | 20 | Não | Latitude do endereço. ¹ |
Longitude | Texto | 20 | Não | Longitude do endereço. ¹ |
Observacao | Texto | 300 | Não |
¹ Se latitude/longitude não forem informadas, serão definidas automaticamente com base nas informações do endereço.
Ex. de retorno bem sucedido:
{
"Resultado": {
"ok": true,
"descricao": "Solicitação criada com sucesso.",
"resultado": {
"SolicitacaoID": 2086,
"DataHoraCriacao": "2020-05-22T18:33:24.1178131"
}
}
}
Ex. de retorno com erro:
{
"Resultado": {
"ok": false,
"descricao": "Verifique a mensagem de erro.",
"resultado": {
"codigo": 131,
"mensagemErro": "enderecoOrigem não pode ser nulo."
}
}
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/CriarSolicitacaoEntrega Método: POST
Ex. de consumo:
Header:
POST /api/External/CriarSolicitacaoEntrega HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic aHDCQHNlVXNyVDV0OkcqT1U2czQwOCYldXNrMHMkIypnY2xqZg==
Content-Type: application/json
Cookie: ARRAffinity=0de3dfe0f956df48d150a3cc8506c1efae6a5e5a5e673891639f0556803020f3
JSON de requisição:
{
"ClienteID": 10,
"ServicoItemID": 201,
"TipoPagamentoID": 25,
"Valor": 16.14,
"enderecoOrigem": {
"Endereco": "Rua do Rosário, 100 - Centro",
"CEP": "13218230",
"Cidade": "Jundiaí ",
"EstadoSigla": "SP",
"Observacao": "Portão cinza",
"NomeContato": "João",
"CelularContato": "11937732528",
"EmailContato": "[email protected]"
},
"lstDestino": [
{
"Endereco": "Avenida Antônio Frederico Ozanan, 6000, Vila Rio Branco",
"CEP": "13215900",
"Cidade": "Jundiaí",
"EstadoSigla": "SP",
"Observacao": "Casa dos fundos",
"NomeContato": "José",
"CelularContato": "11937362598",
"EmailContato": "[email protected]",
"lstMercadoria": [
{
"CategoriaMercadoriaID": 1,
"Quantidade": 1,
"Peso": 1.35,
"Valor": 1200.35,
"Altura": 65,
"Largura": 112,
"Comprimento": 15,
"Descricao": "Televisão"
}
]
},
{
"Endereco": "Rua Coronel Boaventura Mendes Pereira, 45 - Vila Boaventura",
"CEP": "13201-801",
"Cidade": "Jundiaí",
"EstadoSigla": "SP",
"lstMercadoria": [
{
"CategoriaMercadoriaID": 1,
"Quantidade": 1,
"Peso": 0.45,
"Valor": 750.99,
"Altura": 20,
"Largura": 10,
"Comprimento": 1,
"Descricao": "Celular"
},
{
"CategoriaMercadoriaID": 2,
"Quantidade": 2,
"Peso": 0.312,
"Valor": 35,
"Altura": 2,
"Largura": 2,
"Comprimento": 20,
"Descricao": "Cabos"
}
]
}
]
}
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
ServicoItemID | Inteiro | Sim | O código do serviço desejado. | |
ClienteID | Inteiro | Sim * | Obrigatório para acessos de empresa (* Não é necessário informar esse campo se o cadastro de integração for de cliente) . | |
enderecoOrigem | EnderecoSolicitacao | Sim | ||
lstDestino | List<EnderecoSolicitacao> | Sim | Lista de destinos. Obrigatória a informação de ao menos 1 destino. | |
DataHoraAgendamento | Datahora | Não | Data/hora para agendamento da solicitação. Opcional. Se não informado, a solicitação será executada imediatamente. | |
Valor | Decimal | 15,2 | Não | Se o campo "Valor" não for informado, será calculado automaticamente pelo sistema com base nos parâmetros de preço do serviço. |
TipoPagamentoID | Inteiro | Sim | ID do tipo de pagamento. |
Propriedade | Tipo | Tamanho | Obrigatório | Descrição Propriedade |
---|---|---|---|---|
CEP | Texto | 9 | Sim | CEP do endereço. |
Endereco | Texto | 300 | Sim | Logradouro com número. |
Cidade | Texto | 100 | Sim | Cidade do endereço. |
EstadoSigla | Texto | 100 | Sim | Sigla do estado (SP, RJ, MG, etc) |
Latitude | Texto | 20 | Não | Latitude do endereço. ¹ |
Longitude | Texto | 20 | Não | Longitude do endereço. ¹ |
Observacao | Texto | 300 | Não | |
NomeContato | Texto | 150 | Não | |
EmailContato | Texto | 100 | Não | |
CelularContato | Texto | 20 | Não | |
lstMercadoria | List<Mercadoria> | Sim * | Obrigatoriedade definida de acordo com a parametrização do Serviço. Se não obrigatório, será desconsiderado. |
¹ Se latitude/longitude não forem informadas, serão definidas automaticamente com base nas informações do endereço.
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
Descricao | Texto | 150 | Sim | Descrição da mercadoria. |
Altura | Inteiro | Sim ¹ | Altura da mercadoria | |
Largura | Inteiro | Sim ¹ | Largura da mercadoria | |
Comprimento | Inteiro | Sim ¹ | Comprimento da mercadoria | |
Quantidade | Inteiro | Sim | Quantidade de itens. | |
Peso | Decimal | 15,3 | Sim | Peso da mercadoria |
Valor | Decimal | 15,2 | Sim | Valor da mercadoria. |
CategoriaMercadoriaID | Inteiro | Sim | ID da categoria de mercadoria. |
¹ Obrigatórios caso o serviço esteja parametrizado para exigir informação das medidas.
Ex. de retorno bem sucedido:
{
"Resultado": {
"ok": true,
"descricao": "Solicitação criada com sucesso.",
"resultado": {
"SolicitacaoID": 2087,
"DataHoraCriacao": "2020-05-22T18:36:48.1178131"
}
}
}
Ex. de retorno com erro:
{
"Resultado": {
"ok": false,
"descricao": "Verifique a mensagem de erro.",
"resultado": {
"codigo": 102,
"mensagemErro": "lstMercadoria - ServicoItemID exige que sejam informadas as medidas (Altura, Largura e Comprimento) das mercadorias."
}
}
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/Solicitacao?solicitacaoID={id} Método: GET
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
solicitacaoID | Inteiro | Sim |
Ex. de consumo:
Header:
GET /api/External/Solicitacao?solicitacaoID=4 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic aHDCQHNlVXNyVDV0OkcqT1U2czQwOCYldXNrMHMkIypnY2xqZg==
Content-Type: application/json
Cookie: ARRAffinity=0de3dfe0f956df48d150a3cc8506c1efae6a5e5a5e673891639f0556803020f3
Ex. de retorno bem sucedido:
{
"Solicitacao": [
{
"crd_numero": 26083,
"crd_nome_motorista": "Julio Camposilvan",
"crd_placa_veiculo": "AAA1A11",
"crd_inicio": "2024-11-13T18:47:35.88",
"crd_final": "2024-11-13T18:47:38.28",
"crd_valor_por_tempo": 0.30,
"crd_valor_por_distancia": 1.10,
"crd_tempo": 0.04,
"crd_distancia": 1.08,
"crd_valor": 10.50,
"crd_status": 4
}
]
}
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
solicitacaoID | Inteiro | Sim | ||
tipo | String | 1 | Sim | Indica se o cancelamento foi por iniciativa do Cliente ("C") ou do prestador ("P"). Valores aceitos: "C" ou "P". |
cancEngano | Boolean | Não | Indica se o cancelamento foi feito devido ao aceite da solicitação por engano. Considerado apenas em cancelamentos por iniciativa do prestador. Default: false. | |
cliNaoEncontrado | Boolean | Não | Indica se o cancelamento foi feito devido ao cliente não ter sido encontrado no endereço informado. Considerado apenas em cancelamentos por iniciativa do prestador.Default: false. |
Ex. de consumo:
Header:
POST /api/External/CancelarSolicitacao?solicitacaoID=4&tipo=P&cancEngano=false&cliNaoEncontrado=true HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic aHDCQHNlVXNyVDV0OkcqT1U2czQwOCYldXNrMHMkIypnY2xqZg==
Content-Type: application/json
Cookie: ARRAffinity=0de3dfe0f956df48d150a3cc8506c1efae6a5e5a5e673891639f0556803020f3
Ex. de retorno bem sucedido:
{
"message": "OK"
}
Ex. de outros retornos:
{
"message": "Solicitação não encontrada"
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/SolicitacaoStatus?solicitacaoID={id} Método: GET
Ex. de consumo:
Header:
GET /api/External/SolicitacaoStatus?solicitacaoID=67563 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"SolicitacaoStatus": {
"SolicitacaoID": 10,
"TipoSolicitacaoID": 4,
"TipoSolicitacaoDesc": "Entrega",
"StatusSolicitacaoID": 4,
"StatusSolicitacaoDesc": "Solicitação Finalizada"
}
}
Ex. de retorno com erro:
{
"Message": "The request is invalid.",
"MessageDetail": "The parameters dictionary contains a null entry for parameter 'solicitacaoID' of non-nullable type 'System.Int64' for method 'System.Net.Http.HttpResponseMessage GetSolicitacaoStatus(Int64)' in 'WebApi.Controllers.ExternalController'. An optional parameter must be a reference type, a nullable type, or be declared as an optional parameter."
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/AgrupamentoVeiculo Método: GET
Ex. de consumo:
Header:
GET /api/External/AgrupamentoVeiculo HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"AgrupamentoVeiculo": [
{
"AgrupamentoVeiculoID": 1,
"AgrupamentoVeiculoDesc": "Moto",
"ImagemAgrupamento": "https://sacluber.blob.core.windows.net/imagens/moto-de-entrega-preto.png",
"Ativo": true,
"Mensagem": "Entrega Expressa (mesmo dia). Pequenos volumes de até 40 x 30 x 30 cm e 20 kg.",
"InformaMedidas": false,
"InformaPeso": false,
"FatorCubagem": 300,
"InformaProdutos": false,
"ProdutoUnico": false
},
{
"AgrupamentoVeiculoID": 2,
"AgrupamentoVeiculoDesc": "Cargas",
"ImagemAgrupamento": "https://sacluber.blob.core.windows.net/imagens/truck-preto.png",
"Ativo": true,
"Mensagem": "Entregas de cargas e pacotes de maior volume/dimensão. Serviços de entrega no mesmo dia, ou dia seguinte (consultar disponibilidade na cidade de origem).",
"InformaMedidas": true,
"InformaPeso": true,
"FatorCubagem": 300,
"InformaProdutos": true,
"ProdutoUnico": false
}
]
}
Ex. de retorno com erro:
{
"error": {
"code": 401,
"message": "Não Autorizado: Acesso negado devido a credenciais inválidas."
}
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/FormaPagamento?clienteID={id}&servicoItemID={id}&valor={decimal} Método: GET
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
clienteID | Inteiro | Sim | ||
servicoItemID | Inteiro | Não | Se informado, lista as formas de pagamento disponíveis para o serviço específico. Se não informado, lista todas as formas de pagamento de todos os serviços. | |
valor | Decimal | 15,2 | Não | Se informado, só lista a forma de pagamento Saldo em Carteira comportar o valor (i.e., se o valor do saldo for igual ou superior o valor informado). |
Ex. de consumo:
Header:
GET /api/External/FormaPagamento?clienteID=314&servicoItemID=213&valor=10.23 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"FormaPagamento": [
{
"BandeiraCartaoImg": null,
"objCartaoCredito": null,
"TipoPagamentoID": 4,
"TipoPagamentoDesc": "Maquina de Cartão",
"Ativo": false,
"DependePrestador": false,
"TaxaFixa": null,
"TaxaPorcentagem": null,
"PossePagamento": 2,
"Viagem": false,
"Entrega": false,
"ReceberColetaOuEntrega": null,
"CalcularRetorno": false
},
{
"BandeiraCartaoImg": null,
"objCartaoCredito": null,
"TipoPagamentoID": 5,
"TipoPagamentoDesc": "Dinheiro",
"Ativo": false,
"DependePrestador": false,
"TaxaFixa": null,
"TaxaPorcentagem": null,
"PossePagamento": 2,
"Viagem": false,
"Entrega": false,
"ReceberColetaOuEntrega": null,
"CalcularRetorno": true
},
{
"BandeiraCartaoImg": null,
"objCartaoCredito": null,
"TipoPagamentoID": 25,
"TipoPagamentoDesc": "Boleto",
"Ativo": false,
"DependePrestador": false,
"TaxaFixa": null,
"TaxaPorcentagem": null,
"PossePagamento": 3,
"Viagem": false,
"Entrega": false,
"ReceberColetaOuEntrega": null,
"CalcularRetorno": false
},
{
"BandeiraCartaoImg": null,
"objCartaoCredito": null,
"TipoPagamentoID": 26,
"TipoPagamentoDesc": "Transferência",
"Ativo": false,
"DependePrestador": false,
"TaxaFixa": null,
"TaxaPorcentagem": null,
"PossePagamento": 3,
"Viagem": false,
"Entrega": false,
"ReceberColetaOuEntrega": null,
"CalcularRetorno": false
},
{
"BandeiraCartaoImg": null,
"objCartaoCredito": null,
"TipoPagamentoID": 27,
"TipoPagamentoDesc": "Maquina de Cartão (pagamento na coleta)",
"Ativo": false,
"DependePrestador": false,
"TaxaFixa": null,
"TaxaPorcentagem": null,
"PossePagamento": 2,
"Viagem": false,
"Entrega": false,
"ReceberColetaOuEntrega": null,
"CalcularRetorno": true
},
{
"BandeiraCartaoImg": null,
"objCartaoCredito": null,
"TipoPagamentoID": 29,
"TipoPagamentoDesc": "Faturado (sem retorno)",
"Ativo": false,
"DependePrestador": false,
"TaxaFixa": null,
"TaxaPorcentagem": null,
"PossePagamento": 3,
"Viagem": false,
"Entrega": false,
"ReceberColetaOuEntrega": null,
"CalcularRetorno": false
},
{
"BandeiraCartaoImg": null,
"objCartaoCredito": null,
"TipoPagamentoID": 30,
"TipoPagamentoDesc": "Faturado (com retorno)",
"Ativo": false,
"DependePrestador": false,
"TaxaFixa": null,
"TaxaPorcentagem": null,
"PossePagamento": 3,
"Viagem": false,
"Entrega": false,
"ReceberColetaOuEntrega": null,
"CalcularRetorno": true
}
]
}
Ex. de retorno com erro:
{
"error": {
"code": 401,
"message": "Não Autorizado: Acesso negado devido a credenciais inválidas."
}
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/PagamentoPorServicoItem?tipoPagamentoID={id}&servicoItemID={id}&valor={decimal} Método: GET
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
tipoPagamentoID | Inteiro | Sim | ||
servicoItemID | Inteiro | Não | Se informado, só retorna os detalhes da forma de pagamento se ela estiver ativa para o servicoItem informado. Caso contrário, lista os detalhes se a forma de pagamento estiver aprovada para pelo menos um serviço. | |
valor | Decimal | 15,2 | Não | Se informado, só lista a forma de pagamento Saldo em Carteira comportar o valor (i.e., se o valor do saldo for igual ou superior o valor informado). |
Ex. de consumo:
Header:
GET /api/External/PagamentoPorServicoItem?tipoPagamentoID=4&servicoItemID=213&valor=10.23 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"TipoPagamento": {
"RecargaAtiva": true,
"TipoPagamentoID": 4,
"TipoPagamentoDesc": "Maquina de Cartão",
"Ativo": true,
"DependePrestador": true,
"TaxaFixa": 0.00,
"TaxaPorcentagem": null,
"PossePagamento": null,
"Viagem": true,
"Entrega": true,
"ReceberColetaOuEntrega": "E",
"CalcularRetorno": false
}
}
Ex. de retorno com erro:
{
"error": {
"code": 401,
"message": "Não Autorizado: Acesso negado devido a credenciais inválidas."
}
}
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
tipoPagamentoID | Inteiro | Sim | ||
servicoID | Inteiro | Não | Se informado, só retorna os detalhes da forma de pagamento se ela estiver ativa para o serviço informado. Caso contrário, lista os detalhes se a forma de pagamento estiver aprovada para pelo menos um serviço. | |
regiaoID | Inteiro | Não | Se informado, só retorna os detalhes da forma de pagamento se ela estiver ativa para a região informada. Caso contrário, lista os detalhes se a forma de pagamento estiver aprovada em pelo menos uma região. | |
clienteID | Inteiro | Não | Se informado, só retorna os detalhes da forma de pagamento se ela estiver disponível para o cliente informado. Caso contrário, lista os detalhes se a forma de pagamento estiver disponível para pelo menos um cliente. |
Ex. de consumo:
Header:
GET /api/External/PagamentoPorServicoERegiao?tipoPagamentoID=4&servicoID=1®iaoID=1&clienteID=314 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"TipoPagamento": {
"RecargaAtiva": true,
"TipoPagamentoID": 4,
"TipoPagamentoDesc": "Maquina de Cartão",
"Ativo": true,
"DependePrestador": true,
"TaxaFixa": 0.00,
"TaxaPorcentagem": null,
"PossePagamento": null,
"Viagem": true,
"Entrega": true,
"ReceberColetaOuEntrega": "E",
"CalcularRetorno": false
}
}
Ex. de retorno com erro:
{
"error": {
"code": 401,
"message": "Não Autorizado: Acesso negado devido a credenciais inválidas."
}
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/Cliente?documento={documento}&telefone={telefone} Método: GET
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
documento | String | Não | ||
telefone | String | Não |
Ex. de consumo:
Header:
GET /api/External/Cliente?telefone=19997298312 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"Resultado": {
"ok": true,
"descricao": "Cliente",
"resultado": {
"ClienteID": 311,
"ClienteNome": "Cliente Teste 311",
"Documento": "36677705889",
"DataCadastro": "2022-01-03T22:56:14.3",
"Email": "[email protected]",
"Status": "Ativo",
"Plataforma": "Android",
"Genero": "Masculino",
"Versao": "b193-v5.1.2",
"Saldo": 0.00
}
}
}
Ex. de retorno com erro:
{
"Resultado": {
"ok": false,
"descricao": "Verifique a mensagem de erro.",
"resultado": {
"codigo": 121,
"mensagemErro": "ClienteID informado não foi encontrado no cadastro."
}
}
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/Prestador?documento={documento}&telefone={telefone} Método: GET
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
documento | String | Não | ||
telefone | String | Não |
Ex. de consumo:
Header:
GET /api/External/Prestador?documento=49492128004 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"Resultado": {
"ok": true,
"descricao": "Prestador",
"resultado": {
"PrestadorID": 311,
"PrestadorNome": "Prestador Teste 311",
"Documento": "36677705889",
"DataCadastro": "2022-01-03T22:56:14.3",
"Email": "[email protected]",
"Status": "Ativo",
"Plataforma": "Android",
"Genero": "Masculino",
"Versao": "b193-v5.1.2",
"Saldo": 0.00
}
}
}
Ex. de retorno com erro:
{
"Resultado": {
"ok": false,
"descricao": "Verifique a mensagem de erro.",
"resultado": {
"codigo": 121,
"mensagemErro": "PrestadorID informado não foi encontrado no cadastro."
}
}
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/Empresas?empresaID={empresaID} Método: GET
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
empresaID | Integer | Não |
Ex. de consumo:
Header:
GET /api/External/Empresas?empresaID=60 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"Empresas": [
{
"EmpresaID": 60,
"EmpresaNome": "Empresa Várzea",
"CNPJ": "12.312.312/3123-12",
"FilialID": 1,
"FilialNome": "Matriz",
"RegiaoID": 1,
"RegiaoNome": "Central",
"EstadoDesc": "SÃO PAULO",
"CidadeDesc": "VÁRZEA PAULISTA",
"LimiteQtdeCorridas": 1000,
"LimiteValor": 1000.00,
"Ativo": "Sim",
"DTHCadastro": "2021-03-03T16:42:47.913",
"TipoCliente": "Não Faturado",
"IDClientePadrao": 422,
"NomeClientePadrao": "Anderson 422",
"UtilizaMobilidade": "Sim",
"UtilizaEntrega": "Sim",
"LimitarPedidoCidade": "Não",
"UtilizaApp": "Sim",
"ListaServicoComum": "Sim",
"EnderecoID": 942,
"EstadoID": 26,
"EnderecoEstadoDesc": null,
"CidadeID": 9921,
"EnderecoCidadeDesc": null,
"Logradouro": "Rua Tabajara",
"Numero": "123",
"Complemento": null,
"CEP": "13221361",
"Bairro": "Jardim America II",
"Latitude": "-23.1997142",
"Longitude": "-46.8286573"
}
]
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/CadastrarPreCliente?clienteNome={clienteNome}&celular={celular} Método: POST
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
clienteNome | String | Sim | ||
celular | String | Sim |
Ex. de consumo:
Header:
POST /api/External/CadastrarPreCliente?clienteNome=Cliente Teste&celular=19997298312 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"Resultado": {
"ok": true,
"descricao": "gravado com sucesso!",
"resultado": {
"ClienteID": 311,
"ClienteNome": "Cliente Teste"
}
}
}
Ex. de retorno com erro:
{
"Resultado": {
"ok": false,
"descricao": "Ocorreu um problema para gravar.",
"resultado": null
}
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/RemoverVinculoEmpresa?clienteID={clienteID} Método: POST
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
clienteID | Integer | Sim |
Ex. de consumo:
Header:
POST /api/External/RemoverVinculoEmpresa?clienteID=392 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"Resultado": {
"ok": true,
"descricao": "Vinculo removido com sucesso!",
"resultado": null
}
}
Ex. de retorno com erro:
{
"Resultado": {
"ok": false,
"descricao": "Verifique a mensagem de erro.",
"resultado": {
"codigo": 122,
"mensagemErro": "ClienteID informado não está vinculado à empresa."
}
}
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/StatusLocalizacao?solicitacaoID={solicitacaoID} Método: GET
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
solicitacaoID | Integer | Sim |
Ex. de consumo:
Header:
GET /api/External/StatusLocalizacao?solicitacaoID=4102 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"Resultado": {
"ok": true,
"descricao": "Última Localização",
"resultado": {
"Latitude": "-22.9948747",
"Longitude": "-47.505513"
}
}
}
Ex. de retorno com erro:
{
"Resultado": {
"ok": false,
"descricao": "Verifique a mensagem de erro.",
"resultado": {
"codigo": 161,
"mensagemErro": "SolicitacaoID informado não pertence à empresa."
}
}
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/EtapaSolicitacao?solicitacaoID={solicitacaoID} Método: GET
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
solicitacaoID | Integer | Sim |
Endpoint para consulta aos dados da solicitação em andamento.
model de retorno:
public class EtapaSolicitacao
{
int Etapa;
string StatusSolicitacao;
string NomePrestador;
string Veiculo;
string Cor;
string Placa;
string PrevisaoChegadaOrigem;
DateTime DataHoraChegouOrigem;
string PrevisaoChegadaDestino;
bool ViagemFinalizada;
bool ViagemFinalizada;
decimal? DistanciaTotal;
}
Ex. de consumo:
Header:
GET /api/External/EtapaSolicitacao?solicitacaoID=4102 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"EtapaSolicitacao": {
"Etapa": 2,
"StatusSolicitacao": "Seu motorista já está a caminho.",
"NomePrestador": "Ester Cilene Da Silva Fagundes",
"Veiculo": "VW - Gol",
"Cor": "Cinza",
"Placa": "ITU0E68",
"PrevisaoChegadaOrigem": "2 minutos",
"DataHoraChegouOrigem": null,
"PrevisaoChegadaDestino": "",
"ViagemFinalizada": false,
"DistanciaTotal": null
}
}
Outros exemplos dos possíveis retornos deste método:
1 - localizando motorista:
Etapa - 1
StatusSolicitacao - "Localizando motorista."
NomePrestador - null
Veiculo - null
Cor - null
Placa - null
PrevisaoChegadaOrigem - null
DataHoraChegouOrigem - null
PrevisaoChegadaDestino - null
ViagemFinalizada - false
DistanciaTotal - null
2 - aceitou:
Etapa - 2
StatusSolicitacao - "Seu motorista já está a caminho."
NomePrestador - "João"
Veiculo - "Celta"
Cor - "Vermelho"
Placa - "DNU5060"
PrevisaoChegadaOrigem - "5 minutos"
DataHoraChegouOrigem - null
PrevisaoChegadaDestino - null
ViagemFinalizada - false
DistanciaTotal - null
3 - chegou origem:
Etapa - 3
StatusSolicitacao - "O motorista chegou ao local de embarque."
NomePrestador - "João"
Veiculo - "Celta"
Cor - "Vermelho"
Placa - "DNU5060"
PrevisaoChegadaOrigem - null
DataHoraChegouOrigem - 15/09/2021 12:05:00
PrevisaoChegadaDestino - null
ViagemFinalizada - false
DistanciaTotal - null
4 - Iniciou Viagem:
Etapa - 4
StatusSolicitacao - "Em viagem."
NomePrestador - "João"
Veiculo - "Celta"
Cor - "Vermelho"
Placa - "DNU5060"
PrevisaoChegadaOrigem - null
DataHoraChegouOrigem - null
PrevisaoChegadaDestino - 15/09/2021 12:05:00
ViagemFinalizada - false
DistanciaTotal - null
5 - Finalizou:
Etapa - 5
StatusSolicitacao - "Viagem finalizada"
NomePrestador - "João"
Veiculo - "Celta"
Cor - "Vermelho"
Placa - "DNU5060"
PrevisaoChegadaOrigem - null
DataHoraChegouOrigem - null
PrevisaoChegadaDestino - null
ViagemFinalizada - true
DistanciaTotal: 5.53
Ex. de retorno com erro:
{
"errors": {
"solicitacaoID": [
"The value 'x' is not valid."
]
},
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"traceId": "00-6aa60e18f3760fa8aeb3d3e77bd52b4f-e5aae9442b7d5472-00"
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/ValorSolicitacao?solicitacaoID={solicitacaoID} Método: GET
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
solicitacaoID | Integer | Sim |
Ex. de consumo:
Header:
GET /api/External/ValorSolicitacao?solicitacaoID=4103 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"Resultado": {
"ok": true,
"descricao": "Valor",
"resultado": {
"Valor": 8.03,
"TipoPagamento" : "Dinheiro"
}
}
}
Ex. de retorno com erro:
{
"Resultado": {
"ok": false,
"descricao": "Verifique a mensagem de erro.",
"resultado": {
"codigo": 161,
"mensagemErro": "SolicitacaoID informado não pertence à empresa."
}
}
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/Configuracoes Método: GET
Ex. de consumo:
Header:
GET /api/External/Configuracoes HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"Resultado": {
"ok": true,
"descricao": "Configuracoes",
"resultado": {
"PermiteInformarDestinoDepois": true
}
}
}
Ex. de retorno com erro:
{
"Resultado": {
"ok": false,
"descricao": "Verifique a mensagem de erro.",
"resultado": {
"codigo": 200,
"mensagemErro": "Ocorreu um erro no processamento da requisição. ID do log: 12834"
}
}
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/Avaliacao?solicitacaoID={solicitacaoID}¬a={nota}&comentario={comentario} Método: POST
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
solicitacaoID | Integer | Sim | ||
nota | Integer | Sim | ||
comentario | String | Não | Caso a nota seja menor que 5 este campo se torna obrigatório. |
Ex. de consumo:
Header:
POST /api/External/Avaliacao?solicitacaoID=4102¬a=4&comentario=teste HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"Resultado": {
"ok": true,
"descricao": "Avaliação Gravado com sucesso!",
"resultado": null
}
}
Ex. de retorno com erro:
{
"Resultado": {
"ok": false,
"descricao": "Verifique a mensagem de erro.",
"resultado": {
"codigo": 170,
"mensagemErro": "Avaliação não pertence ao cliente e prestador da SolicitacaoID informada."
}
}
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/DatasSolicitacaoEntrega?solicitacaoID={solicitacaoID} Método: GET
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
solicitacaoID | Integer | Sim |
Ex. de consumo:
Header:
GET /api/External/DatasSolicitacaoEntrega?solicitacaoID=4102 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"Resultado": {
"ok": true,
"descricao": "Datas",
"resultado": {
"DataHoraCriacao": "2024-11-13T16:20:53.693",
"DataHoraInicio": "2024-11-13T16:21:17.087",
"DataHoraColeta": "2024-11-13T16:22:31.127",
"DataHoraFim": "2024-11-13T16:22:53.433"
}
}
}
Ex. de retorno com erro:
{
"Resultado": {
"ok": false,
"descricao": "Verifique a mensagem de erro.",
"resultado": {
"codigo": 160,
"mensagemErro": "SolicitacaoID informado não foi encontrado na base de dados."
}
}
}
{
"Resultado": {
"ok": false,
"descricao": "Verifique a mensagem de erro.",
"resultado": {
"codigo": 161,
"mensagemErro": "SolicitacaoID informado não pertence à empresa."
}
}
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/StatusSolicitacaoEntrega?solicitacaoID={solicitacaoID} Método: GET
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
solicitacaoID | Integer | Sim |
Ex. de consumo:
Header:
GET /api/External/StatusSolicitacaoEntrega?solicitacaoID=4102 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"Resultado": {
"ok": true,
"descricao": "Status",
"resultado": {
"Status": [
{
"Status": "Entregue com sucesso",
"Mercadoria": ""
}
]
}
}
}
Ex. de retorno com erro:
{
"Resultado": {
"ok": false,
"descricao": "Verifique a mensagem de erro.",
"resultado": {
"codigo": 160,
"mensagemErro": "SolicitacaoID informado não foi encontrado na base de dados."
}
}
}
URL: https://webapiexterna-{NOMEAPP}.azurewebsites.net/api/External/HistoricoStatusEntrega?solicitacaoID={solicitacaoID} Método: GET
Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
---|---|---|---|---|
solicitacaoID | Integer | Sim |
Ex. de consumo:
Header:
GET /api/External/HistoricoStatusEntrega?solicitacaoID=4102 HTTP/1.1
Host: webapiexterna-cluber2.azurewebsites.net
Authorization: Basic NCQhVnpMJnA0Wmo1OjVualBlJretc1QyYQ==
Ex. de retorno bem sucedido:
{
"Resultado": {
"ok": true,
"descricao": "Hitorico Status",
"resultado": {
"HitoricoStatus": [
{
"Mercadoria": "",
"Status": "Pedido Criado",
"DataHora": "2024-11-13T16:20:53.723"
},
{
"Mercadoria": "",
"Status": "Aguardando Coleta",
"DataHora": "2024-11-13T16:21:16.6"
},
{
"Mercadoria": "",
"Status": "Em rota de coleta",
"DataHora": "2024-11-13T16:21:17.087"
},
{
"Mercadoria": "",
"Status": "Aguardando entrega",
"DataHora": "2024-11-13T16:22:31.113"
},
{
"Mercadoria": "",
"Status": "Em rota de entrega",
"DataHora": "2024-11-13T16:22:31.67"
},
{
"Mercadoria": "",
"Status": "Chegada na entrega",
"DataHora": "2024-11-13T16:22:53.98"
}
]
}
}
}
Ex. de retorno com erro:
{
"Resultado": {
"ok": false,
"descricao": "Verifique a mensagem de erro.",
"resultado": {
"codigo": 160,
"mensagemErro": "SolicitacaoID informado não foi encontrado na base de dados."
}
}
}
Código | Descrição |
---|---|
1 | Pedido criado |
2 | Aguardando Motorista |
3 | Em Viagem |
4 | Viagem Finalizada |
5 | Cancelado pelo Motorista |
6 | Cancelado pelo Cliente |
7 | Excedeu Tentativas |
8 | Excedeu Raio de atendimento |
9 | Cancelado pelo Administrador |
10 | Cancelado pelo Sistema |
Código | Descrição |
---|---|
1 | Pedido Criado |
2 | Aguardando Coleta |
3 | Em Andamento |
4 | Solicitação Finalizada |
5 | Cancelado pelo Motorista |
6 | Cancelado pelo Cliente |
7 | Buscando Motorista |
8 | Procurando Motorista |
9 | Cancelado pelo Administrador |
10 | Cancelado pelo Sistema |
11 | Aguardando Confirmação |
12 | Aguardando Pagamento |
13 | Coleta Não Realizada |
14 | Entrega Não Realizada |
15 | Excluída |
Códigos retornados em caso de erro, identificando o motivo do erro e suas respectivas mensagens.
Código | Descrição do erro |
---|---|
100 | ServicoItemID não pode ser nulo. |
101 | ServicoItemID informado não foi encontrado no cadastro. |
102 | enderecoOrigem não pode ser nulo. |
103 | Não foi possivel recuperar as informações detalhadas com base no endereço de origem informado. |
104 | Não foi possivel definir a latitude/longitude com base no endereço de origem informado. |
105 | lstDestino não pode ser nulo. |
106 | lstDestino deve possuir ao menos um endereço. |
107 | Não foi possivel recuperar as informações detalhadas com base no endereço de destino informado. |
108 | Não foi possivel definir a latitude/longitude com base no endereço de destino informado. |
110 | TipoPagamentoID informado não foi encontrado no cadastro. |
111 | TipoPagamentoID informado não pode ser 0 (zero) ou nulo. |
112 | TipoPagamentoID informado não aceito pelo serviço. |
113 | TipoPagamentoID informado não aceito por solicitação do tipo viagem. |
114 | TipoPagamentoID informado não aceito em solicitações feitas via integração. |
115 | TipoPagamentoID informado não aceito por solicitação do tipo entrega. |
120 | ClienteID não pode ser nulo. |
121 | ID informado não foi encontrado no cadastro. |
122 | ID informado não está vinculado à empresa. |
123 | ClienteID informado é diferente do cadastro de integração. |
124 | ServicoItemID informado é do tipo conveniado, e não está vinculado ao cliente / empresa. |
125 | ServicoItemID informado deve ser do tipo viagem. |
126 | ServicoItemID informado deve ser do tipo entrega. |
127 | Não foi encontrado cadastro com os dados informados. |
130 | lstMercadoria - ServicoItemID exige pelo menos uma mercadoria informada em cada endereço de destino. |
131 | lstMercadoria - ServicoItemID exige que sejam informadas as medidas (Altura, Largura e Comprimento) das mercadorias. |
132 | lstMercadoria - ServicoItemID exige que a Quantidade seja informada (não pode ser 0 (zero) ou nulo). |
133 | lstMercadoria - ServicoItemID exige que o Valor seja informado (não pode ser 0 (zero) ou nulo). |
134 | lstMercadoria - ServicoItemID exige que CategoriaMercadoriaID seja informado (não pode ser 0 (zero) ou nulo). |
135 | lstMercadoria - CategoriaMercadoriaID informado não foi encontrado no cadastro. |
136 | lstMercadoria - Descricao deve ser informado e possuir 3 (três) ou mais caracteres. |
137 | lstMercadoria - ServicoItemID exige que o Peso seja informado (não pode ser 0 (zero) ou nulo). |
140 | Servico não disponível. Verifique se os parâmetros e as configurações atendem aos requisitos da solicitação. |
150 | Este usuário não possui uma empresa definida. |
160 | SolicitacaoID informado não foi encontrado na base de dados. |
161 | SolicitacaoID informado não pertence à empresa. |
162 | Não encontrado nenhum dado com esta SolicitacaoID. |
163 | SolicitacaoID informado não pode ser 0 (zero) ou nulo. |
170 | Avaliação não pertence ao cliente e prestador da SolicitacaoID informada. |
199 | Model ausente ou inválido. Verifique o layout do json de request, e se o Content-Length informado no header está correto. |
200 | Ocorreu um erro no processamento da requisição. ID do log: |