Lister les utilisateurs (membres)
Liste les utilisateurs actifs ou archivés avec leurs rôles et équipes Spendesk. Tient compte de la limitation de résultats pour les grandes entreprises via la pagination.
86/100·🔍 Ponctuel·DébutantControllerFinance Analyst
ParamétrageConformitéget_users
🎯 But du skill
Liste les utilisateurs actifs ou archivés avec leurs rôles et équipes Spendesk. Tient compte de la limitation de résultats pour les grandes entreprises via la pagination.
📊 Ce que ça produit
Annuaire des membres avec rôle Spendesk, équipe d'appartenance et statut (actif/archivé).
⚡ Bénéfice
Avant
Export manuel de l'annuaire — pas de vue combinée rôles et équipes en une seule requête.
Après
Annuaire complet rôles + équipes instantané, avec pagination automatique.
# Instructions — Lister les utilisateurs (membres)
## ⚠️ Rôles et équipes non disponibles
`get_users` retourne : `id`, `firstName`, `lastName`, `email`, `companyId`
**Ce qui n'est PAS disponible :**
- Rôle (admin, contrôleur, employé...)
- Équipe / département
- Date d'embauche ou de départ
→ Pour filtrer "les admins" ou "les managers" : impossible via `get_users` seul.
→ Solution : utiliser les cost centers ou champs analytiques comme proxy organisationnel.
## ⚠️ Utilisateurs archivés : firstName et lastName = null
Les utilisateurs archivés n'ont ni prénom ni nom — seuls `id` et `email` sont présents.
```json
// Utilisateur actif :
{ "id": "...", "firstName": "Alice", "lastName": "Martin", "email": "alice@spendesk.com" }
// Utilisateur archivé :
{ "id": "...", "firstName": null, "lastName": null, "email": "alice@spendesk.com" }
```
→ Toujours utiliser `email` comme label de fallback si `firstName=null`.
→ Format d'affichage recommandé : `firstName + lastName || email`
## ⚠️ Cache 1200 secondes (20 minutes)
Les données peuvent avoir jusqu'à 20min de retard.
→ Pour du temps réel (onboarding en cours, départ récent), en informer l'utilisateur.
## Étape 1 — Lister les utilisateurs actifs
```json
{ "companyId": "...", "status": "active", "pageSize": 100 }
```
Toujours paginer jusqu'à `hasNextPage=false` — ce compte a plus de 10 utilisateurs actifs (hasNextPage=true dès pageSize=10).
## Étape 2 — Inclure les utilisateurs archivés (audit historique)
```json
{ "companyId": "...", "status": "archived", "pageSize": 100 }
```
Usage : retrouver les dépenses passées d'un ancien employé (par email ou userId).
⚠️ `firstName`/`lastName` sont null — n'afficher que l'email ou l'ID.
## Étape 3 — Résoudre un userId en nom
Pour résoudre un `memberId` (issu d'une payable) en nom d'employé :
1. Appeler `get_users` (status=active)
2. Si non trouvé, appeler `get_users` (status=archived)
3. Afficher : `${user.firstName} ${user.lastName}` si non-null, sinon `user.email`
## Étape 4 — Utilisation comme référentiel pour spendesk_analyze_spend
Pour filtrer les dépenses par employé :
1. `get_users` → trouver le `userId` par prénom/email
2. Passer `filters.employeeIds=[userId]` dans `spendesk_analyze_spend`
## Exemple live (données réelles)
- Utilisateurs actifs : > 10 (hasNextPage=true à pageSize=10)
- Utilisateurs archivés : > 5 (hasNextPage=true à pageSize=5)
- Format archivé confirmé : `{ firstName: null, lastName: null, email: "nina.mayer@spendesk.com" }`
## Exemple de prompt
- "Liste tous les employés actifs" → status=active + pagination complète
- "Retrouve les dépenses de Nina Mayer (ancienne employée)" → status=archived, filter by email
- "Qui a le plus de dépenses en juin ?" → get_users + spendesk_analyze_spend groupBy=employee
Comment installer ce skill
/
- 1Télécharger le fichier
s35-get-users-roles-teams.mdvia le bouton ci-dessus. - 2Placer le fichier dans le répertoire
.claude/de votre projet (ou~/.claude/pour une installation globale).cp s35-get-users-roles-teams.md .claude/s35-get-users-roles-teams.md - 3Utiliser dans Claude Code — le skill est automatiquement découvert. Décrivez votre besoin en langage naturel et Claude appliquera les instructions du skill.
💡 Assurez-vous que le MCP Spendesk est configuré dans votre
.claude/settings.json avec les outils get_users.Skills similaires
★ Top