Saltar para o conteúdo

Responde a um pedido de feedback

POST/api/feedbacks/requests/{id}/answer

Auth
Exige token
Chave de API:
Não aceita chave de API
X-CommunityId
X-CommunityId Envie o X-CommunityId da comunidade em que a operação acontece.

Só a pessoa a quem foi pedido (quem pediu: 403; qualquer outra: 404), enquanto o pedido está `PENDING` (respondido, recusado ou cancelado: 409). Vira um feedback para quem pediu, ligado ao pedido (`requestId`), e o pedido passa a `ANSWERED`. Quem pediu recebe, 10 minutos depois, o e-mail "Fulano respondeu o seu pedido de feedback" (categoria `feedbacks`), sem o texto. Devolve o `Feedback` criado + `emailNotice`. Texto livre em `body`, ou o modelo guiado em `sections` (o app abre uma seção por tema pedido; a pessoa pode remover seções e adicionar outros temas). Os temas do pedido continuam aceitos mesmo se desativados depois. Num pedido **sobre outra pessoa**, `body`/`sections` são o feedback interno (quem pediu e o líder direto da pessoa neste momento leem) e `messageToSubject` (opcional) é a mensagem para a pessoa, que a lê com o nome de quem escreveu e recebe "Fulano te deixou uma mensagem" (`messageNotice`); quem pediu recebe "Fulano respondeu o seu pedido de feedback sobre uma pessoa do time". `messageToSubject` em pedido direto: 422.

Parâmetros

NomeOndeTipoDescrição
idobrigatóriopathstring (uuid)

Headers

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

Corpo da requisição application/json

NomeTipoDescrição
bodyopcionalstringTexto livre; obrigatório sem `sections`. · max 20000
messageToSubjectopcionalstringSó em pedido sobre outra pessoa: a mensagem para ela (texto rico, opcional). · 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[].themeIdobrigatóriostring (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).

Respostas

CódigoDescrição
201O feedback criado.
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.
409O pedido não está mais pendente.
422Sem texto ou acima do limite, ou quem pediu não abre mais o espaço.
500Erro interno do servidor.

Exemplo com curl

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