RechercheUtilisateur - Alexis-Savoie/neodomo_api GitHub Wiki

Recherche d'utilisateurs

Permet de rechercher des utilisateurs selon certains critères.

URL : /admin/searchUser

Méthode : POST

Authentification requise : OUI

Headers

{ "Authorization": "Bearer [token]" }

Données optionnel

{
    "emailUser": "[string]",
    "firstname": "[string]",
    "lastname": "[string]",
    "accountType": "[(eleve, staff, association)]",
    "status": "[string]",
    "isBlocked": "[boolean]",
    "createdAtFrom": "[date]",
    "createdAtAt": "[date]",
    "lastActivityFrom": "[date]",
    "lastActivityAt": "[date]"
}

Example de données

{
    "lastname": "Michel",
    "accountType": "eleve",
    "status": "CDA",
    "isBlocked": "false",
    "createdAtFrom": "2021-01-01T00:00:00Z",
    "createdAtAt": "2021-03-01T00:00:00Z",
    "lastActivityFrom": "2021-01-01T00:00:00Z",
    "lastActivityAt": "2021-03-01T00:00:00Z"
}

Réponse(s) en cas de succès

Condition : Résultat non vide

Code : 200

Contenu :

{
    "error": false,
    "message": "succès (non-vide)",
    "users": {
        "emailUser": "XXX",
        "username": "XXX",
        "firstname": "XXX",
        "lastname": "XXX",
        "gender": "XXX",
        "passwordUser": "XXX",
        "temporaryPasswordUser": "XXX",
        "tokenUser": "XXX",
        "accountType": "XXX",
        "status": "XXX",
        "nbLoginTryUser": "XXX",
        "dateBlockCooldownUser": "XXX",
        "accountActivate": "XXX",
        "isBlocked": "XXX",
        "domoBalance": "XXX",
        "createdAt": "YYYY-MM-DDTHH:MM:SSZ",
        "lastActivity": "YYYY-MM-DDTHH:MM:SSZ",
        "currentStreak": "XXX",
        "listFollow": {
            "email": "XXX",
            "email": "XXX"
        },
        "listFollowed": {
            "email": "XXX",
            "email": "XXX"
        },
        "listMuted": {
            "email": "XXX",
            "email": "XXX"
        },
        "ListAssociationJoined": {
            "email": "XXX",
            "email": "XXX"
        },
        "ListAssociationMember": {
            "email": "XXX",
            "email": "XXX"
        }
    }
}

Condition : Résultat vide

Code : 200

Contenu :

{
    "error": false,
    "message": "succès (vide)"
}

Réponse(s) en cas d'erreur

Condition : Token invalide

Code : 401

Contenu :

{
    "error": true,
    "message": "Votre token n'est pas correct"
}

Condition : L'une des données envoyés dans la requête est invalide.

Code : 403

Contenu :

{
    "error": true,
    "message": "Une ou plusieurs données est invalide"
}

Explication

Après la vérification des données, on effectue un find avec mongoose qui prend un argument un objet composé des données envoyés et en renvoie le résultat à l'administrateur.