Saltar al contenido

Dá um feedback a um colega

POST/api/feedbacks

Auth
Requiere token
Clave de API:
No acepta clave de API
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.

Qualquer papel que abra o espaço (`spaceId`; opcional enquanto a comunidade tem um só espaço de Feedbacks, obrigatório com vários: 422 `spaceRequired`). `recipientId` é o perfil de um colega vivo da mesma comunidade que também abre esse espaço; ninguém dá feedback a si mesmo (422 com `errors`). `body` é texto rico (HTML; é sanitizado), com até 5000 caracteres de texto; ou, no lugar dele, `sections` (o modelo guiado por temas: a API monta o texto e guarda os temas à parte, só para os números). Só o autor e o destinatário vão ler, texto e temas. O destinatário recebe, 10 minutos depois e pela fila, o e-mail "Fulano te deu um feedback" (categoria `feedbacks`, que ele pode desligar), **sem o texto**. `data.emailNotice` traz `{ scheduled, recipientCount }`.

**Sobre outra pessoa (espontâneo):** no lugar de `recipientId`, `subjectId` (um colega vivo que abre o espaço). O feedback interno (`body` ou `sections`) vai ao **líder direto** da pessoa (`reportsToId`), que é gravado e não muda se o líder mudar depois; `messageToSubject` (opcional, texto rico, até 5000 caracteres de texto) vai à pessoa, com o nome de quem escreveu. Pessoa sem líder (ou com líder que não abre o espaço): 422 `subjectNoLeader`/`leaderNoAccess`, com mensagem clara; sobre si mesmo: 422 `aboutSelf`; sendo o próprio líder da pessoa: 422 `subjectIsYourReport` (dê o feedback direto); `recipientId` e `subjectId` juntos: 422. Avisos por e-mail, sem texto e sem o nome da pessoa: o líder recebe "Fulano te enviou um feedback sobre uma pessoa do seu time" (`emailNotice`); a pessoa, só se houver mensagem, "Fulano te deixou uma mensagem" (`messageNotice`, nulo sem mensagem).

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
spaceIdopcionalstring (uuid)Espaço de Feedbacks onde o feedback é dado.
recipientIdopcionalstring (uuid)Quem recebe o feedback direto; obrigatório sem `subjectId`.
subjectIdopcionalstring (uuid)Feedback sobre esta pessoa, entregue ao líder direto dela (no lugar de `recipientId`).
messageToSubjectopcionalstring"Mensagem para a pessoa" (texto rico, opcional), só com `subjectId`; sem ela, a pessoa não vê nada. · max 20000
bodyopcionalstringTexto livre; obrigatório sem `sections`. · max 20000
sectionsopcionalobject[]O modelo guiado: uma seção por tema (no lugar de `body`; os dois juntos: 422 `bodyAndSections`). A API monta o `body` com o nome do tema e as três perguntas como títulos, no idioma de quem escreve (`Accept-Language`); pergunta em branco não entra, seção sem nenhum texto sai (texto e vínculo); sem texto em nenhuma: 422 `sectionsEmpty`. Tema ou comportamento inativo ou de outra comunidade: 422 `themeInvalid`/`behaviorInvalid`.
sections[].themeIdobligatoriostring (uuid)
sections[].observedopcionalstring"O que você observou".
sections[].impactopcionalstring"Qual foi o impacto".
sections[].suggestionopcionalstring"O que sugere".
sections[].behaviorIdsopcionalstring (uuid)[]Comportamentos do tema que a pessoa observou (opcional).

Respuestas

CódigoDescripción
201O feedback criado (`Feedback` + `emailNotice`).
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`).
403Sem permissão para esta operação, ou sessão de suporte do SuperAdmin ("Entrar"): feedbacks são pessoais e o modo suporte não vê nem age neles (`feedback.errors.supportSession`).
404Recurso não encontrado.
422Sem texto ou acima do limite, seções vazias ou com tema/comportamento inválido, a si mesmo, pessoa de outra comunidade ou que não abre o espaço, sem `spaceId` numa comunidade com vários espaços de Feedbacks (`spaceRequired`); sobre outra pessoa: sem líder, líder sem acesso, sobre si mesmo ou sendo o líder dela, `messageToSubject` sem `subjectId`.
500Erro interno do servidor.

Ejemplo con curl

curl -X POST "https://api.memberfy.net/api/feedbacks" \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID" \
  -H "Content-Type: application/json" \
  -d '{}'