Aller au contenu

Detalha sections & spaces por id

GET/api/sections/{id}

Auth
Public
Clé d’API:
community:read
X-CommunityId
X-CommunityId Envoyez le X-CommunityId de la communauté où l’opération a lieu.
Les descriptions des endpoints viennent directement de la spécification de l’API et sont en portugais pour l’instant. L’interface autour est traduite.

Autenticação opcional: o conteúdo retornado varia conforme o membro autenticado.

Responde 403 quando o leitor não alcança o item. A regra é a mesma da listagem e vale também para o deep link por slug.

(a página da seção): uma seção que o leitor vê **com cadeado** responde 200 com `locked`, `lockReason` e `denial: { reason, actions, productIds?, subscriptionGroupIds?, lockReason, canContactTeam, section: { id, title, slug, icon, description } }` — o mesmo formato do 403 de space (`canContactTeam` diz se o botão "Fale com a equipe" funciona, ver `POST /api/chat/contact-team`). No modo `section`, `spaces` vem vazio. Uma seção que não aparece responde 403 com `data: { reason: other, actions: [] }`, sem título nem o que libera.

Uma seção fechada por badge traz `reason: badge` (e `lockReason: badge`), a ação `earnBadge`, `badges` (os **públicos**: `{ id, name, imageUrl, description }`) e `hasHiddenBadge` (`true` quando um badge privado também abre; dele nunca sai nome, imagem nem id). Com produto ou plano à venda junto, vêm também `buy`/`seePlans` e os ids, depois do caminho do badge.

Uma seção aberta "a partir do nível" traz `reason: level`, a ação `earnPoints`, `level` e, para o membro, `progress` (o mesmo formato do 403 de space).

A resposta traz, **para quem administra**, um campo opcional novo `access` com as listas da concessão (`groups`, `products`, `subscriptionGroups` e `badges`: `{ id, name, imageUrl, visibility }`, com `hasHiddenBadge`: um badge privado só sai para owner e admin; `minLevel`: `{ id, level, name, minPoints, imageUrl }` ou `null`) e `adminOnly` (`true` quando a seção é Privada sem ninguém em "Quem tem acesso"). Membro comum não recebe: o nome de um grupo já é informação.

Paramètres

NomEmplacementTypeDescription
idobligatoirepathstring (uuid)

En-têtes

NomTypeDescription
X-CommunityIdfacultatifstring (uuid)ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade.

Réponses

StatutDescription
200Operação realizada com sucesso.
400Requisição inválida — falha de validação.
403A seção não aparece para o leitor; `data` não diz nada sobre ela.
404Recurso não encontrado.
500Erro interno do servidor.

Exemple curl

curl -X GET "https://api.memberfy.net/api/sections/<id>" \
  -H "X-CommunityId: $COMMUNITY_ID"