Zum Inhalt springen

Baixa um arquivo (link assinado)

POST/api/downloads/files/{fileId}/download

Auth
Token erforderlich
X-CommunityId
X-CommunityId Sende die X-CommunityId der Community, in der die Operation stattfindet.
Die Beschreibungen der Endpoints stammen aus der API-Spezifikation und sind vorerst auf Portugiesisch. Die Oberfläche drumherum ist übersetzt.

Confere o acesso e devolve `{ url, expiresAt, name, mimeType, size }`: link do S3 válido por **5 minutos**, gerado a cada pedido, `attachment` com o nome original. Quem recebe o link o abre até ele vencer. **Nunca grave nem registre a URL**.

Quem baixa: a equipe (owner, admin, moderador, financeiro) e o autor sempre, sem contar; os demais, se o item está publicado e aprovado, a pessoa vê o space e o produto do item é livre (rascunho, inativo ou preço 0 sem estoque), ou há compra ativa (não reembolsada nem expirada), ou plano que inclui o produto, ou ela já baixou antes (o item que passou a ter preço não tira o acesso de quem já tinha). Sem acesso: 403 com `data.productId`, `price` e `soldOut` para a tela mostrar "Comprar". Cada download de membro vira um registro (contadores da equipe); no máximo 120 por hora por pessoa.

Se o item tem `stampPdf` e o arquivo é PDF, quem não é da equipe recebe uma cópia carimbada ("Baixado por {e-mail} em {data e hora}", fuso da comunidade, idioma de quem baixa) e `stamped: true`. Acima de 25 MB, criptografado ou corrompido: o original, `stamped: false`.

Parameter

NameOrtTypBeschreibung
fileIdPflichtpathstring (uuid)

Header

NameTypBeschreibung
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

Die Spezifikation deklariert die Felder dieses Bodys nicht (zum Beispiel ein Multipart-Upload). Siehe die Anleitung zum Thema.

Antworten

StatusBeschreibung
200Link assinado.
401Token ausente, inválido ou expirado.
403Autenticado, mas sem permissão para esta operação.
404Recurso não encontrado.
429Muitos downloads em pouco tempo.
500Erro interno do servidor.

curl-Beispiel

curl -X POST "https://api.memberfy.net/api/downloads/files/<fileId>/download" \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID" \
  -H "Content-Type: application/json" \
  -d '{}'