Skip to content

API Members ​

Gérez les sièges d'équipe et les rôles — les personnes qui partagent les émetteurs, badges et certifications de votre compte.

Tous les points de terminaison nécessitent une authentification. Voir Authentification. Chaque requête est limitée au compte du propriétaire authentifié.

Les rôles pouvant être attribués via l'API sont admin, editor et viewer. Le rôle owner est réservé au titulaire du compte et ne peut être ni attribué ni supprimé.

Lister les membres ​

Récupérez tous les membres et invitations en attente de votre compte.

GET /members

Exemple ​

bash
curl -X GET https://api.badges.ninja/members \
  -H "X-Api-Key: bws_your_api_key_here"

Réponse ​

json
{
  "items": [
    {
      "memberId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "email": "owner@acme.example.com",
      "role": "owner",
      "status": "active"
    },
    {
      "memberId": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
      "email": "editor@acme.example.com",
      "role": "editor",
      "status": "pending"
    }
  ]
}

status vaut active pour les membres qui ont accepté, ou pending pour les invitations qui n'ont pas encore été acceptées.


Inviter un membre ​

Invitez une personne sur le compte par e-mail. Un e-mail d'invitation contenant un lien d'acceptation est envoyé à l'adresse.

POST /members

Paramètres ​

ParamètreTypeRequisDescription
emailstringOuiAdresse e-mail à inviter (doit être un e-mail valide)
rolestringOuiRôle à attribuer — l'un de admin, editor, viewer

Exemple ​

bash
curl -X POST https://api.badges.ninja/members \
  -H "X-Api-Key: bws_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "parameters": {
      "email": "editor@acme.example.com",
      "role": "editor"
    }
  }'

Réponse ​

json
{
  "memberId": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
  "inviteId": "c3d4e5f6-a7b8-9012-cdef-123456789012",
  "status": "pending"
}

Erreurs ​

  • 400 — role must be one of admin, editor, viewer
  • 400 — adresse e-mail invalide ou manquante
  • 400 — seat limit reached — le compte n'a plus de siège disponible pour le forfait (Gratuit : 2, Starter : 5, Pro : 20, propriétaire inclus). Supprimez un membre ou passez à un forfait supérieur.
  • 400 — l'e-mail est déjà membre ou a une invitation en attente sur ce compte

Accepter une invitation ​

Acceptez une invitation en attente. L'e-mail de l'utilisateur authentifié doit correspondre à l'adresse à laquelle l'invitation a été envoyée.

POST /members/accept

Paramètres ​

ParamètreTypeRequisDescription
inviteIdstringOuiL'ID d'invitation issu de l'e-mail contenant le lien d'acceptation

Exemple ​

bash
curl -X POST https://api.badges.ninja/members/accept \
  -H "X-Api-Key: bws_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "parameters": {
      "inviteId": "c3d4e5f6-a7b8-9012-cdef-123456789012"
    }
  }'

Réponse ​

json
{
  "memberId": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
  "status": "active"
}

Erreurs ​

  • 400 — email does not match invitation — l'e-mail connecté diffère de l'e-mail invité
  • 404 — invitation introuvable (déjà acceptée, annulée, ou l'inviteId est incorrect)

Modifier le rôle d'un membre ​

Modifiez le rôle d'un membre existant. Nécessite des privilèges de propriétaire ou d'administrateur.

POST /members/{memberId}/role

Paramètres ​

ParamètreTypeRequisDescription
memberIdstringOuiL'ID du membre (paramètre de chemin)
rolestringOuiNouveau rôle — l'un de admin, editor, viewer

Exemple ​

bash
curl -X POST https://api.badges.ninja/members/b2c3d4e5-f6a7-8901-bcde-f12345678901/role \
  -H "X-Api-Key: bws_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "parameters": {
      "role": "admin"
    }
  }'

Réponse ​

json
{
  "memberId": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
  "role": "admin",
  "updated": true
}

Erreurs ​

  • 400 — role must be one of admin, editor, viewer
  • 400 — the owner role cannot be changed
  • 404 — membre introuvable

Supprimer un membre ​

Supprimez un membre du compte, ou annulez une invitation en attente. Le membre perd immédiatement l'accès et son siège est libéré.

DELETE /members/{memberId}

Exemple ​

bash
curl -X DELETE https://api.badges.ninja/members/b2c3d4e5-f6a7-8901-bcde-f12345678901 \
  -H "X-Api-Key: bws_your_api_key_here"

Réponse ​

Une simple chaîne de caractères :

json
"member has been removed"

Erreurs ​

  • 400 — the owner cannot be removed
  • 404 — membre introuvable

badges.ninja Documentation