Skip to content
This repository was archived by the owner on Jul 13, 2023. It is now read-only.

SIB-rennes/DataEtatBretagne-back

Repository files navigation

API Regate Num Data Etat

Gestion des API nocode pour le projet Regate Num Data Etat

Conventional Commits Python version Flask version Postgresql version Docker build

Description

Ce projet contient une suite d'API REST développées avec Flask-RESTx et Python 3.11. Ces API permettent de gérer des utilisateurs Keycloak, en les activant ou en les désactivant. Elles permettent également d'interroger des outils nocode tels que NocoDb et d'intégrer les fichiers Chorus de l'état pour recouper les données.

Pour le développement

Fichier de configuration

Copier le fichier config_template.yml en config.yml.

cp config/config_template.yml config/config.yml

Copier le fichier oidc_template.yml en config.yml.

cp config/oidc_template.yml config/oidc.yml

Remplacer les variables

Nom de la variable Description
DEBUG Active ou désactive le mode debug
SQLALCHEMY_DATABASE_URI URL de connexion à la base de données PostgreSQL
CELERY_BROKER_URL URL du broker Redis pour Celery
result_backend URL de connexion à la base de données PostgreSQL pour stocker les résultats de Celery
UPLOAD_FOLDER Dossier où sont stockés les fichiers envoyés par l'utilisateur
KEYCLOAK_ADMIN_URL URL de l'administration de Keycloak
KEYCLOAK_ADMIN_SECRET_KEY Clé secrète pour l'administration de Keycloak
KEYCLOAK_ADMIN_REALM Realm de Keycloak
SECRET_KEY Clé secrète utilisée par keycloak
NOCODB_URL URL de NocoDB
NOCODB_PROJECT Liste des projets de NocoDB à utiliser avec le token api

Installation

Initialisez un venv python. Puis:

pip install pip-tools
pip-compile --resolver=backtracking && pip-compile --resolver=backtracking dev-requirements.in
pip-sync requirements.txt dev-requirements.txt

Mode Api

FLASK_APP="app:create_app_api" flask run  --host "0.0.0.0"

Utilisation

UserManagement

Pour utiliser ces API, vous pouvez utiliser un outil de test d'API comme Postman ou Insomnia. Voici les différentes routes disponibles :

  • GET /users : Récupère la liste de tous les utilisateurs avec des informations de pagination PATCH /users/disable/ : Désactive un utilisateur avec l'ID spécifié
  • PATCH /users/disable/<uuid> : Désactive un utilisateur avec l'ID spécifié
    • PATCH /users/enable/<uuid> : Active un utilisateur avec l'ID spécifié

About

Backend Python du projet Data Etat bretagne.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages