Docs/API et Webhooks/Équipes

Équipes

Les équipes regroupent les utilisateurs pour les rapports, les agrégations de conformité et les affectations à portée d'équipe. Tous les points de terminaison se trouvent sous /api/public/v1/teams. Un utilisateur peut être dans zéro ou une équipe à la fois.

Points de terminaison

MéthodeCheminPortéeObjectif
GET/teamsteams:readLister les équipes avec le nombre de membres.
GET/teams/{'{'}id{'}'}teams:readÉquipe unique avec liste de membres.
POST/teamsteams:writeCréer une équipe.
PATCH/teams/{'{'}id{'}'}teams:writeRenommer une équipe.
DELETE/teams/{'{'}id{'}'}teams:writeSupprimer une équipe. Les membres sont non attribués, non désactivés.
POST/teams/{'{'}teamId{'}'}/members/{'{'}userId{'}'}teams:writeAjouter un utilisateur à une équipe.
DELETE/teams/{'{'}teamId{'}'}/members/{'{'}userId{'}'}teams:writeRetirer un utilisateur d'une équipe.

Lister les équipes

Renvoie chaque équipe de l'organisation. Le nombre de membres est dénormalisé — appelez GET /teams/{id} pour la liste réelle.

GET /api/public/v1/teams
Authorization: Bearer scs_live_…

Réponse

[
  {
    "id": "4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32",
    "name": "Payments",
    "memberCount": 12,
    "createdAt": "2025-11-03T14:20:00Z"
  },
  {
    "id": "a52e1f9b-8c44-4a31-9c0d-3b62e0a17c84",
    "name": "Platform",
    "memberCount": 8,
    "createdAt": "2025-11-03T14:21:42Z"
  }
]

Exemple

curl -sS -H "Authorization: Bearer $SCH_API_KEY" \
  https://api.limeplate.com/api/public/v1/teams

Récupérer une équipe

Renvoie l'équipe plus sa liste de membres avec la même forme que GET /users/{id} moins les tableaux de progression.

GET /api/public/v1/teams/{teamId}
Authorization: Bearer scs_live_…

Réponse

{
  "id": "4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32",
  "name": "Payments",
  "createdAt": "2025-11-03T14:20:00Z",
  "members": [
    {
      "id": "b1a4d7c2-9e58-4f3a-83cd-2c6f1a90e7b4",
      "name": "Jane Smith",
      "email": "jane.smith@acme.com",
      "role": "member",
      "teamId": "4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32",
      "teamName": "Payments",
      "isActive": true,
      "lastLoginAt": "2026-05-27T16:42:11Z",
      "createdAt": "2026-02-04T11:08:00Z"
    }
  ]
}

Exemple

curl -sS -H "Authorization: Bearer $SCH_API_KEY" \
  https://api.limeplate.com/api/public/v1/teams/4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32

Créer une équipe

Les noms d'équipe doivent être uniques dans l'organisation. La réponse renvoie la nouvelle équipe avec un nombre de membres de zéro.

POST /api/public/v1/teams
Authorization: Bearer scs_live_…
Content-Type: application/json

Corps de requête

ChampTypeRequisSignification
namestringouiNom d'affichage de l'équipe. Doit être unique dans l'organisation.

Réponse

{
  "id": "4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32",
  "name": "Payments",
  "memberCount": 0,
  "createdAt": "2026-05-29T09:30:12Z"
}

Exemple

curl -sS -X POST \
  -H "Authorization: Bearer $SCH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name": "Payments"}' \
  https://api.limeplate.com/api/public/v1/teams

Mettre à jour une équipe

Seul le nom de l'équipe peut être modifié. Pour déplacer des membres entrants ou sortants, utilisez les points de terminaison de membres.

PATCH /api/public/v1/teams/{teamId}
Authorization: Bearer scs_live_…
Content-Type: application/json

Corps de requête

ChampTypeRequisSignification
namestringouiNouveau nom d'équipe.

Réponse

{
  "message": "Team updated"
}

Exemple

curl -sS -X PATCH \
  -H "Authorization: Bearer $SCH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name": "Payments Core"}' \
  https://api.limeplate.com/api/public/v1/teams/4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32

Supprimer une équipe

Retire l'équipe. Les membres de l'équipe sont non attribués (leur teamId devient null) mais ne sont pas désactivés — leurs comptes, XP et progression restent intacts. Les affectations à portée d'équipe liées à l'équipe supprimée sont désactivées.

DELETE /api/public/v1/teams/{teamId}
Authorization: Bearer scs_live_…

Réponse

{
  "message": "Team deleted"
}

Exemple

curl -sS -X DELETE \
  -H "Authorization: Bearer $SCH_API_KEY" \
  https://api.limeplate.com/api/public/v1/teams/4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32

Ajouter un membre

Déplace un utilisateur dans l'équipe. Si l'utilisateur était déjà dans une équipe différente, cette appartenance précédente est remplacée. Il n'y a pas d'appel « transfert » séparé.

POST /api/public/v1/teams/{teamId}/members/{userId}
Authorization: Bearer scs_live_…

Réponse

{
  "message": "Member added"
}

Exemple

curl -sS -X POST \
  -H "Authorization: Bearer $SCH_API_KEY" \
  https://api.limeplate.com/api/public/v1/teams/4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32/members/b1a4d7c2-9e58-4f3a-83cd-2c6f1a90e7b4

Retirer un membre

Détache l'utilisateur de l'équipe. Équivalent à un PATCH de l'utilisateur avec teamId: null, mais passe proprement par l'identité de l'équipe. Le compte de l'utilisateur et sa progression ne sont pas affectés.

DELETE /api/public/v1/teams/{teamId}/members/{userId}
Authorization: Bearer scs_live_…

Réponse

{
  "message": "Member removed"
}

Exemple

curl -sS -X DELETE \
  -H "Authorization: Bearer $SCH_API_KEY" \
  https://api.limeplate.com/api/public/v1/teams/4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32/members/b1a4d7c2-9e58-4f3a-83cd-2c6f1a90e7b4