POST
/api/uploads/videocolposcopia/{appointment_id}Enviar arquivos
Envia um ou mais arquivos do exame num formulário multipart. Para vídeos e áudios grandes, prefira o envio direto (abaixo).
- Exige o token de acesso — como obter
- Limite: 120 por minuto, por IP
Headers
| Nome | Tipo | Obrig. | Descrição |
|---|---|---|---|
Authorization | string | Sim | Bearer {access_token}, com o token que o login devolve. |
Content-Type | string | Sim | multipart/form-data |
Parâmetros do caminho
| Nome | Tipo | Obrig. | Descrição |
|---|---|---|---|
appointment_id | uuid | Sim | O agendamento. |
Corpo da requisição
| Nome | Tipo | Obrig. | Descrição |
|---|---|---|---|
files | arquivo[] | Sim | Os arquivos, todos no campo files do formulário. |
Campos da resposta
| Nome | Tipo | Descrição |
|---|---|---|
message | string | Arquivos enviados com sucesso. |
uploaded_files | array | Os arquivos novos. |
total_files | integer | Quantos subiram neste envio. |
folder_structure | string | A pasta do exame. |
patient_id | uuid | O paciente. |
appointment_date | string | A data do agendamento. |
Request URL
https://api-endosystem.imagemais.com.br/api/uploads/videocolposcopia/b4d6f8a0-2c4e-4a6b-8d0f-1a3c5e7b9d2fcurl -X POST "https://api-endosystem.imagemais.com.br/api/uploads/videocolposcopia/b4d6f8a0-2c4e-4a6b-8d0f-1a3c5e7b9d2f" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-F "files=@captura-01.jpg" \
-F "files=@laudo-externo.pdf"Respostas
{
"message": "Arquivos enviados com sucesso",
"uploaded_files": [
...{
"message": "Arquivos enviados com sucesso",
"uploaded_files": [
{
"url": "https://storage.exemplo.com/videocolposcopia/9d3f1c2a-6b7e-4a8d-9f01-23456789abcd/2026-10-20_09-30-00/7f3a9c1e.dcm",
"view_url": "https://<conta>.r2.cloudflarestorage.com/<bucket>/videocolposcopia/9d3f1c2a-6b7e-4a8d-9f01-23456789abcd/2026-10-20_09-30-00/7f3a9c1e.dcm?X-Amz-Expires=21600&X-Amz-Signature=...",
"filename": "7f3a9c1e.dcm",
"original_name": "captura-01.dcm",
"size": 524288,
"uploaded_at": "2026-10-20T09:41:12-03:00",
"patient_id": "9d3f1c2a-6b7e-4a8d-9f01-23456789abcd",
"appointment_date": "2026-10-20T09:30:00-03:00",
"folder_structure": "videocolposcopia/9d3f1c2a-6b7e-4a8d-9f01-23456789abcd/2026-10-20_09-30-00"
}
],
"total_files": 1,
"folder_structure": "videocolposcopia/9d3f1c2a-6b7e-4a8d-9f01-23456789abcd/2026-10-20_09-30-00",
"patient_id": "9d3f1c2a-6b7e-4a8d-9f01-23456789abcd",
"appointment_date": "2026-10-20T09:30:00-03:00"
}{
"error": "Nenhum arquivo enviado"
}{
"error": "Nenhum arquivo enviado"
}{
"error": "Máximo de 50 arquivos por envio"
}{
"error": "Máximo de 50 arquivos por envio"
}{
"error": "Agendamento não encontrado"
}{
"error": "Agendamento não encontrado"
}{
"error": "Muitas requisições. Tente novamente em instantes."
}{
"error": "Muitas requisições. Tente novamente em instantes."
}{
"error": "Token ausente",
"message": "Token de autenticação necessário.",
...{
"error": "Token ausente",
"message": "Token de autenticação necessário.",
"code": "TOKEN_MISSING"
}{
"error": "Token expirado",
"message": "Sua sessão expirou. Faça login novamente.",
...{
"error": "Token expirado",
"message": "Sua sessão expirou. Faça login novamente.",
"code": "TOKEN_EXPIRED"
}{
"error": "Token inválido",
"message": "Token de autenticação inválido. Faça login novamente.",
...{
"error": "Token inválido",
"message": "Token de autenticação inválido. Faça login novamente.",
"code": "TOKEN_INVALID"
}{
"error": "Acesso revogado",
"message": "Seu acesso foi desativado. Procure o administrador da clínica.",
...{
"error": "Acesso revogado",
"message": "Seu acesso foi desativado. Procure o administrador da clínica.",
"code": "ACCESS_REVOKED"
}{
"error": "Erro no upload de alguns arquivos",
"details": [
...{
"error": "Erro no upload de alguns arquivos",
"details": [
{
"filename": "captura-02.dcm",
"error": "Read timed out"
}
]
}