Pular para conteúdo

WS313 - Baixas dos documentos

WS313 - Nosso serviço para baixas de documentos

Esta integração tem por objetivo abrir solicitação para realizar baixas dos documentos.

Autenticação

  • As chamadas terão autenticação a nível de transporte (Basic Authentication);
  • Solicite o user / password ao administrador da conta.

Características

  • URL

    <https://entregas-api.comprovei.com/v1/events/send>

  • Método:

    POST

Esta integração retorna um protocolo para acompanhamento - WS301

Exemplo de Request

{
    "<chave_documento>" : {
        "route_number" : "String",
        "route_date" : "String",
        "driver" : "String",
        "code" : "String",
        "start_date" : "String",
        "end_date" : "String",
        "pictures" : [{
            "link" : "String",
            "subtitle" : "String"
        }],
        "annotation" : "Sting",
        "signature" : {
            "link" : "String",
            "subtitle" : "String"
        },
        "coordinates" : {
            "latitude" : 0,
            "longitude" : 0
        },
        "device_model" : "String",
        "device_id" : "String"
    }
}

Nosso JSON

Parâmetros

Propriedade Tipo Descrição
Chave de acesso JSON Chave de acesso do documento para dar baixa

JSON Chave de Acesso

Parâmetro Tipo Obrigatório Descrição
route_number string Não Código dado à rota no Comprovei.
route_date string Não Data da rota no Comprovei ('YYYY-MM-DD').
driver string Não Motorista atribuído à rota no Comprovei.
code string Sim Código da ocorrência para baixa. Deve estar cadastrada no Comprovei.
start_date string Sim Data e hora do início da ocorrência ('YYYY-MM-DD HH:mm:ss').
end_date string Sim Data e hora a finalização da ocorrência ('YYYY-MM-DD HH:mm:ss').
pictures array de object Não Conjunto Anexo contendo fotos da entrega*.
annotation string Não Anotação a respeito da entrega*.
signature object Não Assinatura digital do cliente* no formato de anexo.
coordinates object Sim Coordenadas da entrega.
device_model string Não Modelo do aparelho usado pelo motorista durante a rota.
device_id string Não Id do aparelho usado pelo motorista durante a rota.

Aviso

*Serão validados de acordo com o código da ocorrência escolhida. Por exemplo: caso a ocorrência precise de uma foto, o parâmetro pictures se torna obrigatório.

Anexo

Parâmetro Tipo Obrigatório Descrição
link string * Url da imagem a ser anexada ao documento**.
subtitle string * Informação adicional a respeito da imagem.

Aviso

Todas as imagens devem estar em formato jpeg ou png.
O link de acesso deve permitir download.
O link deve possuir protocolo http.
Caso necessite liberar acesso apenas para um IP fixo, entrar em contato com suporte@comprovei.com
**Caso o arquivo anexo da baixa ainda não esteja disponível, o link deve retornar o status HTTP 404.

Coordinates

Parâmetro Tipo Obrigatório Descrição
latitude number Sim Latitude do local do evento no formato fracionário usando notação americana.
longitude number Sim Longitude do local do evento no formato fracionário usando notação americana.

Aviso

