> For the complete documentation index, see [llms.txt](https://docs.facephi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.facephi.com/docs.facephi-pt-br/api-rest/identity-api/identity-api-reference/security-compliance/document-custody/upload-document.md).

# Enviar documento

Serviço para enviar um documento PDF usando a URL de upload pré-assinada obtida do Endpoint `/services/custody/upload`.

A URL de upload é válida por **5 minutos** desde sua geração.

{% hint style="info" %}
Use a URL de upload completa retornada pelo Endpoint anterior, não esta rota diretamente.
{% endhint %}

### Endpoint

```
PUT /custody/upload/{uploadToken}
```

### Parâmetros de rota

| Parâmetro     | Tipo   | Obrigatório | Descrição                           |
| ------------- | ------ | ----------- | ----------------------------------- |
| `uploadToken` | string | **Sim**     | Token de carga da URL pré-assinada. |

### Corpo da solicitação

**Content-Type:** `multipart/form-data`

#### Parâmetros

| Parâmetro | Tipo   | Obrigatório | Descrição                 |
| --------- | ------ | ----------- | ------------------------- |
| `file`    | binary | **Sim**     | Arquivo de documento PDF. |

### Respostas

#### `200` Sucesso

O documento foi enviado com sucesso.

#### `400` Requisição inválida

```json
{
  "status": 400,
  "title": "Bad Request",
  "detail": "Invalid request.",
  "type": "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400",
  "errors": [
    "Invalid file format. Only PDF is supported."
  ]
}
```

#### `401` Não autorizado

```json
{
  "message": "Unauthorized"
}
```

#### `403` Acesso negado

```json
{
  "Message": "User is not authorized to access this resource with an explicit deny"
}
```

#### `413` Payload Too Large

```json
{
  "status": 413,
  "title": "Payload Too Large",
  "detail": "File size exceeds limit.",
  "type": "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/413",
  "errors": []
}
```

#### `502` Gateway inválido

```json
{
  "status": 502,
  "title": "Bad Gateway",
  "detail": "Server got an invalid response.",
  "type": "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/502"
}
```

#### `504` Tempo limite do gateway

```json
{
  "message": "Endpoint request timed out"
}
```
