Eventos
Eventos podem ser interpretados como um registro de modificação do documento. Um registro de evento contém informações como, dados modificados, disponível para atribuição de pedido, disponível para aprovação, documento aprovado, documento atribuído e outros.
Observe que o recurso de mensagens (ver mais) esta relacionado ao processando do documento, como validações, mapeamentos e integrações. Já os eventos, estão relacionados às etapas de workflow que um documento pode ter.
A integração de recebimento de eventos pode ser realizada de 2 maneiras: Pooling ou Webhook.
Pooling
Fluxo de Integração
O fluxo de integração pode variar de acordo com o nível de processos requeridos pelo Sistema Corporativo. A representação abaixo considera um cenário básico de integração ponta-a-ponta.

Clientesolicita eventos →APIretorna eventos disponíveisClienteprocessa eventos e envia OK →APIatualiza status do evento
Controle de Eventos
O processo de recepção de eventos possui um controle de lido/não lido para garantir que o processo de integração não processe eventos repetidos. De maneira simples, você deve entender que o processo de integração de eventos funciona como uma caixa de e-mail. Ou seja, quando um evento é interpretado pelo Cliente ele deve informar ao DocsM3 que aquele evento foi processado com sucesso e portanto, será marcado como lido para que da próxima vez que o Cliente requisitar novos eventos, os que ja foram marcados como lido, não serão listados na consulta.
Exemplo via cURL
curl -X 'GET' \
'/api/v1/Events?%24top=50&%24filter=Processed%20eq%20false&%24orderby=CreatedOn%C2%A0desc&raw' \
-H 'accept: application/json;odata.metadata=minimal;odata.streaming=true'
Mais detalhes em GET /api/v1/Events.
Parâmetros da Requisição
Observe que a API de eventos utiliza o padrão ODATA. para filtrar os dados a serem consultados.
No exemplo acima, o parâmetro $top indica que serão retornados os primeiros 50 registros. Já o parâmetro $filter irá garantir que somente os eventos não processados serão retornados. E por fim, o parâmetro $orderby indica que os registros retornados seguem a ordem dos mais novos para os mais antigos.
Webhook
Estamos trabalhando para que em breve esse processo esteja disponível.
Próximos passos?
- Atualizar o workflow do documento → ver mais