Skip to content

Üyeler API'si

Ekip koltuklarını ve rollerini yönetin — hesabınızın vericilerini, rozetlerini ve vermelerini paylaşan kişileri.

Tüm uç noktalar kimlik doğrulaması gerektirir. Bkz. Kimlik Doğrulama. Her istek, kimliği doğrulanmış sahibin hesabıyla kapsamlandırılır.

API aracılığıyla atanabilecek roller admin, editor ve viewer'dır. owner rolü hesap sahibine ayrılmıştır ve atanamaz veya kaldırılamaz.

Üyeleri Listeleme

Hesabınızdaki tüm üyeleri ve bekleyen davetleri alın.

GET /members

Örnek

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

Yanıt

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, kabul etmiş üyeler için active, henüz kabul edilmemiş davetler için pending değerini alır.


Üye Davet Etme

Bir kişiyi e-posta ile hesaba davet edin. Adrese, kabul bağlantısı içeren bir davet e-postası gönderilir.

POST /members

Parametreler

ParametreTürZorunluAçıklama
emailstringEvetDavet edilecek e-posta adresi (geçerli bir e-posta olmalıdır)
rolestringEvetAtanacak rol — admin, editor, viewer'dan biri

Örnek

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

Yanıt

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

Hatalar

  • 400role must be one of admin, editor, viewer
  • 400 — geçersiz veya eksik e-posta adresi
  • 400seat limit reached — hesabın plan için boş koltuğu yok (Ücretsiz: 2, Başlangıç: 5, Pro: 20, sahip dahil). Bir üyeyi kaldırın veya planı yükseltin.
  • 400 — e-posta zaten bu hesapta bir üye ya da bekleyen bir daveti var

Daveti Kabul Etme

Bekleyen bir daveti kabul edin. Kimliği doğrulanmış kullanıcının e-postası, davetin gönderildiği adresle eşleşmelidir.

POST /members/accept

Parametreler

ParametreTürZorunluAçıklama
inviteIdstringEvetKabul bağlantısı e-postasından gelen davet kimliği

Örnek

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

Yanıt

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

Hatalar

  • 400email does not match invitation — oturum açan e-posta, davet edilen e-postadan farklı
  • 404 — davet bulunamadı (zaten kabul edilmiş, iptal edilmiş veya inviteId yanlış)

Üye Rolünü Güncelleme

Mevcut bir üyenin rolünü değiştirin. Sahip veya yönetici ayrıcalıkları gerektirir.

POST /members/{memberId}/role

Parametreler

ParametreTürZorunluAçıklama
memberIdstringEvetÜye kimliği (yol parametresi)
rolestringEvetYeni rol — admin, editor, viewer'dan biri

Örnek

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

Yanıt

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

Hatalar

  • 400role must be one of admin, editor, viewer
  • 400the owner role cannot be changed
  • 404 — üye bulunamadı

Üyeyi Kaldırma

Bir üyeyi hesaptan kaldırın veya bekleyen bir daveti iptal edin. Üye erişimini hemen kaybeder ve koltuğu serbest bırakılır.

DELETE /members/{memberId}

Örnek

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

Yanıt

Düz bir dize:

json
"member has been removed"

Hatalar

  • 400the owner cannot be removed
  • 404 — üye bulunamadı

badges.ninja Documentation