Todos os campos opcionais serão validados caso sejam enviados, ou seja não podem estar em branco, caso não deseje enviar as informações, não acrescente os campos.

  • Sucesso:

    • Código: 202
      Conteúdo:
      {
          "message" : "OK",
          "protocol" : "<protocol>"
      }
      
      {
          "message" : "Algumas rotas enviadas apresentaram erros. Consulte o protocolo para detalhes",
          "protocol" : "<protocol>" 
      
      }
      
  • Erro:

    • Código: 400
      Conteúdo:
      {
          "message": "Corpo da requisição está vazio"
      }
      
      {
          "message" : "Corpo da requisição não é um JSON válido" 
      }
      
      {
          "message" : "O limite de baixas por requisição é 10" 
      }
      
      { 
          "message" : "Em <chave_documento>, a chave do documento não deve estar vazia" 
      }
      
      {
          "message" : "Em <chave_documento>, o corpo do documento deve ser um objeto JSON" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'route_number' deve ser alfanumérico" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'route_date' deve ser alfanumérico" 
      }
      
      {
          "message" : "Em <chave_documento>, '<date>' não é uma data válida para 'route_date'" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'driver' deve ser alfanumérico" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'driver' não deve estar vazio" 
      }
      
      {
          "message" : "Em <chave_documento>, se o campo 'route_number' for enviado, os campos 'route_date' e 'driver' são obrigatórios" 
      }
      
      {
          "message" : "Em <chave_documento>, se o campo 'route_date' for enviado, os campos 'route_number' e 'driver' são obrigatórios" 
      }
      
      {
          "message" : "Em <chave_documento>, se o campo 'driver' for enviado, os campos 'route_number' e 'route_date' são obrigatórios" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'code' é obrigatório" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'code' deve ser alfanumérico" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'code' não deve estar vazio" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'start_date' é obrigatório" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'start_date' deve ser alfanumérico" 
      }
      
      {
          "message" : "Em <chave_documento>, '<date>' não é uma data válida para 'start_date'" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'end_date' é obrigatório" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'end_date' deve ser alfanumérico" 
      }
      
      {
          "message" : "Em <chave_documento>, '<date>' não é uma data válida para 'end_date'" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'pictures' deve ser um array" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'pictures' deve conter pelo menos uma posição" 
      }
      
      {
          "message" : "Em <chave_documento> > 'pictures': posição <posicao> deve ser um objeto JSON" 
      }
      
      {
          "message" : "Em <chave_documento> > 'pictures', posição <posicao>: campo 'link' é obrigatório" 
      }
      
      {
          "message" : "Em <chave_documento> > 'pictures', posição <posicao>: campo 'link' deve ser alfanumérico" 
      }
      
      {
          "message" : "Em <chave_documento> > 'pictures', posição <posicao>: a url enviada não é válida" 
      }
      
      {
          "message" : "Em <chave_documento> > 'pictures', posição <posicao>: campo 'subtitle' deve ser alfanumérico" 
      }
      
      {
          "message" : "Em <chave_documento> > 'pictures', posição <posicao>: campo 'subtitle' não deve estar vazio" 
      }
      
      {
          "message" : "Em <chave_documento>, Campo 'annotation' deve ser alfanumérico" 
      }
      
      {
          "message" : "Em <chave_documento>, Campo 'annotation' não deve estar vazio" 
      }
      
      {
          "message" : "Em <chave_documento>, Campos 'signature' deve ser um objeto JSON" 
      }
      
      {
          "message" : "Em <chave_documento> > 'signature': campo 'link' é obrigatório" 
      }
      
      {
          "message" : "Em <chave_documento> > 'signature': campo 'link' deve ser alfanumérico" 
      }
      
      {
          "message" : "Em <chave_documento> > 'signature': a url enviada não é válida" 
      }
      
      {
          "message" : "Em <chave_documento> > 'signature': campo 'subtitle' deve ser alfanumérico" 
      }
      
      {
          "message" : "Em <chave_documento> > 'signature': campo 'subtitle' não deve estar vazio" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'coordinates' é obrigatório" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'coordinates' deve ser um objeto JSON" 
      }
      
      {
          "message" : "Em <chave_documento> > 'coordinates': Campos 'latitude' e 'longitude' são obrigatórios" 
      }
      
      {
          "message" : "Em <chave_documento> > 'coordinates': 'latitude' deve ser do tipo númerico" 
      }
      
      {
          "message" : "Em <chave_documento> > 'coordinates': 'longitude' deve ser do tipo númerico" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'device_model' deve ser alfanumérico" 
      }
      
      {
          "message" : "Em <chave_documento>, campo 'device_id' deve ser alfanumérico" 
      }
      
      {
          "errors": [
              {
                  "occurrence_code": "<codigo_ocorrencia>",
                  "dkey": "<chave_documento>",
                  "errors": [
                      { "code" : 404, "message" : "Documento não encontrado" },
                      { "code" : 404, "message" : "Ocorrência não encontrada" },
                      { "code" : 400, "message" : "Mais de uma rota encontrada" },
                      { "code" : 400, "message" : "Rota já está finalizada ou não foi encontrada" },
                      { "code" : 400, "message" : "Documento não está associado à uma rota" },
                      { "code" : 400, "message" : "Documento já está finalizado" },
                      { "code" : 400, "message" : "A ocorrência escolhida precisa de pelo menos uma foto" },
                      { "code" : 400, "message" : "A ocorrência escolhida precisa da assinatura" },
                      { "code" : 400, "message" : "A ocorrência escolhida precisa de uma anotação" },
                      { "code" : 400, "message" : "A ocorrência escolhida não pode ser aplicada a paradas de transbordo" },
                      { "code" : 400, "message" : "A ocorrência escolhida não pode ser aplicada a paradas de entrega" },
                      { "code" : 400, "message" : "A ocorrência escolhida não pode ser aplicada a paradas de coletas" }
                  ]
              }
          ],
          "message": "Foram encontrados erros em todos os documentos enviados"
      }