Skip to content

Link assinado de uma mídia

GET/api/media/{id}/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.

Devolve `{ url, expiresAt, thumbnailUrl? }` (1 hora, `inline`, aceita `Range`) **depois** da checagem de acesso: quem vê o space (plano, grupo, pago ou privado inclusive) e o dono da mídia está aberto à pessoa (post aprovado, anúncio no prazo, imagem aprovada, gravação de evento para a equipe, quem está inscrito ou tem a compra do evento). Sem acesso: 403 e **nenhum link**. Mídia ainda sem dono só abre para quem enviou e para a equipe. Nunca grave nem registre a URL. Vídeo de comunidade com streaming nativo ligado: quando a versão adaptativa (HLS) já está pronta, vem também `hls` (`manifestUrl`, `params` com `Policy`, `Signature` e `Key-Pair-Id`, `expiresAt`, `heights`). O player pede `manifestUrl` e **anexa `params` na query de toda requisição** (manifesto, listas e segmentos); sem cookies. O link vale 2 horas: peça outro perto de `expiresAt`. Enquanto `processingStatus` for `queued` ou `processing`, ou se for `failed`, não há `hls` e o MP4 de `url` segue tocando. Sem `hls`, use `url`.

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.

Responses

StatusDescription
200Link assinado.
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 GET "https://api.memberfy.net/api/media/<id>/url" \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID"