Setup serveur pour l’API REST (Flask) + variables .env #17
Labels
No labels
In progress
Pending
Priority
High
Priority
Low
Priority
Normal
Priority
Urgent
Won't do
auto-report
bot-api
bug
enhancement
filesystem
git
infrastructure
manual-report
manual-suggestion
sécurité
windows
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: Gameur/Kuby#17
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Contexte
Une API REST Flask a été ajoutée au bot Kuby (démarrée automatiquement au
lancement du bot via un thread).
Elle expose des endpoints HTTP :
GET /api/statusGET /api/user/<id>GET /api/guildsGET /api/guild/<id>🎯 Objectif de cette issue
.envnécessaires (noms exacts) pour finaliser/configurer le déploiement🆕 Ce qui a été ajouté côté code
Dépendances :
flaskflask-corsDémarrage API : automatique au boot du bot (
MyBot.setup_hook)Fichiers principaux :
src/api/app.py
src/api/routes.py
src/api/config.py
.env.example
⚙️ Actions à faire côté serveur (obligatoire)
1. Réseau / Ports
5000)127.0.0.1→ local uniquement0.0.0.0→ externe2. Dépendances Python
Confirmer la version Python dispo sur le serveur (idéalement >= 3.10)
Si exposition publique :
Mettre un reverse proxy (Nginx / Apache)
HTTPS (certificat)
Optionnel : auth / restriction IP (car l'API est ouverte)
🔐 Variables .env requises (noms exacts)
Discord
DISCORD_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxx
APPLICATION_ID=123456789012345678
API Flask
API_HOST=127.0.0.1
API_PORT=5000
API_DEBUG=False
API_SECRET_KEY=change_me
❓ Questions / Infos manquantes pour finaliser le déploiement
Copier le tableau
Variable
Question
API_HOST
Laisser 127.0.0.1 (local) ou passer à 0.0.0.0 (réseau) ?
API_PORT
Le port 5000 est-il OK ou faut-il un autre port ?
API_SECRET_KEY
Quelle valeur utiliser en production ? (à définir, non committée)
✅ Endpoints à tester après déploiement
Statut de l'API
curl http://127.0.0.1:5000/api/status
Liste des serveurs
curl http://127.0.0.1:5000/api/guilds
Infos d'un utilisateur
curl http://127.0.0.1:5000/api/user/123456789012345678
Infos d'un serveur
curl http://127.0.0.1:5000/api/guild/123456789012345678
⚠️ Notes importantes (sécurité)
L'API n'a pas d'authentification pour l'instant.
Si l'API est exposée publiquement :
Restreindre par IP
Ajouter un token / API key
Mettre derrière un reverse proxy avec auth
PS: c'est sur ma branche dev-kma, pour tester en local clone le site web et va sur cette page localhost/website/page/test2.html sa devrait afficher les serveur et l'utilisateur de ton choix.
set status to To do
assigned to @Gameur.py
added time estimate of 3h
set status to Done
set status to Won't do
set status to To do
set status to Done