Cria um item de download
POST/api/downloads/items
- Auth
- Requiere token
- Quién puede:
- owner
- admin
- moderator
- finance
- X-CommunityId
X-CommunityIdEnvía el X-CommunityId de la comunidad en la que ocurre la operación.
Las descripciones de los endpoints vienen de la especificación de la API y, por ahora, están en portugués. La interfaz alrededor está traducida.
Quem o `canCreate` do space permite (por padrão só a equipe: owner, admin, moderador, financeiro; membro recebe 403). O item nasce **rascunho** e **o produto `kind: download` nasce junto**, 1:1, `DRAFT`, preço 0 na moeda da comunidade (bloco `product` na resposta; "Preço e venda" edita esse produto em `/api/products/{id}`). No modo `single` um segundo item é 409. Com `requireApproval` ligado, o item de um membro fica em análise (`moderationStatus: PENDING`, invisível aos demais) até a equipe aprovar; ao aprovar, o rascunho que já tem arquivo é publicado na hora (mesma regra dos Classificados), sem o autor precisar publicar de novo. Título vazio: 400.
Headers
| Nombre | Tipo | Descripción |
|---|---|---|
X-CommunityIdopcional | string (uuid) | ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade. |
Cuerpo de la solicitud application/json
| Nombre | Tipo | Descripción |
|---|---|---|
spaceIdobligatorio | string (uuid) | |
titleobligatorio | string | max 140 |
descriptionopcional | string | Texto formatado (HTML); é sanitizado. |
coverUrlopcional | string | URL http(s) de imagem (use /api/upload/content/image). |
stampPdfopcional | boolean | Carimbo no PDF: quem não é da equipe baixa uma cópia com "Baixado por {e-mail} em {data e hora}" no rodapé da última página (fuso da comunidade). PDF acima de 25 MB, criptografado ou corrompido sai sem carimbo. |
categoryIdopcional | string (uuid) |
Respuestas
| Código | Descripción |
|---|---|
201 | Item criado (com o produto). |
400 | Requisição inválida — falha de validação. |
401 | Token ausente, inválido ou expirado. |
403 | Autenticado, mas sem permissão para esta operação. |
404 | Recurso não encontrado. |
409 | Space no modo `single` já tem o item. |
500 | Erro interno do servidor. |
Ejemplo con curl
curl -X POST "https://api.memberfy.net/api/downloads/items" \
-H "Authorization: Bearer $TOKEN" \
-H "X-CommunityId: $COMMUNITY_ID" \
-H "Content-Type: application/json" \
-d '{"spaceId":"00000000-0000-0000-0000-000000000000","title":"string"}'