Ugrás a fő tartalomhoz
Hasznos volt ez az oldal?

Szervezet API

Szervezetek és tagság

A hozzáférhető szervezetek listázása, a tagok kezelése és a szervezet-adminisztrátori állapot olvasása

Ez az oldal a nem rendszergazdai szervezet felületét dokumentálja. Kizárja a csak adminisztrátori szervezetet útvonalak létrehozása és törlése, valamint a két vezérlőben létező átfedő tagsági végpontok meghívása.

JWT vagy felhasználói API kulcsRBAC és szervezeti őrökTagságkezelésTörlési előnézet

Hitelesítés és engedélyek​

  • Ezen az oldalon minden útvonal hitelesítést igényel.
  • A fő vezérlő a JwtAuthGuard plusz RbacAuthorizationGuard-t használja.
  • További útvonalszintű betartatás OrganisationOwnershipGuard, OrganisationAdminGuard és szervezeti engedély-dekorátorokat használ.
  • Csak adminisztrátori útvonalak, amelyek nem szerepelnek ezen az oldalon:
    • POST /api/organisations
    • DELETE /api/organisations/:id
    • POST /api/organisations/:id/admins
    • DELETE /api/organisations/:id/admins/:userId

Fontos forrás megjegyzés:

Végpont referencia​

Fő szervezeti felület​

módszerÚtvonalCélKérjen vagy érdeklődjönAuth
GET/api/organisationsAz aktuális felhasználó számára elérhető szervezetek listája.Egyik semJWT vagy felhasználói API kulcs
GET/api/organisations/:idSzerezzen be egy elérhető szervezetet.Elérési út: idJWT vagy felhasználói API kulcs
PATCH/api/organisations/:idFrissítse a szervezeti profil mezőit.Elérési út: id, törzs: profilmezőkJWT vagy felhasználói API kulcs
POST/api/organisations/:id/usersRendeljen hozzá egy felhasználót a szervezethez.Elérési út: id, törzs: userIdJWT vagy felhasználói API kulcs
DELETE/api/organisations/:id/users/:userIdFelhasználó eltávolítása a szervezetből.Elérési út: id,userIdJWT vagy felhasználói API kulcs
POST/api/organisations/:id/users/assignRendeljen hozzá egy felhasználót kifejezett szerepkörrel.Elérési út: id, törzs: userId,role,assignedByIdJWT vagy felhasználói API kulcs
GET/api/organisations/:id/users/listSorolja fel a szervezet felhasználóit és szerepköreit.Elérési út: idJWT vagy felhasználói API kulcs
PATCH/api/organisations/:id/users/:userId/roleTagi szerepkör frissítése.Elérési út: id,userId, törzs: roleJWT vagy felhasználói API kulcs
DELETE/api/organisations/:id/users/:userId/removeTávolítson el egy tagot az alternatív eltávolítási útvonalon keresztül.Elérési út: id,userIdJWT vagy felhasználói API kulcs
GET/api/organisations/:id/deletion-previewA kaszkádtörlés hatásának előnézete.Elérési út: idJWT vagy felhasználói API kulcs
DELETE/api/organisations/:id/cascadeA szervezet tulajdonában lévő adatok lépcsőzetes törlése.Elérési út: idJWT vagy felhasználói API kulcs
PATCH/api/organisations/:id/colorSzervezeti szín frissítése.Elérési út: id, törzs: color,cascadeToResourceTypesJWT vagy felhasználói API kulcs

Szervezeti Admin Helper felület​

módszerÚtvonalCélKérjen vagy érdeklődjönAuth
GET/api/organisations/:id/adminsSzervezeti adminisztrátorok listázása.Elérési út: idJWT vagy felhasználói API kulcs
POST/api/organisations/:id/usersFelhasználó hozzáadása a szervezethez.Elérési út: id, törzs: userIdJWT vagy felhasználói API kulcs
DELETE/api/organisations/:id/users/:userIdFelhasználó eltávolítása a szervezetből.Elérési út: id,userIdJWT vagy felhasználói API kulcs
GET/api/organisations/:id/usersSzervezeti felhasználók listázása.Elérési út: idJWT vagy felhasználói API kulcs
GET/api/organisations/admin-rolesSorolja fel azokat a szervezeteket, ahol a jelenlegi felhasználó rendszergazda.Egyik semJWT vagy felhasználói API kulcs
GET/api/organisations/:id/admin-statusTesztelje, hogy az aktuális felhasználó szervezeti adminisztrátor-e.Elérési út: idJWT vagy felhasználói API kulcs

Kérjen alakzatokat​

Szervezeti profil​

CreateOrganisationDto és UpdateOrganisationDto

  • name: létrehozáskor kötelező
  • description: opcionális karakterlánc
  • address: opcionális karakterlánc
  • phone: opcionális karakterlánc
  • email: opcionális e-mail
  • isActive: csak frissíthető opcionális logikai érték

Tagság​

  • AssignUserDto.userId: szükséges szám
  • AssignOrganisationUserDto.userId: szükséges szám
  • AssignOrganisationUserDto.role: kötelező OrganisationRoleType
  • AssignOrganisationUserDto.assignedById: opcionális szám
  • UpdateOrganisationUserRoleDto.role: kötelező OrganisationRoleType

Szín​

UpdateOrganisationColorDto

  • color: kötelező hexadecimális szín, #rgb vagy #rrggbb
  • cascadeToResourceTypes: opcionális logikai érték

Példahívások​

Az elérhető szervezetek listája​

curl "$PRIMECAL_API/api/organisations" \
-H "Authorization: Bearer $TOKEN"

Rendeljen hozzá egy felhasználót szerepkörrel​

curl -X POST "$PRIMECAL_API/api/organisations/12/users/assign" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"userId": 42,
"role": "ADMIN"
}'

Frissítse a szervezet színét​

curl -X PATCH "$PRIMECAL_API/api/organisations/12/color" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"color": "#14b8a6",
"cascadeToResourceTypes": true
}'

Válasz és viselkedés megjegyzések​

  • GET /api/organisations csak azokat a szervezeteket adja vissza, amelyekhez az aktuális felhasználó hozzáférhet.
  • A szervezet-admin vezérlő egyes útvonalai { message, data } borítékot adnak vissza egyszerű entitások helyett.
  • A GET /api/organisations/:id/deletion-preview destruktív kaszkádműveletek előtt használható.

Legjobb gyakorlatok​

  • Kezelje a duplikált :id/users útvonalakat átfedő felületekként, és szabványosítsa ügyfelét egy útvonalcsaládon.
  • Használja következetesen a GET /api/organisations/:id/users/list vagy a GET /api/organisations/:id/users-t ahelyett, hogy ugyanazon a kliensen keverné a kettőt.
  • A DELETE /api/organisations/:id/cascade hívása előtt mindig tekintse meg a kaszkádtörlés előnézetét.
  • Az eltávolítási és olvasási munkafolyamatok helyett előnyben részesítse a szerepspecifikus tagsági frissítéseket a /users/assign és a /users/:userId/role használatával.