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

Помилки ​

  • 400 — role must be one of admin, editor, viewer
  • 400 — недійсна або відсутня адреса електронної пошти
  • 400 — seat limit reached — в обліковому записі немає вільних місць для тарифу (Free: 2, Starter: 5, Pro: 20, включно з власником). Видаліть учасника або перейдіть на вищий тариф.
  • 400 — ця електронна пошта вже є учасником або має запрошення, що очікує, у цьому обліковому записі

Прийняти запрошення ​

Прийміть запрошення, що очікує. Адреса електронної пошти автентифікованого користувача має збігатися з адресою, на яку було надіслано запрошення.

POST /members/accept

Параметри ​

ПараметрТипОбов'язковийОпис
inviteIdstringТакІдентифікатор запрошення з листа з посиланням для прийняття

Приклад ​

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

Помилки ​

  • 400 — email does not match invitation — адреса електронної пошти, з якою здійснено вхід, відрізняється від запрошеної адреси
  • 404 — запрошення не знайдено (вже прийнято, скасовано або inviteId неправильний)

Оновити роль учасника ​

Змініть роль наявного учасника. Потрібні права власника або адміністратора.

POST /members/{memberId}/role

Параметри ​

ПараметрТипОбов'язковийОпис
memberIdstringТакІдентифікатор учасника (параметр шляху)
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
}

Помилки ​

  • 400 — role must be one of admin, editor, viewer
  • 400 — the 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"

Помилки ​

  • 400 — the owner cannot be removed
  • 404 — учасника не знайдено

badges.ninja Documentation