Skip to content

Members API

Управљајте тимским местима и улогама — људима који деле издаваче, беџеве и доделе вашег налога.

Све крајње тачке захтевају аутентификацију. Погледајте Аутентификацију. Сваки захтев је ограничен на налог аутентификованог власника.

Улоге које се могу доделити преко API-ја су admin, editor и viewer. Улога owner је резервисана за власника налога и не може бити додељена нити уклоњена.

Листање чланова

Преузмите све чланове и позивнице на чекању на вашем налогу.

GET /members

Пример

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

Одговор

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 је active за чланове који су прихватили, или pending за позивнице које још нису прихваћене.


Позивање члана

Позовите особу на налог преко имејла. Имејл са позивницом и линком за прихватање се шаље на адресу.

POST /members

Параметри

ПараметарТипОбавезноОпис
emailstringДаИмејл адреса за позивање (мора бити важећи имејл)
rolestringДаУлога за доделу — једна од admin, editor, viewer

Пример

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

Одговор

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

Грешке

  • 400role must be one of admin, editor, viewer
  • 400 — неважећа или недостајућа имејл адреса
  • 400seat limit reached — налог нема слободних места за план (Free: 2, Starter: 5, Pro: 20, укључујући власника). Уклоните члана или пређите на виши план.
  • 400 — имејл је већ члан или има позивницу на чекању на овом налогу

Прихватање позивнице

Прихватите позивницу на чекању. Имејл аутентификованог корисника мора да се поклапа са адресом на коју је позивница послата.

POST /members/accept

Параметри

ПараметарТипОбавезноОпис
inviteIdstringДаID позивнице из имејла са линком за прихватање

Пример

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

Одговор

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

Грешке

  • 400email does not match invitation — пријављени имејл се разликује од позваног имејла
  • 404 — позивница није пронађена (већ прихваћена, отказана, или је inviteId погрешан)

Ажурирање улоге члана

Промените улогу постојећег члана. Захтева привилегије власника или администратора.

POST /members/{memberId}/role

Параметри

ПараметарТипОбавезноОпис
memberIdstringДаID члана (параметар путање)
rolestringДаНова улога — једна од admin, editor, viewer

Пример

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

Одговор

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

Грешке

  • 400role must be one of admin, editor, viewer
  • 400the owner role cannot be changed
  • 404 — члан није пронађен

Уклањање члана

Уклоните члана са налога, или откажите позивницу на чекању. Члан одмах губи приступ и његово место се ослобађа.

DELETE /members/{memberId}

Пример

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

Одговор

Обичан стринг:

json
"member has been removed"

Грешке

  • 400the owner cannot be removed
  • 404 — члан није пронађен

badges.ninja Documentation