Cria um tópico
POST/api/upvotes/spaces/{spaceId}/topics
- Auth
- Requiere token
- Clave de API:
- upvotes:write
- 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 "Quem pode postar" do espaço permite (`Space.canCreate`; 403 senão). O autor já começa votando (1 voto, pode remover). Com aprovação prévia, o tópico de quem não é da equipe nasce `PENDING` (fila `upvotes` da moderação; não recebe voto nem comentário). Até 5 tópicos por dia por pessoa (429; a equipe não tem limite; pendentes e apagados contam). Fotos: até 4 `mediaIds` da finalidade `upvoteImage`, enviadas antes por `POST /api/media/upload-url` + confirmação. A equipe recebe aviso no sino e e-mail (categoria `upvotes`).
Parámetros
| Nombre | Dónde | Tipo | Descripción |
|---|---|---|---|
spaceIdobligatorio | path | string (uuid) |
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 |
|---|---|---|
titleobligatorio | string | max 140 |
descriptionobligatorio | string | max 5000 |
mediaIdsopcional | string (uuid)[] |
Respuestas
| Código | Descripción |
|---|---|
201 | Tópico criado. |
400 | Requisição inválida — falha de validação. |
401 | Token ausente, inválido ou expirado; token de outra comunidade (o `X-CommunityId` ou o `communityId` do corpo não é o do token); token antigo ou de uma sessão encerrada (troca de senha, convite aceito). Nesses casos a mensagem pede para entrar de novo (`auth.signInAgain`). |
403 | Autenticado, mas sem permissão para esta operação. |
404 | Recurso não encontrado. |
429 | Limite de 5 tópicos por dia. |
Ejemplo con curl
curl -X POST "https://api.memberfy.net/api/upvotes/spaces/<spaceId>/topics" \
-H "Authorization: Bearer $TOKEN" \
-H "X-CommunityId: $COMMUNITY_ID" \
-H "Content-Type: application/json" \
-d '{"title":"string","description":"string"}'