Skip to content

Members API

Upravljajte ekipne sedeže in vloge — ljudi, ki si delijo izdajatelje, značke in podelitve vašega računa.

Vse končne točke zahtevajo preverjanje pristnosti. Glejte Preverjanje pristnosti. Vsaka zahteva je omejena na račun preverjenega lastnika.

Vloge, ki jih je mogoče dodeliti prek API-ja, so admin, editor in viewer. Vloga owner je rezervirana za imetnika računa in je ni mogoče dodeliti ali odstraniti.

Seznam članov

Pridobite vse člane in čakajoča povabila na vašem računu.

GET /members

Primer

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

Odgovor

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 za člane, ki so sprejeli, ali pending za povabila, ki še niso bila sprejeta.


Povabilo člana

Povabite osebo na račun po e-pošti. Na naslov je poslana e-pošta s povabilom in povezavo za sprejem.

POST /members

Parametri

ParameterTipObveznoOpis
emailstringDaE-poštni naslov za povabilo (mora biti veljavna e-pošta)
rolestringDaVloga za dodelitev — ena od admin, editor, viewer

Primer

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

Odgovor

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

Napake

  • 400role must be one of admin, editor, viewer
  • 400 — neveljaven ali manjkajoč e-poštni naslov
  • 400seat limit reached — račun nima prostih sedežev za paket (Free: 2, Starter: 5, Pro: 20, vključno z lastnikom). Odstranite člana ali nadgradite paket.
  • 400 — e-pošta je že član ali ima čakajoče povabilo na tem računu

Sprejem povabila

Sprejmite čakajoče povabilo. E-pošta preverjenega uporabnika se mora ujemati z naslovom, na katerega je bilo povabilo poslano.

POST /members/accept

Parametri

ParameterTipObveznoOpis
inviteIdstringDaID povabila iz e-pošte s povezavo za sprejem

Primer

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

Odgovor

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

Napake

  • 400email does not match invitation — prijavljena e-pošta se razlikuje od povabljene e-pošte
  • 404 — povabilo ni najdeno (že sprejeto, preklicano ali je inviteId napačen)

Posodobitev vloge člana

Spremenite vlogo obstoječega člana. Zahteva pravice lastnika ali skrbnika.

POST /members/{memberId}/role

Parametri

ParameterTipObveznoOpis
memberIdstringDaID člana (parameter poti)
rolestringDaNova vloga — ena od admin, editor, viewer

Primer

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

Odgovor

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

Napake

  • 400role must be one of admin, editor, viewer
  • 400the owner role cannot be changed
  • 404 — član ni najden

Odstranitev člana

Odstranite člana z računa ali prekličite čakajoče povabilo. Član takoj izgubi dostop, njegov sedež pa se sprosti.

DELETE /members/{memberId}

Primer

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

Odgovor

Golo besedilo (bare string):

json
"member has been removed"

Napake

  • 400the owner cannot be removed
  • 404 — član ni najden

badges.ninja Documentation