Atualiza communities
PUT/api/communities/{id}
- Auth
- Jeton requis
- Clé d’API:
- community:write
- X-CommunityId
X-CommunityIdEnvoyez le X-CommunityId de la communauté où l’opération a lieu.
Sujeito a verificação de papel (RBAC) na comunidade do X-CommunityId. O `{id}` do caminho precisa ser essa mesma comunidade; um id diferente responde 403. `payoutEnabled` e `signupModel` não são aceitos aqui: enviá-los responde 400 com `param` no campo e nada é gravado. Eles mudam em `PATCH /api/communities/{id}/settings`, que confere os dados da empresa, o recebimento e o recebedor e grava o histórico de vendas. `signupEnabled`, `guestAccess`, `contentModeration`, `globalRanking` e `active` precisam ser boolean (outro tipo responde 400). O segredo da API do Google Analytics (`gaApiSecret`) também fica no PATCH de settings. `domain` (o endereço da comunidade) não muda por aqui: só a configuração do endereço o grava. O mesmo valor de hoje é aceito e ignorado (o app reenvia o formulário inteiro); um valor diferente responde 400 com param = domain (`community.domainNotEditable`).
Paramètres
| Nom | Emplacement | Type | Description |
|---|---|---|---|
idobligatoire | path | string (uuid) |
En-têtes
| Nom | Type | Description |
|---|---|---|
If-Unmodified-Sincefacultatif | string | Opcional: a versão lida (`settingsUpdatedAt` de `GET /api/communities/settings`), como data HTTP, se não vier `settingsUpdatedAt` no corpo. Outra gravação depois dela responde 409. |
X-CommunityIdfacultatif | string (uuid) | ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade. |
Corps de la requête application/json
| Nom | Type | Description |
|---|---|---|
settingsUpdatedAtfacultatif | string (date-time) | Opcional: a versão lida (`settingsUpdatedAt` de `GET /api/communities/settings`). Diferente da atual responde 409; sem ela grava sem conferir. |
namefacultatif | string | |
descriptionfacultatif | string | |
domainfacultatif | string | Só o valor atual; outro valor responde 400. |
googleAnalyticsIdfacultatif | string | |
googleSiteVerificationfacultatif | string | Verificação do Google Search Console. Aceita o token sozinho ou a tag inteira (`<meta name="google-site-verification" content="…">`); grava só o conteúdo. Até 100 caracteres `[A-Za-z0-9_-]`. Tag de outro nome, outro HTML ou caractere fora da lista → 400 com `param` no campo (`community.invalidSiteVerification`). Vazio ou `null` apaga. |
bingSiteVerificationfacultatif | string | Verificação do Bing Webmaster Tools. Aceita o token sozinho ou a tag inteira (`<meta name="msvalidate.01" content="…">`); mesmas regras do campo do Google. |
logoUrlfacultatif | string | Um logo no armazenamento da Memberfy (ou no imgix) precisa ser um arquivo enviado por esta comunidade (`POST /api/upload/community/logo`); outro responde 400 com param = logoUrl (`community.invalidLogoUrl`). O valor atual, reenviado sem mudança, e endereços fora do nosso armazenamento continuam aceitos. |
faviconUrlfacultatif | string | |
ogImageUrlfacultatif | string | |
metaTitlefacultatif | string | |
metaDescriptionfacultatif | string | |
metaKeywordsfacultatif | string | |
themeColorfacultatif | string | Não se grava mais aqui: a cor da barra do navegador é do tema (`values.light.browserBar` em `/api/community-themes`). Enviado, 400 com `param = themeColor`. Continua vindo no `GET`, copiado do tema ativo. |
themePalettefacultatif | object | Não se grava mais aqui: as cores são do tema (`values.light.primary`/`secondary` em `/api/community-themes`). Enviado (mesmo `null`), 400 com `param = themePalette`. Continua vindo no `GET`, copiado das cores claras do tema ativo. |
activefacultatif | boolean | |
signupEnabledfacultatif | boolean | |
guestAccessfacultatif | boolean | |
contentModerationfacultatif | boolean | |
globalRankingfacultatif | boolean | |
languagefacultatif | en-US | pt-BR | pt-PT | es-ES | es-MX | es-AR | it-IT | de-DE | de-AT | de-CH | fr-FR | fr-CA | fr-BE | fr-CH | Idioma padrão da comunidade: o dos e-mails e o de quem ainda não escolheu um idioma. Só as variantes regionais; um valor fora da lista responde 400. |
Réponses
| Statut | Description |
|---|---|
200 | Operação realizada com sucesso. |
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. |
409 | Outra gravação veio antes da versão enviada (`settingsUpdatedAt` no corpo ou `If-Unmodified-Since`); `data.settingsUpdatedAt` é a versão atual: recarregue e repita. Cada gravação avisa os editores abertos (`item.saved`, ver `POST /api/realtime/ticket`). |
500 | Erro interno do servidor. |
Exemple curl
curl -X PUT "https://api.memberfy.net/api/communities/<id>" \
-H "Authorization: Bearer $TOKEN" \
-H "X-CommunityId: $COMMUNITY_ID" \
-H "Content-Type: application/json" \
-d '{}'