Skip to main content
GET
A biblioteca do club

Authorizations

Authorization
string
header
required

Token OPACO de sessão de quem administra, emitido por /v1/auth/admin/sign-in e verificado contra a nossa tabela — o mesmo desenho do studentSession, para a outra identidade.

É o esquema de quem ADMINISTRA — o dashboard. O aluno do classroom usa o studentSession; uma rota consumida pelos dois declara os dois esquemas, e o middleware aceita qualquer um deles. As duas credenciais são opacas e chegam pelo mesmo cabeçalho: quem as separa é a tabela em que cada uma existe.

O dashboard o guarda em cookie httpOnly, que o BFF troca pelo Authorization a cada chamada.

Path Parameters

clubId
string<uuid>
required

Id público da organização — o mesmo que GET /v1/me devolve em organization_id.

Na URL o recurso se chama club; no contrato e no domínio, organization. A divergência é deliberada: clubs é a palavra do produto, e a URL é o que as pessoas leem.

É o identificador do provedor de autenticação, e é assim de propósito: o cliente precisa nomear a organização ao pedir o token, e o token é o que prova o escopo. Um id só nosso obrigaria a traduzir um no outro antes de ter um token — e a tradução exigiria uma chamada escopada, que é justamente a que ainda não dá para fazer.

O uuid interno da organização não aparece no contrato: ele é o que as chaves estrangeiras do domínio referenciam, e continua sendo nosso.

Query Parameters

kind
enum<string>

Rótulo de tela — o ícone e o filtro. Nada de acesso lê isto.

Available options:
video,
audio,
image,
document
status
enum<string>

uploading enquanto o arquivo não chegou, processing enquanto o provedor transcodifica, ready quando dá para entregar, failed quando o provedor desistiu (e aí error diz por quê).

Available options:
uploading,
processing,
ready,
failed
folder_id
string<uuid>

A pasta. Ausente é o club inteiro.

subfolders
boolean

Com folder_id, inclui o que está nas pastas de dentro.

archived
boolean

Só o arquivado. Ausente traz só o que está de pé.

q
string

Busca no nome e no arquivo.

Maximum string length: 200
types
enum<string>[]

O tipo da TELA, um ou vários (types=pdf&types=file). Separa o PDF do resto dos documentos, que no acervo são o mesmo kind. Ver MediaScreenType.

O tipo como a TELA o mostra: o kind, com document separado em pdf e file (o zip, a planilha, o resto), e embed para a referência de fora (youtube, vimeo, external), qualquer que seja o kind. É derivado do provedor, do kind, do tipo do arquivo e da extensão, e é o mesmo que o filtro types usa.

Available options:
video,
image,
audio,
pdf,
file,
embed
root
boolean

Só o que está fora de pasta — o "Início" da tela. Sem ele, e sem folder_id, a lista é o club inteiro. Com folder_id é 422 invalid_filter.

created_from
string<date-time>

Enviadas a partir deste instante (inclusive).

created_until
string<date-time>

Enviadas antes deste instante.

favorite
boolean

Só as que QUEM PEDE favoritou. O favorito é da pessoa, não do club.

sort
enum<string>
default:created

created é a data de envio, e é o padrão. type ordena pelo tipo da tela. Empates saem pela data de envio, da mais nova para a mais antiga.

Available options:
created,
name,
size,
type
order
enum<string>

Ausente é desc para created e size, e asc para name e type.

Available options:
asc,
desc
limit
integer
default:50
Required range: 1 <= x <= 100
page
integer
default:1
Required range: x >= 1

Response

As mídias

data
object[]
required
total
integer
required