Skip to content

Members API

Spravujte tímové miesta a role — ľudí, ktorí zdieľajú vydavateľov, odznaky a udelenia vášho účtu.

Všetky koncové body vyžadujú autentifikáciu. Pozri Autentifikácia. Každá požiadavka je viazaná na účet autentifikovaného ownera.

Role, ktoré je možné priradiť cez API, sú admin, editor a viewer. Rola owner je vyhradená pre držiteľa účtu a nie je možné ju priradiť ani odstrániť.

Zoznam členov

Získajte všetkých členov a čakajúce pozvánky na vašom účte.

GET /members

Príklad

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

Odpoveď

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 je active pre členov, ktorí pozvánku prijali, alebo pending pre pozvánky, ktoré ešte neboli prijaté.


Pozvanie člena

Pozvite osobu na účet prostredníctvom e-mailu. Na danú adresu sa odošle e-mail s pozvánkou obsahujúci odkaz na prijatie.

POST /members

Parametre

ParameterTypPovinnéPopis
emailstringÁnoE-mailová adresa na pozvanie (musí byť platný e-mail)
rolestringÁnoRola na priradenie — jedna z admin, editor, viewer

Príklad

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"
    }
  }'

Odpoveď

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

Chyby

  • 400role must be one of admin, editor, viewer
  • 400 — neplatná alebo chýbajúca e-mailová adresa
  • 400seat limit reached — účet nemá voľné miesta pre daný plán (Free: 2, Starter: 5, Pro: 20, vrátane ownera). Odstráňte člena alebo prejdite na vyšší plán.
  • 400 — e-mail už je členom alebo má na tomto účte čakajúcu pozvánku

Prijatie pozvánky

Prijmite čakajúcu pozvánku. E-mail autentifikovaného používateľa sa musí zhodovať s adresou, na ktorú bola pozvánka odoslaná.

POST /members/accept

Parametre

ParameterTypPovinnéPopis
inviteIdstringÁnoID pozvánky z e-mailu s odkazom na prijatie

Príklad

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"
    }
  }'

Odpoveď

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

Chyby

  • 400email does not match invitation — prihlásený e-mail sa líši od pozvaného e-mailu
  • 404 — pozvánka nebola nájdená (už bola prijatá, zrušená, alebo je inviteId nesprávne)

Aktualizácia roly člena

Zmeňte rolu existujúceho člena. Vyžaduje oprávnenia ownera alebo admina.

POST /members/{memberId}/role

Parametre

ParameterTypPovinnéPopis
memberIdstringÁnoID člena (parameter cesty)
rolestringÁnoNová rola — jedna z admin, editor, viewer

Príklad

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"
    }
  }'

Odpoveď

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

Chyby

  • 400role must be one of admin, editor, viewer
  • 400the owner role cannot be changed
  • 404 — člen nebol nájdený

Odstránenie člena

Odstráňte člena z účtu alebo zrušte čakajúcu pozvánku. Člen okamžite stráca prístup a jeho miesto sa uvoľní.

DELETE /members/{memberId}

Príklad

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

Odpoveď

Samostatný reťazec:

json
"member has been removed"

Chyby

  • 400the owner cannot be removed
  • 404 — člen nebol nájdený

badges.ninja Documentation