Saltar para o conteúdo

Abre o ciclo e cria as atribuições

POST/api/performance-reviews/cycles/{cycleId}/open

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.

Owner e admin; rascunho → aberto. As atribuições saem da hierarquia agora e **congelam**: autoavaliação de cada participante, uma do líder direto por liderado, pares (quem tem o mesmo líder, até `nomination.max` por pessoa, em rodízio) e liderado → líder, conforme as relações ligadas. Troca de líder depois não muda nada; quem sai da comunidade tem as atribuições canceladas; quem entra depois só entra pelo `POST .../assignments`. Recusado (409) sem participantes (`noParticipants`), sem perguntas (`noQuestions`) ou com alguém "sem gestor" (`withoutManager`, a lista em `data.withoutManager`). Líder direto sem acesso ao espaço conta como "sem gestor": 409 `managerWithoutAccess`, com a mensagem nomeando os gestores e as listas em `data.managersWithoutAccess` e `data.withoutManager`. Quem tem atribuição recebe, pela fila, o e-mail "ciclo aberto" (categoria `performanceReview`, sem nenhuma resposta).

Parâmetros

NomeOndeTipoDescrição
cycleIdobrigató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

A especificação não declara os campos deste corpo (upload multipart, por exemplo). Consulte o guia do assunto.

Respostas

CódigoDescrição
200O ciclo.
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 (`teamOnly`: só owner e admin; `progressDenied`/`resultsDenied`: quem não lidera ninguém; `supportSession`).
404Recurso não encontrado.
409`cycleNotDraft`, `noQuestions`, `noParticipants`, `managerWithoutAccess` ou `withoutManager`.
500Erro interno do servidor.

Exemplo com curl

curl -X POST "https://api.memberfy.net/api/performance-reviews/cycles/<cycleId>/open" \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID" \
  -H "Content-Type: application/json" \
  -d '{}'