funifier-mcp 0.2.0 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/.cursor/rules/funifier.mdc +91 -0
  2. package/.github/copilot-instructions.md +83 -0
  3. package/AGENTS.md +97 -0
  4. package/README.md +247 -78
  5. package/datasource-funifier-docs/knowledge/guides/aggregates.md +152 -152
  6. package/datasource-funifier-docs/knowledge/guides/database-access.md +132 -132
  7. package/datasource-funifier-docs/knowledge/guides/java-entities.md +373 -373
  8. package/datasource-funifier-docs/knowledge/guides/java-libraries.md +330 -330
  9. package/datasource-funifier-docs/knowledge/guides/java-managers.md +509 -509
  10. package/datasource-funifier-docs/knowledge/guides/triggers-guide.md +271 -271
  11. package/datasource-funifier-docs/knowledge/index.md +121 -121
  12. package/datasource-funifier-docs/knowledge/modules/achievement.md +46 -46
  13. package/datasource-funifier-docs/knowledge/modules/action-log.md +88 -88
  14. package/datasource-funifier-docs/knowledge/modules/action.md +80 -80
  15. package/datasource-funifier-docs/knowledge/modules/auth.md +104 -104
  16. package/datasource-funifier-docs/knowledge/modules/avatar.md +28 -28
  17. package/datasource-funifier-docs/knowledge/modules/backup.md +40 -40
  18. package/datasource-funifier-docs/knowledge/modules/challenge.md +91 -91
  19. package/datasource-funifier-docs/knowledge/modules/compact.md +40 -40
  20. package/datasource-funifier-docs/knowledge/modules/competition.md +149 -149
  21. package/datasource-funifier-docs/knowledge/modules/crossword.md +41 -41
  22. package/datasource-funifier-docs/knowledge/modules/csv-data.md +30 -30
  23. package/datasource-funifier-docs/knowledge/modules/custom-object.md +53 -53
  24. package/datasource-funifier-docs/knowledge/modules/database.md +241 -241
  25. package/datasource-funifier-docs/knowledge/modules/folder.md +111 -111
  26. package/datasource-funifier-docs/knowledge/modules/kpi-formulas.md +23 -23
  27. package/datasource-funifier-docs/knowledge/modules/lastmile.md +45 -45
  28. package/datasource-funifier-docs/knowledge/modules/leaderboard.md +98 -98
  29. package/datasource-funifier-docs/knowledge/modules/level.md +83 -83
  30. package/datasource-funifier-docs/knowledge/modules/lottery.md +112 -112
  31. package/datasource-funifier-docs/knowledge/modules/marketplace.md +27 -27
  32. package/datasource-funifier-docs/knowledge/modules/mystery.md +82 -82
  33. package/datasource-funifier-docs/knowledge/modules/notification.md +40 -40
  34. package/datasource-funifier-docs/knowledge/modules/patterns.md +1096 -1096
  35. package/datasource-funifier-docs/knowledge/modules/player.md +101 -101
  36. package/datasource-funifier-docs/knowledge/modules/point.md +67 -67
  37. package/datasource-funifier-docs/knowledge/modules/public.md +253 -253
  38. package/datasource-funifier-docs/knowledge/modules/question.md +136 -136
  39. package/datasource-funifier-docs/knowledge/modules/quiz.md +163 -163
  40. package/datasource-funifier-docs/knowledge/modules/scheduler.md +58 -58
  41. package/datasource-funifier-docs/knowledge/modules/security.md +169 -169
  42. package/datasource-funifier-docs/knowledge/modules/staging.md +28 -28
  43. package/datasource-funifier-docs/knowledge/modules/static-repo.md +41 -41
  44. package/datasource-funifier-docs/knowledge/modules/story.md +42 -42
  45. package/datasource-funifier-docs/knowledge/modules/studio-page.md +180 -180
  46. package/datasource-funifier-docs/knowledge/modules/swap.md +132 -132
  47. package/datasource-funifier-docs/knowledge/modules/team.md +75 -75
  48. package/datasource-funifier-docs/knowledge/modules/trigger.md +189 -189
  49. package/datasource-funifier-docs/knowledge/modules/upload.md +155 -155
  50. package/datasource-funifier-docs/knowledge/modules/virtual-good.md +99 -99
  51. package/datasource-funifier-docs/knowledge/modules/webhook.md +41 -41
  52. package/datasource-funifier-docs/knowledge/modules/websocket.md +41 -41
  53. package/datasource-funifier-docs/knowledge/modules/widget.md +42 -42
  54. package/datasource-funifier-docs/process-gtm-saas.md +143 -143
  55. package/datasource-funifier-docs/process-instagram.md +88 -88
  56. package/datasource-funifier-docs/process.md +1826 -1826
  57. package/datasource-funifier-docs/readme.md +132 -132
  58. package/dist/cli/config-writers.js +11 -11
  59. package/dist/mcp/bundle.js +82 -77
  60. package/package.json +70 -67
  61. package/skills/funifier-create-aggregate/SKILL.md +126 -126
  62. package/skills/funifier-create-custom-page/SKILL.md +126 -126
  63. package/skills/funifier-create-scheduler/SKILL.md +126 -126
  64. package/skills/funifier-create-trigger/SKILL.md +127 -127
