API Reference

Events

Eventos é uma meio de receber notificações via API de operações que os usuários realizam no sistema.

Há duas maneiras de receber os eventos:

WebHook: O Fretefy envia os eventos como uma requisição HTTP POST com um JSON no corpo da requisição e espera uma resposta HTTP 200 OK por 30 segundos. Caso receba uma resposta diferente a mensagem entra em um ciclo de reenvio com um limite de 10 tentativas.

Pooling: O Fretefy armazena os eventos e você deve consultar e remover os eventos através da API (Vide: Consultar Eventos e Confirmar Eventos).

Eventos Disponíveis

  • carga.formada: Ocorre quando um usuário cria/forma uma carga pela formação de cargas

  • carga.desativada: Ocorre quando um usuário desativa uma carga

  • carga.alocada: Ocorre quando a carga é alocada para um veículo/motorista/transportador

  • carga.evento: Ocorre quando é registrado um evento para uma carga

  • carga.finalizada: Ocorre quando é registrada a finalização da carga, ou seja, o processo de transporte foi finalizado

  • fatura.liberada: Ocorre quando uma fatura da auditoria é liberada pelo usuário

Estrutura dos Eventos

Todos os eventos possuem a mesma estrutura base, mostrada abaixo. Apenas a estrutura do campo data difere para cada type.


{
    "id": "",
    "timestamp": "2015-05-05T12:30:00",
    "type": "",
    "data": {}
}

Evento Carga Formada type=carga.formada

 {
        "minutaId": "string",
        "cargaId": "string",
        "codigo": "string",
        "distancia": 0,
        "pedidos": [
            {
                "pedidoId": "string",
                "documento": "string",
                "notaFiscal": "string", 
                "referencia": "string",
                "empresaColeta": {
                    "nomeEmpresa": "string",
                    "cnpj": "string",
                    "localidade": "string",
                    "cidade": "string",
                    "uf": "string"
                },
                "empresaEntrega": {
                    "nomeEmpresa": "string",
                    "cnpj": "string",
                    "localidade": "string",
                    "cidade": "string",
                    "uf": "string"
                }
            }
        ]
    }

Alocação Realizada type=carga.alocada

  {
        "cargaId": "string",
        "dhAlocacao": "string",
        "transportador": {
            "id": "string",
            "documento": "string",
            "nome": "string"
        },
        "veiculo": {
            "id": "string",
            "placa": "string",
            "frota": "string",
            "tipoVeiculoId": "string",
            "tipoCarroceriaId": "string"
        },
        "motorista": {
            "id": "string",
            "documento": "string",
            "nome": "string"
        },
        "equipamentos": [
            {
                "id": "string",
                "placa": "string",
                "frota": "string"
            }
        ],
        "pedidos": [
            {
                "pedidoId": "string",
                "documento": "string",
                "notaFiscal": "string", 
                "referencia": "string",
                "empresaColeta": {
                    "nomeEmpresa": "string",
                    "cnpj": "string",
                    "localidade": "string",
                    "cidade": "string",
                    "uf": "string"
                },
                "empresaEntrega": {
                    "nomeEmpresa": "string",
                    "cnpj": "string",
                    "localidade": "string",
                    "cidade": "string",
                    "uf": "string"
                }
            }
        ]
    }

Carga Desativada type=carga.desativada

{
        "cargaId": "string",
        "motivoId": "string",
        "formacao": {
            "revertida": false
        }
    }

Evento Registrado type=carga.evento

 {
        "id": "",
        "cargaId": "",
        "tipoEvento": 0,
        "descricao": "",
        "dhEvento": "",
        "localidade": {
            "localidade": "",
            "cidade": "",
            "uf": "",
            "latitude": 0,
            "longitude": 0
        },
        "anexo": {
            "contentType": "",
            "storagePath": ""
        }
    }

Carga Registrado type=carga.finalizada

 {
   "cargaId": ""
 }

Fatura Liberada type=fatura.liberada

{
        "unidadeNegocioId": "",
        "numero": "",
        "emitente": {
            "nome": "",
            "documento": "",
            "localidade": "",
            "cidade": "",
            "uf": ""
        },
        "dhEmissao": "",
        "dhVencimento": "",
        "valorTotal": 0,
        "valorDesconto": 0,
        "dhLiberacao": "",
        "documentos": [
            {
                "numero": "",
                "chave": "",
                "serie": "",
                "dhEmissao": "",
                "valor": 0,
                "origem": {
                    "localidade": "",
                    "cidade": "",
                    "uf": ""
                },
                "destino": {
                    "localidade": "",
                    "cidade": "",
                    "uf": ""
                },
                "emitente": {
                    "nome": "",
                    "documento": "",
                    "localidade": "",
                    "cidade": "",
                    "uf": ""
                },
                "destinatario": {
                    "nome": "",
                    "documento": "",
                    "localidade": "",
                    "cidade": "",
                    "uf": ""
                },
                "impostos": {
                    "icms": {
                        "valor": 0,
                        "aliquota": 0,
                        "base": 0
                    }
                },
                "componentes": {
                    "nome_componente": "valor_componente"
                },
                "documentos": [
                    {
                        "numero": "",
                        "chave": "",
                        "dhEmissao": "",
                        "valor": "",
                        "emitente": {
                            "nome": "",
                            "documento": "",
                            "localidade": "",
                            "cidade": "",
                            "uf": ""
                        },
                        "destinatario": {
                            "nome": "",
                            "documento": "",
                            "localidade": "",
                            "cidade": "",
                            "uf": ""
                        }
                    }
                ]
            }
        ]
    }