Skip to content

Narių API

Valdykite komandos vietas ir roles — žmones, kurie dalijasi jūsų paskyros leidėjais, ženkleliais ir suteikimais.

Visiems galiniams taškams reikia autentifikacijos. Žr. Autentifikacija. Kiekviena užklausa apribojama autentifikuoto savininko paskyros ribomis.

Rolės, kurias galima priskirti per API, yra admin, editor ir viewer. owner rolė rezervuota paskyros turėtojui ir negali būti priskirta ar pašalinta.

Narių sąrašas

Gaukite visus narius ir laukiančius kvietimus jūsų paskyroje.

GET /members

Pavyzdys

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

Atsakymas

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 yra active nariams, kurie priėmė kvietimą, arba pending kvietimams, kurie dar nebuvo priimti.


Nario pakvietimas

Pakvieskite asmenį į paskyrą el. paštu. Į adresą išsiunčiamas kvietimo el. laiškas su priėmimo nuoroda.

POST /members

Parametrai

ParametrasTipasPrivalomasAprašymas
emailstringTaipEl. pašto adresas, į kurį kviesti (turi būti galiojantis el. paštas)
rolestringTaipPriskiriama rolė — viena iš admin, editor, viewer

Pavyzdys

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

Atsakymas

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

Klaidos

  • 400role must be one of admin, editor, viewer
  • 400 — netinkamas arba trūkstamas el. pašto adresas
  • 400seat limit reached — paskyra neturi laisvų vietų šiam planui (Free: 2, Starter: 5, Pro: 20, įskaitant savininką). Pašalinkite narį arba pereikite prie aukštesnio plano.
  • 400 — el. paštas jau yra narys arba turi laukiantį kvietimą šioje paskyroje

Kvietimo priėmimas

Priimkite laukiantį kvietimą. Autentifikuoto vartotojo el. paštas turi sutapti su adresu, į kurį buvo išsiųstas kvietimas.

POST /members/accept

Parametrai

ParametrasTipasPrivalomasAprašymas
inviteIdstringTaipKvietimo ID iš priėmimo nuorodos el. laiško

Pavyzdys

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

Atsakymas

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

Klaidos

  • 400email does not match invitation — prisijungimo el. paštas skiriasi nuo pakviesto el. pašto
  • 404 — kvietimas nerastas (jau priimtas, atšauktas arba inviteId neteisingas)

Nario rolės keitimas

Pakeiskite esamo nario rolę. Reikia savininko arba administratoriaus teisių.

POST /members/{memberId}/role

Parametrai

ParametrasTipasPrivalomasAprašymas
memberIdstringTaipNario ID (kelio parametras)
rolestringTaipNauja rolė — viena iš admin, editor, viewer

Pavyzdys

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

Atsakymas

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

Klaidos

  • 400role must be one of admin, editor, viewer
  • 400the owner role cannot be changed
  • 404 — narys nerastas

Nario pašalinimas

Pašalinkite narį iš paskyros arba atšaukite laukiantį kvietimą. Narys iškart praranda prieigą, o jo vieta atlaisvinama.

DELETE /members/{memberId}

Pavyzdys

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

Atsakymas

Grynas tekstas:

json
"member has been removed"

Klaidos

  • 400the owner cannot be removed
  • 404 — narys nerastas

badges.ninja Documentation