A Loomio szerver API dokumentációja

A /api/b3 a szerverszintű műveletekre szolgál. A Loomio felhasználói fiókkal végzett, felhasználói szintű műveletekhez használd a /api/b2 API-t.

Hitelesítés

Állítsd a B3_API_KEY értékét egy 16 karakternél hosszabb titkos kulcsra.

Küldd el a kulcsot bearer tokenként:

curl -H 'Authorization: Bearer YOUR_SERVER_API_KEY' https://www.loomio.com/api/b3/users

A hitelesítési adatokat kizárólag az Authorization fejlécben küldd el. A rendszer elutasítja a lekérdezési karakterláncban vagy a kérés törzsében küldött API-kulcsokat.

Felhasználói objektum

A felhasználói adatokat tartalmazó válaszok szerkezete:

{
  "id": 123,
  "name": "Ada Lovelace",
  "username": "ada",
  "email": "ada@example.org",
  "active": true,
  "deactivated_at": null,
  "identities": [
    {
      "id": 456,
      "identity_type": "oauth",
      "uid": "external-123",
      "email": "ada@example.org",
      "name": "Ada Lovelace"
    }
  ]
}

Felhasználók listázása

Listázd a Loomio rendszer összes felhasználói fiókját.

GET /api/b3/users

Példa

curl -H 'Authorization: Bearer YOUR_SERVER_API_KEY' https://www.loomio.com/api/b3/users

Válasz:

{
  "users": []
}

Felhasználó lekérdezése

Keress meg egy felhasználót a Loomio felhasználói azonosítója vagy külső identitása alapján.

GET /api/b3/users/:id

GET /api/b3/users/identity/:identity_type/:uid

Példák

Loomio felhasználói azonosító alapján:

curl -H 'Authorization: Bearer YOUR_SERVER_API_KEY' https://www.loomio.com/api/b3/users/123

Külső identitás alapján:

curl -H 'Authorization: Bearer YOUR_SERVER_API_KEY' https://www.loomio.com/api/b3/users/identity/oauth/external-123

Válasz:

{
  "user": {}
}

Felhasználó frissítése

Frissítsd a Loomio felhasználói azonosító vagy külső identitás alapján megtalált felhasználó profilmezőit.

PATCH /api/b3/users/:id

PATCH /api/b3/users/identity/:identity_type/:uid

Paraméterek

Mező Leírás
name Megjelenített név
username Loomio felhasználónév
email E-mail-cím

Példák

Loomio felhasználói azonosító alapján:

curl -X PATCH \
  -H 'Authorization: Bearer YOUR_SERVER_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"user":{"name":"Ada Lovelace","username":"ada","email":"ada@example.org"}}' \
  https://www.loomio.com/api/b3/users/123

Külső identitás alapján:

curl -X PATCH \
  -H 'Authorization: Bearer YOUR_SERVER_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"user":{"name":"Ada Lovelace","username":"ada","email":"ada@example.org"}}' \
  https://www.loomio.com/api/b3/users/identity/oauth/external-123

A válasz a frissített felhasználót tartalmazza:

{
  "user": {}
}

Felhasználó deaktiválása

Deaktiváld a Loomio felhasználói azonosító vagy külső identitás alapján megtalált felhasználói fiókot.

POST /api/b3/users/:id/deactivate

POST /api/b3/users/identity/:identity_type/:uid/deactivate

Példák

Loomio felhasználói azonosító alapján:

curl -X POST -H 'Authorization: Bearer YOUR_SERVER_API_KEY' https://www.loomio.com/api/b3/users/123/deactivate

Külső identitás alapján:

curl -X POST -H 'Authorization: Bearer YOUR_SERVER_API_KEY' https://www.loomio.com/api/b3/users/identity/oauth/external-123/deactivate

Válasz:

{
  "success": true,
  "user": {}
}

Felhasználó újraaktiválása

Aktiválj újra egy deaktivált felhasználói fiókot a Loomio-felhasználóazonosítója vagy külső azonosítója alapján.

POST /api/b3/users/:id/reactivate

POST /api/b3/users/identity/:identity_type/:uid/reactivate

Példák

Loomio-felhasználóazonosító alapján:

curl -X POST -H 'Authorization: Bearer YOUR_SERVER_API_KEY' https://www.loomio.com/api/b3/users/123/reactivate

Külső azonosító alapján:

curl -X POST -H 'Authorization: Bearer YOUR_SERVER_API_KEY' https://www.loomio.com/api/b3/users/identity/oauth/external-123/reactivate

Válasz:

{
  "success": true,
  "user": {}
}

Felhasználó személyes adatainak eltávolítása

A személyes adatok eltávolítása megőrzi a felhasználó hozzászólásait és más, általa létrehozott tartalmakat a csoportjaiban, de eltávolítja az ismert, személyazonosításra alkalmas adatokat, például a nevet, a bemutatkozást, a profilképet, az e-mail-címet, a bejelentkezési adatokat, a külső azonosítókat és az aktív munkameneteket.

Ez az ajánlott módja egy felhasználó eltávolításának a Loomióból.

POST /api/b3/users/:id/redact

POST /api/b3/users/identity/:identity_type/:uid/redact

Példák

Loomio-felhasználóazonosító alapján:

curl -X POST -H 'Authorization: Bearer YOUR_SERVER_API_KEY' https://www.loomio.com/api/b3/users/123/redact

Külső azonosító alapján:

curl -X POST -H 'Authorization: Bearer YOUR_SERVER_API_KEY' https://www.loomio.com/api/b3/users/identity/oauth/external-123/redact

Válasz:

{
  "success": true
}

Felhasználó törlése

A törlés eltávolítja a felhasználót és az általa létrehozott rekordokat. A hozzászólások törlődnek a szálakból, a szavazatok törlődnek a szavazásokból, és az adatbázisban lévő kapcsolatok révén a felhasználó által létrehozott csoportok, beszélgetések, szavazások és egyéb rekordok is törlődhetnek.

Ez jelentős adatvesztéssel jár. Helyette erősen ajánlott a személyes adatok eltávolítása.

DELETE /api/b3/users/:id

DELETE /api/b3/users/identity/:identity_type/:uid

Példák

Loomio-felhasználóazonosító alapján:

curl -X DELETE -H 'Authorization: Bearer YOUR_SERVER_API_KEY' https://www.loomio.com/api/b3/users/123

Külső azonosító alapján:

curl -X DELETE -H 'Authorization: Bearer YOUR_SERVER_API_KEY' https://www.loomio.com/api/b3/users/identity/oauth/external-123

Válasz:

{
  "success": true
}

SSO-profilszinkronizálási beállítások

Használd ezeket a beállításokat, ha egy másik rendszer kezeli a Loomio profilmezőit.

LOOMIO_DISABLE_EDIT_USER_PROFILE=1
# LOOMIO_SSO_UPDATE_USER_PROFILE_ON_LOGIN=1

A LOOMIO_DISABLE_EDIT_USER_PROFILE=1 megakadályozza, hogy a felhasználók saját maguk szerkesszék ezeket a mezőket:

Mező Tudnivalók
name Külső szinkronizálás kezeli
username Külső szinkronizálás kezeli
email Külső szinkronizálás kezeli
avatar_kind / uploaded_avatar Külső szinkronizálás kezeli

A felhasználók továbbra is szerkeszthetik a Loomio helyi mezőit, például a short_bio és a location mezőt.

A LOOMIO_SSO_UPDATE_USER_PROFILE_ON_LOGIN=1 az SSO-bejelentkezés adataiból frissíti a name és az email mezőt. Hagyd meg kommentként, vagy ne állítsd be, ha ezeket a mezőket kizárólag egy külső szinkronizáló szkriptnek kell frissítenie.

A LOOMIO_SSO_FORCE_USER_ATTRS a meglévő telepítéseken továbbra is működik. Letiltja a felhasználók általi szerkesztést, és SSO-bejelentkezéskor frissíti a name és az email mezőt.

Ezt az oldalt gépi fordítással készítettük. Ha egy szó hibás vagy nem egyértelmű, írj a contact@loomio.org címre, és kijavítjuk.