Saltar al contenido

Salva um bloco de um e-mail padrão, num idioma (edição em equipe)

PUT/api/email-overrides/{emailKey}/{language}/blocks/{blockId}

Auth
Requiere token
Quién puede:
owner
admin
Clave de API:
reports:write
X-CommunityId
X-CommunityId Enví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.

Só owner e admin. Grava **um bloco** da versão daquele idioma, achado pelo `id`, com as mesmas regras do `PUT /api/email-overrides/{emailKey}/{language}` (bloco travado `systemSlot` continua obrigatório, só links da comunidade em recibos). Antes do primeiro salvamento, o idioma ainda não tem versão: os blocos de partida (`starter-text`, `slot-…`) são salvos com este no lugar, como faria o salvamento da versão inteira. Não confere a versão: blocos diferentes nunca dão 409.

**Trava de edição (F-174):** bloco aberto por outra pessoa no editor: **423** com o nome dela. Quem está editando recebe o bloco salvo no WebSocket (`block.saved` na sala `item:emailOverride:{emailKey}`).

Parámetros

NombreDóndeTipoDescripción
emailKeyobligatoriopathstring
languageobligatoriopathstring
blockIdobligatoriopathstring

Headers

NombreTipoDescripción
X-CommunityIdopcionalstring (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

NombreTipoDescripción
blockobligatorioobjectBloco estático (`text`, `button`, `image`) ou o `systemSlot` que já estava ali.

Respuestas

CódigoDescripción
200Bloco salvo.
400Requisição inválida — falha de validação.
401Token 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`).
403Autenticado, mas sem permissão para esta operação.
404Recurso não encontrado.
422Bloco inválido (as regras da versão inteira).
423F-174: outra pessoa da equipe está editando o que esta gravação mexe (trava de edição). `errors[0].code` é `locked`; `data.locks` lista o que está travado e quem edita (`editor` nulo quando o chat da comunidade está desligado ou há bloqueio no chat entre as duas pessoas: "outra pessoa da equipe"). Tente de novo quando a pessoa sair do bloco (a trava some sozinha 30 s depois do último sinal dela).
500Erro interno do servidor.

Ejemplo con curl

curl -X PUT "https://api.memberfy.net/api/email-overrides/<emailKey>/<language>/blocks/<blockId>" \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID" \
  -H "Content-Type: application/json" \
  -d '{"block":{}}'