Skip to content

Link para tocar um áudio ou vídeo (player)

GET/api/downloads/files/{fileId}/stream-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.

Para os arquivos com `playable: true` (áudio WAV e MP3, vídeo MP4). Mesma regra de acesso do download (`POST /api/downloads/files/{fileId}/download`): equipe e autor sempre; os demais com o item publicado e aprovado, o space visível e o produto livre, comprado ou incluído no plano. Sem acesso: 403 com `data.productId`, `price` e `soldOut`; arquivo de rascunho, de item em análise ou de outra comunidade: 404. Tipo que não toca (inclusive `video/mpeg`, que os navegadores não reproduzem): 400 — use o download.

Devolve `{ url, expiresAt, name, mimeType, size, player }`: link do S3 (nunca da API), `inline`, com o `Content-Type` fixo do tipo conferido no envio (`audio/wav`, `audio/mpeg` ou `video/mp4`), válido por **3 horas** para cobrir um vídeo longo com pausas (o player faz várias requisições com `Range` enquanto toca). Venceu: peça outro e retome do ponto em que estava. Tocar **não conta como download** (nem nos contadores da equipe nem no histórico do membro). No máximo 240 por hora por pessoa. **Nunca grave nem registre a URL**.

Parameters

NameInTypeDescription
fileIdrequiredpathstring (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.

Responses

StatusDescription
200Link para o player.
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.
429Muitos pedidos em pouco tempo.
500Erro interno do servidor.

curl example

curl -X GET "https://api.memberfy.net/api/downloads/files/<fileId>/stream-url" \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID"