Introdução

A API REST da Zarpx permite integrações seguras com parceiros, fornecendo endpoints dedicados para serviços, tipos de serviços, tipos de veículos e webhooks. A autenticação é baseada em OAuth2, garantindo controle e proteção nas operações. O acesso exige o uso responsável de tokens, que devem ser armazenados com segurança, nunca expostos publicamente e rotacionados regularmente, sempre com escopo minimizado.

Workflow

Fluxo de Trabalho da API Zarpx

1. Criação de Serviço

Usuário                     API                    Operador
   | ----[POST /servicos]----> |                        
   | <---[Sucesso]----------- |                        
                                |---[Aprovar?]-------->    
                                    | [Aprova]             | [Recusa] + motivo em `detail`
     <---[status: Accepted]----     <---[status: Refused]----
   | [Webhook: envia Accepted]   | [Webhook: envia Refused]

2. Alteração de Serviço

Usuário                      API                     Operador
   | ----[PATCH /servicos/{id}]---> |
   | <---[Sucesso]----------------- |
                                 |---[Aprovar alteração?]---->
                                      | [Aceita]              | [Recusa] + motivo em `detail`
    <---[status: Changed]------      <---[status: Refused]------
   | [Webhook: Changed]           | [Webhook: Refused]

3. Cancelamento de Serviço

Usuário                      API                     Operador
   | ----[POST /servicos/{id}/cancelar]--->
   | <---[Recebido]---------------------|
                                   |---[Aprovar cancelamento?]--->
                                         | [Aprova]               | [Recusa] + motivo em `detail`
     <---[status: Canceled]------       <---[status: CancelRefused]------
   | [Webhook: Canceled]              | [Webhook: CancelRefused]

Observações

  • Sempre que houver mudança relevante de status e houver Webhook cadastrado, o endpoint informado será notificado do novo status: Accepted, Changed, Canceled, Refused ou CancelRefused.

  • Em recusas, o motivo deve ser registrado no campo detail do serviço.