BioStar 2のNew Local APIをRESTful APIとしてカスタマイズなどに利用したい場合は、この記事を参考にしてください。この記事では、BioStar 2のNew local APIを使用して、アクセスグループからユーザーを追加または削除する方法を説明します。
APIの詳細については、 https://bs2api.biostar2.com/#intro を参照してください。
新規アクセスグループの作成
POST Create New AG
https://127.0.0.1/api/access_groups
このリクエストは、新しいアクセスグループ(AG)を作成するために使用されます。
パラメータは以下の通りです。
数値(idなど)の場合、値をクォートに入れるかどうかは自由です。
既知のエラー:
- エンドポイントの末尾に「/」をつける
- name は必須かつユニークなパラメータです
Request Body
{
"AccessGroup": {
"name": "access_group_test",
"description": ""
"users": [
{
"user_id": 1750
}
],
"user_groups": [
{
"id": 10871
}
],
"access_levels": [
{
"id": 53
}
],
"floor_levels": [],
}
}アクセスグループの更新
PUT Update an AG
https://127.0.0.1/api/access_groups/:id
既知のエラー:
- Repeating the same value on parameter with multiple options
1. 既存のAccess Groupにユーザーを追加する
{
"AccessGroup": {
"user_groups": [
{
"id": 10871,
"name": "User Group 1"
}
],
"new_users": [
{
"user_id": 1753
},
{
"user_id": 1749
}
]
}
}2. 既存のアクセスグループからユーザーを削除する
{
"AccessGroup": {
"user_groups": [
{
"id": 10871,
"name": "User Group 1"
}
],
"delete_users": [
{
"user_id": 1753
},
{
"user_id": 1750
}
]
}
}3. ユーザーの追加と削除を同時に行う
{
"AccessGroup": {
"user_groups": [
{
"id": 10871,
"name": "User Group 1"
}
],
"new_users": [
{
"user_id": 1750
},
{
"user_id": 1753
}
],
"delete_users": [
{
"user_id": 1749
}
]
}
}4. アクセスグループへのユーザーグループの追加・削除
この例では、ID 10871の「User Group 1」がすでにAccess Groupに割り当てられています。
- ユーザーグループの追加・削除を行うと、それまでのデータが削除され、入力されたデータが追加されます。
例:既存のUser Group 1があり、アップデート時にuser_groupパラメータにUser Group 2のみを指定した場合、Access GroupからUser Group 1が削除され、User Group 2のみが残る。
- ユーザーグループを追加する場合は、現在のユーザーグループを指定する必要があります。追加だけを行うと、以前のデータはすべて削除されます。
- レコードの更新をスキップするには、そのパラメーターをスキップします。以下の例では、ユーザーは更新されません。
例1:既存のAccess GroupからUser Group 2を追加する場合。
{
"AccessGroup": {
"user_groups": [
{
"id": 10871,
"name": "User Group 1"
},
{
"id": 10872,
"name": "User Group 2"
}
]
}
}例2: 既存のAcess GroupからUser Group 2を削除する場合。
{
"AccessGroup": {
"user_groups": [
{
"id": 10871,
"name": "User Group 1"
}
]
}
}例3:User Group 1を削除し、User Group 2を追加する場合。
{
"AccessGroup": {
"user_groups": [
{
"id": 10872,
"name": "User Group 2"
}
]
}
}