Grupos de Amigos
Criar Grupo de Amigos
Cria um novo grupo de amigos para competições privadas de streak
POST
Descrição
Cria um novo grupo de amigos para competições privadas de streak. O usuário que cria o grupo automaticamente se torna o primeiro membro e pode convidar outros leitores.Autenticação
Esta rota requer autenticação JWT. O usuário autenticado será definido como dono do grupo.
Request Body
Nome do grupo (máximo 100 caracteres)
Descrição opcional do grupo (máximo 500 caracteres)
Se o grupo é público (qualquer um pode ver) ou privado (apenas membros)
Limite máximo de membros (máximo 200)
Response
Indica se a criação foi bem-sucedida
Regras de Negócio
Validações
- Nome: Obrigatório, máximo 100 caracteres
- Descrição: Opcional, máximo 500 caracteres
- maxMembers: Entre 1 e 200 membros
- Único por usuário: Um usuário pode criar múltiplos grupos
Comportamentos
- Criador automaticamente vira primeiro membro
- GroupId é gerado automaticamente (10 caracteres únicos)
- Timestamps em Unix timestamp (segundos)
- isPublic armazenado como integer (0/1) no banco
Limites
- Grupos por usuário: Ilimitado
- Membros por grupo: Configurável (padrão 50, máximo 200)
- Nome do grupo: Único por usuário recomendado
Próximos Passos
Após criar o grupo, você pode:- Adicionar membros:
POST /streaks/groups/:groupId/members - Ver ranking do grupo:
GET /streaks/groups/:groupId/ranking - Listar seus grupos:
GET /streaks/groups
Notas de Implementação
ID Generation
- Utiliza
nanoid(10)para IDs únicos e seguros - IDs são URL-safe e legíveis
Database
- Armazenado na tabela
friendGroups - Índices em
groupIdeownerEmail - Relacionamento com
friendGroupMemberspara membros
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