@@ -1,111 +1,111 @@
1
- # Folder (Pasta)
2
-
3
- **Acesso Studio:** `/studio/folder`
4
- **API Endpoint:** `/v3/folder`
5
-
6
- ## O que é
7
-
8
- Organização de conteúdos e monitoramento do progresso em cursos ou trilhas. Permite criar pastas virtuais para agrupar conteúdos como quizzes, desafios, materiais de estudo e jogos, facilitando o acompanhamento do progresso dos jogadores em jornadas de aprendizagem ou trilhas gamificadas.
9
-
10
- ## Quando usar
11
-
12
- - Para estruturar cursos online
13
- - Para criar trilhas de capacitação
14
- - Para acompanhar progresso em treinamentos
15
- - Para organizar conteúdos em hierarquias (módulos → aulas → conteúdos)
16
-
17
- ## Checklist de Configuração no Studio
18
-
19
- - [ ] Criar estrutura hierárquica de pastas
20
- - [ ] Definir títulos das pastas
21
- - [ ] Associar conteúdos às pastas (quizzes, desafios, textos)
22
- - [ ] Definir tipos de conteúdo (folder_content_type)
23
- - [ ] Configurar pasta-pai (parent) para hierarquia
24
-
25
- ## API Endpoints
26
-
27
- ### Listar Pastas
28
- **Método:** GET
29
- **Endpoint:** `/v3/database/folder`
30
-
31
- ### Criar Pasta
32
- **Método:** POST
33
- **Endpoint:** `/v3/folder`
34
-
35
- **Exemplo de Body:**
36
- ```json
37
- {
38
- "title": "CoreDrives",
39
- "parent": "D0MmmNf"
40
- }
41
- ```
42
-
43
- ### Deletar Pasta
44
- **Método:** DELETE
45
- **Endpoint:** `/v3/folder/:id`
46
-
47
- ### Obter Breadcrumb
48
- **Método:** POST
49
- **Endpoint:** `/v3/folder/breadcrumb`
50
-
51
- **Exemplo de Body:**
52
- ```json
53
- {
54
- "folder": "CD1"
55
- }
56
- ```
57
-
58
- ### Listar Tipos de Conteúdo
59
- **Método:** GET
60
- **Endpoint:** `/v3/database/folder_content_type`
61
-
62
- ### Criar/Atualizar Tipo de Conteúdo
63
- **Método:** PUT
64
- **Endpoint:** `/v3/database/folder_content_type`
65
-
66
- **Exemplo de Body:**
67
- ```json
68
- {
69
- "_id": "text",
70
- "input": "formulary",
71
- "form": [
72
- { "name": "title", "type": "string", "title": "Title" },
73
- { "name": "content", "type": "text", "title": "Content" }
74
- ],
75
- "title": "Text",
76
- "entity": "text__c"
77
- }
78
- ```
79
-
80
- ## Casos de Uso Comuns
81
-
82
- - **Curso Online:** Pasta raiz "Curso de Vendas" → Subpastas "Módulo 1", "Módulo 2" → Conteúdos (textos, vídeos, quizzes)
83
- - **Trilha de Capacitação:** Pastas representam etapas; cada etapa contém materiais e avaliações
84
- - **Catálogo de Produtos:** Pastas como categorias; conteúdos como fichas de produto
85
- - **Onboarding:** Pastas representam fases do onboarding; progresso monitora completude
86
-
87
- ## Progresso do Jogador
88
-
89
- O Folder monitora automaticamente o progresso do jogador dentro da árvore de diretórios. Isso permite:
90
-
91
- - Saber que um jogador completou X% de um curso
92
- - Registrar action logs ao progredir (aciona técnicas de jogos)
93
- - Criar desafios vinculados à completude de um folder (ex: "Complete o curso para ganhar 500 XP")
94
-
95
- ## Integração com Outras Técnicas
96
-
97
- | Técnica | Integração |
98
- |---------|-----------|
99
- | **Challenge** | Desafio completado quando jogador termina todos os itens de um folder |
100
- | **Quiz** | Quizzes podem ser conteúdos dentro de um folder |
101
- | **Point** | Pontos concedidos ao progredir no folder |
102
- | **Achievement** | Conquista desbloqueada ao completar 100% do folder |
103
-
104
- ## Validações e Testes
105
-
106
- - [ ] Pasta aparece na lista
107
- - [ ] Hierarquia pai-filho funciona
108
- - [ ] Breadcrumb retorna caminho correto
109
- - [ ] Conteúdos são associados corretamente
110
- - [ ] Progresso do jogador é calculado corretamente
111
- - [ ] Action log é gerado ao progredir
1
+ # Folder (Pasta)
2
+
3
+ **Acesso Studio:** `/studio/folder`
4
+ **API Endpoint:** `/v3/folder`
5
+
6
+ ## O que é
7
+
8
+ Organização de conteúdos e monitoramento do progresso em cursos ou trilhas. Permite criar pastas virtuais para agrupar conteúdos como quizzes, desafios, materiais de estudo e jogos, facilitando o acompanhamento do progresso dos jogadores em jornadas de aprendizagem ou trilhas gamificadas.
9
+
10
+ ## Quando usar
11
+
12
+ - Para estruturar cursos online
13
+ - Para criar trilhas de capacitação
14
+ - Para acompanhar progresso em treinamentos
15
+ - Para organizar conteúdos em hierarquias (módulos → aulas → conteúdos)
16
+
17
+ ## Checklist de Configuração no Studio
18
+
19
+ - [ ] Criar estrutura hierárquica de pastas
20
+ - [ ] Definir títulos das pastas
21
+ - [ ] Associar conteúdos às pastas (quizzes, desafios, textos)
22
+ - [ ] Definir tipos de conteúdo (folder_content_type)
23
+ - [ ] Configurar pasta-pai (parent) para hierarquia
24
+
25
+ ## API Endpoints
26
+
27
+ ### Listar Pastas
28
+ **Método:** GET
29
+ **Endpoint:** `/v3/database/folder`
30
+
31
+ ### Criar Pasta
32
+ **Método:** POST
33
+ **Endpoint:** `/v3/folder`
34
+
35
+ **Exemplo de Body:**
36
+ ```json
37
+ {
38
+ "title": "CoreDrives",
39
+ "parent": "D0MmmNf"
40
+ }
41
+ ```
42
+
43
+ ### Deletar Pasta
44
+ **Método:** DELETE
45
+ **Endpoint:** `/v3/folder/:id`
46
+
47
+ ### Obter Breadcrumb
48
+ **Método:** POST
49
+ **Endpoint:** `/v3/folder/breadcrumb`
50
+
51
+ **Exemplo de Body:**
52
+ ```json
53
+ {
54
+ "folder": "CD1"
55
+ }
56
+ ```
57
+
58
+ ### Listar Tipos de Conteúdo
59
+ **Método:** GET
60
+ **Endpoint:** `/v3/database/folder_content_type`
61
+
62
+ ### Criar/Atualizar Tipo de Conteúdo
63
+ **Método:** PUT
64
+ **Endpoint:** `/v3/database/folder_content_type`
65
+
66
+ **Exemplo de Body:**
67
+ ```json
68
+ {
69
+ "_id": "text",
70
+ "input": "formulary",
71
+ "form": [
72
+ { "name": "title", "type": "string", "title": "Title" },
73
+ { "name": "content", "type": "text", "title": "Content" }
74
+ ],
75
+ "title": "Text",
76
+ "entity": "text__c"
77
+ }
78
+ ```
79
+
80
+ ## Casos de Uso Comuns
81
+
82
+ - **Curso Online:** Pasta raiz "Curso de Vendas" → Subpastas "Módulo 1", "Módulo 2" → Conteúdos (textos, vídeos, quizzes)
83
+ - **Trilha de Capacitação:** Pastas representam etapas; cada etapa contém materiais e avaliações
84
+ - **Catálogo de Produtos:** Pastas como categorias; conteúdos como fichas de produto
85
+ - **Onboarding:** Pastas representam fases do onboarding; progresso monitora completude
86
+
87
+ ## Progresso do Jogador
88
+
89
+ O Folder monitora automaticamente o progresso do jogador dentro da árvore de diretórios. Isso permite:
90
+
91
+ - Saber que um jogador completou X% de um curso
92
+ - Registrar action logs ao progredir (aciona técnicas de jogos)
93
+ - Criar desafios vinculados à completude de um folder (ex: "Complete o curso para ganhar 500 XP")
94
+
95
+ ## Integração com Outras Técnicas
96
+
97
+ | Técnica | Integração |
98
+ |---------|-----------|
99
+ | **Challenge** | Desafio completado quando jogador termina todos os itens de um folder |
100
+ | **Quiz** | Quizzes podem ser conteúdos dentro de um folder |
101
+ | **Point** | Pontos concedidos ao progredir no folder |
102
+ | **Achievement** | Conquista desbloqueada ao completar 100% do folder |
103
+
104
+ ## Validações e Testes
105
+
106
+ - [ ] Pasta aparece na lista
107
+ - [ ] Hierarquia pai-filho funciona
108
+ - [ ] Breadcrumb retorna caminho correto
109
+ - [ ] Conteúdos são associados corretamente
110
+ - [ ] Progresso do jogador é calculado corretamente
111
+ - [ ] Action log é gerado ao progredir
@@ -1,23 +1,23 @@
1
- # KPI Formulas (Fórmulas de KPI)
2
-
3
- ## O que é
4
-
5
- Configuração de regras e cálculos avançados para avaliar ações dos jogadores. Permite criar fórmulas customizadas para avaliação de desempenho e resultados, indo além das regras padrão dos outros módulos.
6
-
7
- ## Quando usar
8
-
9
- - Para cálculos avançados de desempenho que os módulos padrão não atendem
10
- - Para fórmulas considerando múltiplos critérios (quantidade, valor, tempo)
11
- - Para regras avançadas de rankings
12
- - **Importante:** usar com critério, apenas quando recursos padrão não atendem
13
-
14
- ## Checklist de Configuração
15
-
16
- - [ ] Definir a fórmula de cálculo
17
- - [ ] Vincular aos desafios ou rankings relevantes
18
- - [ ] Testar com dados reais
19
-
20
- ## Validações e Testes
21
-
22
- - [ ] Fórmula retorna resultados esperados
23
- - [ ] Cálculo funciona com diferentes combinações de dados
1
+ # KPI Formulas (Fórmulas de KPI)
2
+
3
+ ## O que é
4
+
5
+ Configuração de regras e cálculos avançados para avaliar ações dos jogadores. Permite criar fórmulas customizadas para avaliação de desempenho e resultados, indo além das regras padrão dos outros módulos.
6
+
7
+ ## Quando usar
8
+
9
+ - Para cálculos avançados de desempenho que os módulos padrão não atendem
10
+ - Para fórmulas considerando múltiplos critérios (quantidade, valor, tempo)
11
+ - Para regras avançadas de rankings
12
+ - **Importante:** usar com critério, apenas quando recursos padrão não atendem
13
+
14
+ ## Checklist de Configuração
15
+
16
+ - [ ] Definir a fórmula de cálculo
17
+ - [ ] Vincular aos desafios ou rankings relevantes
18
+ - [ ] Testar com dados reais
19
+
20
+ ## Validações e Testes
21
+
22
+ - [ ] Fórmula retorna resultados esperados
23
+ - [ ] Cálculo funciona com diferentes combinações de dados
@@ -1,45 +1,45 @@
1
- # LastMile (Última Milha)
2
-
3
- **Acesso Studio:** `/studio/lastmile`
4
- **API Endpoint:** `/v3/lastmile`
5
-
6
- ## O que é
7
-
8
- Envio de mensagens motivacionais quando o jogador está próximo de uma meta. Permite configurar mensagens automáticas para engajar e lembrar os jogadores sobre metas e desafios que estão prestes a serem concluídos, aumentando a taxa de finalização.
9
-
10
- ## Quando usar
11
-
12
- - Para lembrar jogadores que estão perto de completar desafios
13
- - Para aumentar taxa de conclusão de metas
14
- - Para enviar mensagens motivacionais personalizadas
15
- - Para engajar jogadores que estão a 80-90% de uma meta
16
-
17
- ## Dependências
18
-
19
- - **Challenge**: desafios devem existir para monitorar progresso
20
-
21
- ## Checklist de Configuração no Studio
22
-
23
- - [ ] Definir condição de disparo (% de progresso)
24
- - [ ] Definir mensagem motivacional
25
- - [ ] Vincular ao desafio ou meta específica
26
-
27
- ## API Endpoints
28
-
29
- ### Listar LastMile
30
- **Método:** GET
31
- **Endpoint:** `/v3/lastmile`
32
-
33
- ### Criar LastMile
34
- **Método:** POST
35
- **Endpoint:** `/v3/lastmile`
36
-
37
- ### Deletar LastMile
38
- **Método:** DELETE
39
- **Endpoint:** `/v3/lastmile/:id`
40
-
41
- ## Validações e Testes
42
-
43
- - [ ] Configuração de LastMile aparece na lista
44
- - [ ] Mensagem é disparada ao atingir % configurado
45
- - [ ] Jogador recebe notificação corretamente
1
+ # LastMile (Última Milha)
2
+
3
+ **Acesso Studio:** `/studio/lastmile`
4
+ **API Endpoint:** `/v3/lastmile`
5
+
6
+ ## O que é
7
+
8
+ Envio de mensagens motivacionais quando o jogador está próximo de uma meta. Permite configurar mensagens automáticas para engajar e lembrar os jogadores sobre metas e desafios que estão prestes a serem concluídos, aumentando a taxa de finalização.
9
+
10
+ ## Quando usar
11
+
12
+ - Para lembrar jogadores que estão perto de completar desafios
13
+ - Para aumentar taxa de conclusão de metas
14
+ - Para enviar mensagens motivacionais personalizadas
15
+ - Para engajar jogadores que estão a 80-90% de uma meta
16
+
17
+ ## Dependências
18
+
19
+ - **Challenge**: desafios devem existir para monitorar progresso
20
+
21
+ ## Checklist de Configuração no Studio
22
+
23
+ - [ ] Definir condição de disparo (% de progresso)
24
+ - [ ] Definir mensagem motivacional
25
+ - [ ] Vincular ao desafio ou meta específica
26
+
27
+ ## API Endpoints
28
+
29
+ ### Listar LastMile
30
+ **Método:** GET
31
+ **Endpoint:** `/v3/lastmile`
32
+
33
+ ### Criar LastMile
34
+ **Método:** POST
35
+ **Endpoint:** `/v3/lastmile`
36
+
37
+ ### Deletar LastMile
38
+ **Método:** DELETE
39
+ **Endpoint:** `/v3/lastmile/:id`
40
+
41
+ ## Validações e Testes
42
+
43
+ - [ ] Configuração de LastMile aparece na lista
44
+ - [ ] Mensagem é disparada ao atingir % configurado
45
+ - [ ] Jogador recebe notificação corretamente
@@ -1,98 +1,98 @@
1
- # Leaderboard (Ranking)
2
-
3
- **Acesso Studio:** `/studio/leaderboard`
4
- **API Endpoint:** `/v3/leaderboard`
5
-
6
- ## O que é
7
-
8
- Criação e gestão de rankings. Permite comparar o desempenho dos jogadores utilizando diferentes critérios, como pontos, tempo, ou métricas customizadas. Rankings podem ser individuais, por equipes, por período ou por status.
9
-
10
- ## Quando usar
11
-
12
- - Para criar competição saudável entre jogadores
13
- - Para dar visibilidade ao desempenho
14
- - Para motivar através de comparação social
15
- - Para rankings semanais, mensais ou em tempo real
16
-
17
- ## Dependências
18
-
19
- - **Point** ou **Action**: o critério de ranking deve estar configurado
20
-
21
- ## Checklist de Configuração no Studio
22
-
23
- - [ ] Definir título e descrição
24
- - [ ] Definir tipo de principal (0 = jogador, 1 = equipe)
25
- - [ ] Definir operação (tipo de métrica, item, ordenação)
26
- - [ ] Definir período (semanal, mensal, tempo real)
27
- - [ ] Vincular técnicas de jogo
28
-
29
- ## API Endpoints
30
-
31
- ### Listar Leaderboards
32
- **Método:** GET
33
- **Endpoint:** `/v3/leaderboard`
34
-
35
- **Exemplo de Resposta:**
36
- ```json
37
- [
38
- {
39
- "title": "Top Players",
40
- "description": "Players with the most points xp in the week",
41
- "principalType": 0,
42
- "operation": {
43
- "type": 3,
44
- "achievement_type": 0,
45
- "item": "xp",
46
- "filters": [],
47
- "sort": -1,
48
- "sub": false
49
- },
50
- "period": {
51
- "type": 0,
52
- "timeAmount": 1,
53
- "timeScale": 6
54
- },
55
- "techniques": ["GT03"],
56
- "_id": "DTjTvZ5"
57
- }
58
- ]
59
- ```
60
-
61
- ### Criar Leaderboard
62
- **Método:** POST
63
- **Endpoint:** `/v3/leaderboard`
64
- (Body igual ao exemplo de resposta acima)
65
-
66
- ### Deletar Leaderboard
67
- **Método:** DELETE
68
- **Endpoint:** `/v3/leaderboard/:id`
69
-
70
- ### Obter Lista de Líderes
71
- **Método:** POST
72
- **Endpoint:** `/v3/leaderboard/:id/leader/aggregate?period=&live=true`
73
-
74
- **Exemplo de Resposta:**
75
- ```json
76
- [
77
- {
78
- "_id": "tom_D0zCMvq",
79
- "total": 30,
80
- "position": 1,
81
- "move": "up",
82
- "player": "tom",
83
- "name": "Tom",
84
- "boardId": "DTjTvZ5"
85
- }
86
- ]
87
- ```
88
-
89
- ### Resetar Cache
90
- **Método:** GET
91
- **Endpoint:** `/v3/leaderboard/reset`
92
-
93
- ## Validações e Testes
94
-
95
- - [ ] Leaderboard aparece na lista GET /v3/leaderboard
96
- - [ ] Lista de líderes retorna jogadores ordenados
97
- - [ ] Período está configurado corretamente
98
- - [ ] Cache pode ser resetado com sucesso
1
+ # Leaderboard (Ranking)
2
+
3
+ **Acesso Studio:** `/studio/leaderboard`
4
+ **API Endpoint:** `/v3/leaderboard`
5
+
6
+ ## O que é
7
+
8
+ Criação e gestão de rankings. Permite comparar o desempenho dos jogadores utilizando diferentes critérios, como pontos, tempo, ou métricas customizadas. Rankings podem ser individuais, por equipes, por período ou por status.
9
+
10
+ ## Quando usar
11
+
12
+ - Para criar competição saudável entre jogadores
13
+ - Para dar visibilidade ao desempenho
14
+ - Para motivar através de comparação social
15
+ - Para rankings semanais, mensais ou em tempo real
16
+
17
+ ## Dependências
18
+
19
+ - **Point** ou **Action**: o critério de ranking deve estar configurado
20
+
21
+ ## Checklist de Configuração no Studio
22
+
23
+ - [ ] Definir título e descrição
24
+ - [ ] Definir tipo de principal (0 = jogador, 1 = equipe)
25
+ - [ ] Definir operação (tipo de métrica, item, ordenação)
26
+ - [ ] Definir período (semanal, mensal, tempo real)
27
+ - [ ] Vincular técnicas de jogo
28
+
29
+ ## API Endpoints
30
+
31
+ ### Listar Leaderboards
32
+ **Método:** GET
33
+ **Endpoint:** `/v3/leaderboard`
34
+
35
+ **Exemplo de Resposta:**
36
+ ```json
37
+ [
38
+ {
39
+ "title": "Top Players",
40
+ "description": "Players with the most points xp in the week",
41
+ "principalType": 0,
42
+ "operation": {
43
+ "type": 3,
44
+ "achievement_type": 0,
45
+ "item": "xp",
46
+ "filters": [],
47
+ "sort": -1,
48
+ "sub": false
49
+ },
50
+ "period": {
51
+ "type": 0,
52
+ "timeAmount": 1,
53
+ "timeScale": 6
54
+ },
55
+ "techniques": ["GT03"],
56
+ "_id": "DTjTvZ5"
57
+ }
58
+ ]
59
+ ```
60
+
61
+ ### Criar Leaderboard
62
+ **Método:** POST
63
+ **Endpoint:** `/v3/leaderboard`
64
+ (Body igual ao exemplo de resposta acima)
65
+
66
+ ### Deletar Leaderboard
67
+ **Método:** DELETE
68
+ **Endpoint:** `/v3/leaderboard/:id`
69
+
70
+ ### Obter Lista de Líderes
71
+ **Método:** POST
72
+ **Endpoint:** `/v3/leaderboard/:id/leader/aggregate?period=&live=true`
73
+
74
+ **Exemplo de Resposta:**
75
+ ```json
76
+ [
77
+ {
78
+ "_id": "tom_D0zCMvq",
79
+ "total": 30,
80
+ "position": 1,
81
+ "move": "up",
82
+ "player": "tom",
83
+ "name": "Tom",
84
+ "boardId": "DTjTvZ5"
85
+ }
86
+ ]
87
+ ```
88
+
89
+ ### Resetar Cache
90
+ **Método:** GET
91
+ **Endpoint:** `/v3/leaderboard/reset`
92
+
93
+ ## Validações e Testes
94
+
95
+ - [ ] Leaderboard aparece na lista GET /v3/leaderboard
96
+ - [ ] Lista de líderes retorna jogadores ordenados
97
+ - [ ] Período está configurado corretamente
98
+ - [ ] Cache pode ser resetado com sucesso