Cria ou executa sections & spaces
POST/api/spaces
- Auth
- Requiere token
- 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.
Sujeito a verificação de papel (RBAC).
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 |
|---|---|---|
sectionIdobligatorio | string (uuid) | Valid section ID is required |
titleobligatorio | string | Title is required · max 255 |
descriptionopcional | string | Description must be a string |
slugopcional | string | Letras minúsculas, números e hífen. Não pode começar com _ (rotas internas do app ficam em /_/): 400 com param = slug. Gerado do título quando ausente, nunca com _. · max 255 |
iconopcional | string | Icon must be 100 characters or less · max 100 |
orderopcional | integer | Order must be a non-negative integer |
moduleobligatorio | string | Invalid module type |
externalUrlopcional | string (uri) | Invalid URL format |
visibilityopcional | public | members | plan | private | Nunca mais aberta que a da seção que contém o space, na ordem `public` < `members` < `plan` < `private`. Mais aberta devolve 400. |
accessopcional | object | Quem entra quando `visibility` é `private`. Opcional e **aditivo**: ausente não mexe em nada; presente **substitui** o conjunto inteiro, porque o modal sempre manda tudo. As três listas são **união** — satisfazer qualquer uma basta. Um id de outra comunidade devolve 400 com `errors`. |
access.groupIdsopcional | string (uuid)[] | |
access.productIdsopcional | string (uuid)[] | |
access.subscriptionGroupIdsopcional | string (uuid)[] | |
moduleConfigopcional | object | Configuração específica do módulo, preenchida no wizard. A forma depende do módulo — `call4papers` guarda o modo do space e a primeira chamada. Enviar `null` limpa. |
canCreateopcional | anyone | staff | admins | Quem cria conteúdo no space (post, status, evento, curso, imagem de galeria). `anyone`: quem a rota já aceita; `staff`: owner, admin e moderator; `admins`: owner e admin. Opcional: na criação o padrão é `anyone`; na edição, ausente não mexe. Comentar e reagir não dependem disso. |
Respuestas
| Código | Descripción |
|---|---|
201 | Operação realizada com sucesso. |
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. |
500 | Erro interno do servidor. |
Ejemplo con curl
curl -X POST "https://api.memberfy.net/api/spaces" \
-H "Authorization: Bearer $TOKEN" \
-H "X-CommunityId: $COMMUNITY_ID" \
-H "Content-Type: application/json" \
-d '{"sectionId":"00000000-0000-0000-0000-000000000000","title":"string","module":"string"}'