Biblioteca de Mídia
Imagens e vídeos reusados por blog, publicações, produtos e mais.
O que é
Biblioteca de Mídia é o repositório central de imagens e vídeos do miCore. Em vez de cada recurso ter seu próprio upload, tudo vive aqui — e blog, publicações, produtos, cursos e outros apontam para o mesmo item.
Na prática: você envia um arquivo uma vez, recebe um id e a URL, e reutiliza esse id onde precisar (por exemplo, como imagem destacada de um post).
O que dá para fazer hoje
- Enviar uma imagem ou vídeo (até 50 MB no upload direto).
- Listar e consultar os itens já enviados.
- Excluir em definitivo um item da biblioteca.
Importante
- O envio é
multipart/form-datacom o campofile. - As variações de tamanho (thumbnails) são geradas no envio e voltam em
derivatives. - O
idretornado é o que entra em campos comofeatured_image_iddo blog.
Disponibilidade na API
Endpoints da Biblioteca de Mídia
Envie, consulte e exclua arquivos da biblioteca compartilhada do tenant. Os exemplos abaixo são gerados pelo contrato OpenAPI oficial.
/api/v1/media
Lista itens da biblioteca de mídia
Exige o escopo `media:read`.
Parâmetros
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
typequery | string | Não | — |
scopequery | string | Não | Compartilhada (vazio) ou de um módulo específico. |
statusquery | boolean | Não | — |
searchquery | string | Não | Busca por título ou nome do arquivo. |
per_pagequery | integer | Não | — |
Exemplo de requisição
curl "$MICORE_BASE_URL/media" \
-H "Authorization: Bearer $MICORE_TOKEN" \
-H "Accept: application/json"Exemplo de resposta JSON
{
"data": [
{
"id": 123,
"type": "file",
"title": "banner-outubro",
"mime_type": "image/jpeg",
"extension": "jpg",
"size_bytes": 284910,
"width": 1600,
"height": 900,
"duration_seconds": null,
"is_image": true,
"is_video": false,
"scope": null,
"status": true,
"url": "https://cdn.exemplo.com/empresa/biblioteca-midias/banner-outubro_20261017_ab12cd.jpg",
"derivatives": [
{
"variant": "320w",
"width": 320,
"height": 180,
"url": "https://cdn.exemplo.com/.../123/320w.jpg"
},
{
"variant": "640w",
"width": 640,
"height": 360,
"url": "https://cdn.exemplo.com/.../123/640w.jpg"
}
],
"created_at": "2026-10-17T09:00:00-03:00",
"updated_at": "2026-10-17T09:00:00-03:00"
}
],
"links": [],
"meta": []
}Respostas possíveis
/api/v1/media
Envia um arquivo para a biblioteca de mídia
Exige `media:write` e a permissão de criar em Biblioteca de Mídia. Aceita imagens e vídeos, até 50 MB no upload direto. As variações de tamanho são geradas no envio.
Exemplo de requisição
curl -X POST "$MICORE_BASE_URL/media" \
-H "Authorization: Bearer $MICORE_TOKEN" \
-H "Accept: application/json"Exemplo de resposta JSON
{
"data": {
"id": 123,
"type": "file",
"title": "banner-outubro",
"mime_type": "image/jpeg",
"extension": "jpg",
"size_bytes": 284910,
"width": 1600,
"height": 900,
"duration_seconds": null,
"is_image": true,
"is_video": false,
"scope": null,
"status": true,
"url": "https://cdn.exemplo.com/empresa/biblioteca-midias/banner-outubro_20261017_ab12cd.jpg",
"derivatives": [
{
"variant": "320w",
"width": 320,
"height": 180,
"url": "https://cdn.exemplo.com/.../123/320w.jpg"
},
{
"variant": "640w",
"width": 640,
"height": 360,
"url": "https://cdn.exemplo.com/.../123/640w.jpg"
}
],
"created_at": "2026-10-17T09:00:00-03:00",
"updated_at": "2026-10-17T09:00:00-03:00"
}
}Respostas possíveis
/api/v1/media/{item}
Exibe um item de mídia
Exige o escopo `media:read`.
Parâmetros
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
itempath | integer | Sim | — |
Exemplo de requisição
curl "$MICORE_BASE_URL/media/{item}" \
-H "Authorization: Bearer $MICORE_TOKEN" \
-H "Accept: application/json"Exemplo de resposta JSON
{
"data": {
"id": 123,
"type": "file",
"title": "banner-outubro",
"mime_type": "image/jpeg",
"extension": "jpg",
"size_bytes": 284910,
"width": 1600,
"height": 900,
"duration_seconds": null,
"is_image": true,
"is_video": false,
"scope": null,
"status": true,
"url": "https://cdn.exemplo.com/empresa/biblioteca-midias/banner-outubro_20261017_ab12cd.jpg",
"derivatives": [
{
"variant": "320w",
"width": 320,
"height": 180,
"url": "https://cdn.exemplo.com/.../123/320w.jpg"
},
{
"variant": "640w",
"width": 640,
"height": 360,
"url": "https://cdn.exemplo.com/.../123/640w.jpg"
}
],
"created_at": "2026-10-17T09:00:00-03:00",
"updated_at": "2026-10-17T09:00:00-03:00"
}
}Respostas possíveis
/api/v1/media/{item}
Exclui um item de mídia
Exige `media:write` e a permissão de excluir em Biblioteca de Mídia. Remove o arquivo, as variações e os vínculos. A exclusão é permanente.
Parâmetros
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
itempath | integer | Sim | — |
Exemplo de requisição
curl -X DELETE "$MICORE_BASE_URL/media/{item}" \
-H "Authorization: Bearer $MICORE_TOKEN" \
-H "Accept: application/json"