Skip to content

Pede a URL de envio direto de um arquivo

POST/api/downloads/items/{id}/files/upload-url

Auth
Requires a token
X-CommunityId
X-CommunityId Send the X-CommunityId of the community the operation happens in.
Endpoint descriptions come straight from the API specification and are in Portuguese for now. The interface around them is translated.

O autor do item e a equipe. Confere tipo, extensão e tamanho **antes de assinar** e devolve um `PUT` pré-assinado de 10 minutos, amarrado à chave, ao `Content-Type` e ao tamanho exatos (o S3 recusa outro). O navegador envia o arquivo direto ao S3 (sem passar pela API) e depois chama `POST .../files/confirm` com a `key`.

Tipos aceitos (até **200 MB** cada, sem limite de quantidade): imagens (PNG, JPG, WEBP, GIF), planilhas (XLS, XLSX, ODS, CSV), PDF, documentos (DOC, DOCX, ODT, TXT, MD, PPT, PPTX) e ZIP (também `application/x-zip-compressed`). Executáveis e outros binários são recusados, e a extensão do nome precisa combinar com o tipo. A chave nunca leva texto do usuário.

Parameters

NameInTypeDescription
idrequiredpathstring (uuid)

Headers

NameTypeDescription
X-CommunityIdoptionalstring (uuid)ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade.

Request body application/json

NameTypeDescription
namerequiredstringmax 255
mimeTyperequiredstring
sizerequiredintegerBytes. · ≥ 1

Responses

StatusDescription
200URL de envio.
400Requisição inválida — falha de validação.
401Token ausente, inválido ou expirado.
403Autenticado, mas sem permissão para esta operação.
404Recurso não encontrado.
500Erro interno do servidor.

curl example

curl -X POST "https://api.memberfy.net/api/downloads/items/<id>/files/upload-url" \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID" \
  -H "Content-Type: application/json" \
  -d '{"name":"string","mimeType":"application/pdf","size":1}'