Ao responder ou contestar uma disputa (MED), você pode anexar documentos que sirvam como evidência do seu argumento.

Agora é possível enviar esses documentos diretamente pela API de arquivos da Woovi, sem precisar hospedar o arquivo em uma URL pública.

Para enviar uma evidência dessa forma, siga os passos abaixo:

## 1. Obtenha o id da disputa

Crie um webhook para o evento OPENPIX:DISPUTE_CREATED. No payload desse evento você encontra o id da disputa.

```
{
  "event": "OPENPIX:DISPUTE_CREATED",
  "dispute": {
    "status": "<status>",
    "endToEndId": "<endToEndId>",
    "id": "<idDaDisputa>"
  }
}
```

## 2. Envie o arquivo para a API de arquivos

Faça uma requisição para o endpoint de upload de arquivos, enviando o documento como multipart/form-data.

Campos da requisição:

* file — o arquivo a ser enviado (PDF, PNG ou JPEG)

* purpose — deve ser DISPUTE_EVIDENCE

* correlationID — opcional. Um identificador seu para evitar que o mesmo arquivo seja enviado duas vezes

```
curl -X POST "https://api.woovi.com/api/v1/files" \
  -H "Authorization: <appID>" \
  -F "purpose=DISPUTE_EVIDENCE" \
  -F "file=@/caminho/do/arquivo.pdf"
```

A resposta traz o id do arquivo, que será usado no próximo passo:

```
{
  "file": {
    "id": "<idDoArquivo>",
    "fileName": "arquivo.pdf",
    "contentType": "application/pdf",
    "size": 10240,
    "url": "<urlAssinada>",
    "urlExpiresAt": "<data>",
    "createdAt": "<data>"
  }
}
```

## 3. Envie a evidência para a disputa usando o id do arquivo

Com o id retornado no passo anterior, faça a requisição para anexar o documento à disputa:

```
curl -X POST "https://api.woovi.com/api/v1/dispute/<idDaDisputa>/evidence" \
  -H "Authorization: <appID>" \
  -H "Content-Type: application/json" \
  --data-raw '{
    "documents": [
      {
        "fileId": "<idDoArquivo>",
        "description": "<descrição>",
        "correlationID": "<correlationID>"
      }
    ]
  }'
```

Esse recurso depende da funcionalidade DISPUTE_EVIDENCE_FILE_ID estar habilitada na sua conta. Caso não esteja, a requisição retorna erro 403 e você pode enviar o documento por url ou falar com o suporte para habilitar.

## 4. Entendendo o retorno

Se tudo ocorrer corretamente, você recebe um código 200 com os dados da evidência registrada:

```
{
  "documents": [
    {
      "url": "<urlParaVisualizarDocumento>",
      "fileId": "<idDoArquivo>",
      "description": "<descrição>",
      "correlationID": "<correlationID>",
      "createdAt": "<data>"
    }
  ]
}
```

## 5. Tipos de arquivo aceitos

Para evidências de disputa, são aceitos os formatos PDF, PNG e JPEG. Outros formatos enviados para a API de arquivos são recusados com erro 415.

## 6. Erros comuns

* 403 DISPUTE_EVIDENCE_FILE_ID_NOT_ALLOWED — sua conta não tem a funcionalidade habilitada para enviar evidência por fileId. Fale com o suporte.

* 415 — o tipo do arquivo enviado não é aceito.

* 413 — o arquivo enviado é maior do que o limite permitido.



