Pular para o conteúdo

Relatório de Importação por Webhook

Por volta de 2 min

Relatório de Importação por Webhook

Envio do Relatório

Você pode se inscrever para receber um webhook contendo o resumo da importação de anúncios. Os dados do relatório serão enviados via protocolo HTTP no verbo POST, passando um JSON com as informações no endpoint especificado e homologado por nosso time.

Contrato JSON:

{
  "id": "625190f0-8b5a-4866-8eb2-0167d71a09a4",
  "company": "VIVAREAL",
  "type": "FEEDS_INTEGRATION_REPORT",
  "description": "A Simple Description Provided by ZAP+",
  "details": {
    "date": "2020-09-30T19:21:13",
    "total": 200,
    "updated": 1886,
    "created": 0,
    "deleted": 0,
    "unchanged": 0,
    "error": 134,
    "warning": 0,
  },
  "link": "http://grupozap.com.br/report.html",
  "errors": [
    {
      "errorMessage": "O campo preços deve estar entre 200 e 900000",
      "externalIds": ["AP0511 ", "SO1009", "SO1683", "SO1648", "SO1677", "GA0086"],
      "listingsQuantity": 6
    },
    {
      "errorMessage": "O campo imagens é obrigatório",
      "externalIds": ["LO0666", "TE0621"],
      "listingsQuantity": "2"
    },
    {
      "errorMessage":  "O campo área útil requer que ao menos um valor seja fornecido",
      "externalIds": [ "CA0345", "SO1655", "AP1587", "SO1701", "AP1615", "SO1605", "AP1629", "SO1686", "SL0148"],
      "listingsQuantity": "9"
    }
  ],
  "warnings": [
    {
      "message": "O campo videoTourLink não é um link válido",
      "externalIds": ["AP0511", "SO1009", "SO1683"],
      "listingsQuantity": 3,
    },
    {
      "message": "O campo addressNumber não está preenchido",
      "externalIds": ["AP0512", "AP0513", "AP0514", "SO1010", "SO1684"],
      "listingsQuantity": 5,
    }
  ]
}

Onde:

  • id: Campo identificador do webhook;
  • company: Tipo do contrato do cliente (VIVAREAL, ZAP, GRUPOZAP, ZAP_OLX);
  • type: Tipo de webhook enviado (FEEDS_INTEGRATION_REPORT);
  • description: Uma descrição sucinta a respeito do webhook enviado;
  • details: Informações específicas do relatório de integração;
    • date: Data de execução/criação do relatório;
    • total: Nº de anúncios contratados;
    • updated: Nº de anúncios atualizados na carga;
    • created: Nº de anúncios criados na carga;
    • deleted: Nº de anúncios deletados na carga;
    • unchanged: Nº de anúncios que não sofreram alterações na carga;
    • error: Nº de anúncios com erro na carga;
    • warning: Nº de anúncios com aviso na carga;
  • link: URL contendo o arquivo do relatório enviado;
  • errors: Listagem das críticas sobre os anúncios.
  • warnings: Listagem dos avisos sobre os anúncios (temos um limite de no máximo 1.000 warnings a serem enviados).

Observação

Inclusões de novos campos no payload podem ocorrer sem aviso prévio, portanto, ao realizar a integração observe se sua aplicação possui capacidade de extensibilidade sem que ocorra mal funcionamento.

Cadastro do endpoint

Para realização do cadastro da URL (endpoint) do Software/CRM para recebimento dos webhooks referentes ao relatório de importação, valide seu endpoint e depois nos envie as informações preenchendo o formulário abaixo:

*Caso encontre problemas para acessar o formulário, tente acessar diretamente através do linkopen in new window

Timeout

Nosso sistema de integração de eventos aguardará 30 segundos antes de fechar a conexão com a URL configurada, caso seu sistema não responda nesse intervalo com um status HTTP 2XX o evento entrará na política de tratamento de erros descrita abaixo. Recomendamos que seu sistema responda o mais rápido possível as nossas requisições, caso exista algum processamento mais pesado para ser realizado, é ideal que seja feito de forma assíncrona.

Tratamento de erros

Se a URL configurada estiver indisponível ou retornando algum erro, não serão realizadas retentativas. Nós registraremos em nossos sistemas a tentativa mal sucessidade e caso o cliente deseje receber o lead em sua ferramenta de gestão, necessitará abrir uma solicitação ao time de suporte.

Dicas

Testes

Para ver as requisições enviadas em cada evento sem a necessidade de expor um serviço para a internet, você pode usar algum site para receber e logar as nossas requisições

Além destes em uma rápida pesquisa no Google é possível encontrar diversos outros.

Respostas

  • Sempre responda com um status HTTP 2XX, caso contrário o evento entrará na política de tratamento de erros.
  • Responda o mais rápido possível, deixe processamentos mais pesados para serem feitos de forma assíncrona, lembre-se temos um timeout para considerar a requisição não concluída.

Dúvidas, Sugestões ou Problemas

Caso tenha alguma dúvida, sugestão ou problemas durante a implementação da integração do relatório, envie um e-mail para chamado.integracao@olxbr.com que iremos responder assim que possível.

Última atualização: