グループの削除

グループを削除する例を挙げます。

curl -v -X DELETE \
  -H "Authorization: Bearer {ACCESS_TOKEN}" \
  "https://api-jp.kii.com/api/apps/{APP_ID}/groups/{GROUP_ID}"

グループの削除に成功すると Kii Cloud は 204 応答を返します。

グループを削除すると、このグループが保持していた全てのデータ(Bucket、KiiObject、トピック)は自動的に削除されます。

ユーザー削除時のグループ

ユーザーを削除したとき、それに関連付けられたグループは自動的に削除されません。そのグループを参照するメンバーがいなくなってもグループは自動的に消えないため、参照されないグループやそのデータがアプリケーション内の領域を消費し続ける現象が起こりえます。

こうした現象を防止するため、ユーザーの削除では、次の点に注意する必要があります。

  • 削除対象のユーザーがオーナーのとき

    削除されるユーザーがグループのオーナーの場合、そのグループはオーナーが不在のまま残り続けます。グループのオーナーの変更や、メンバーの追加と削除ができるのはオーナーだけであるため、事実上、そのグループを管理できるユーザーがいなくなります。

    オーナーのユーザーを削除する前には、モバイルアプリの外部仕様に基づいて、オーナーを変更する、グループのオーナーであるユーザーは削除できないようにする(先にグループのオーナーでなくすよう案内する)、ユーザー削除時にグループごと削除するなどの対処を行う必要があります。

  • 削除対象のユーザーが最後のメンバーのとき

    削除されるユーザーがグループの最後のメンバーの場合、そのグループを利用するユーザーがいなくなります。URI によってグループが特定できるようになっている場合はグループを参照できますが、モバイルアプリの側で URI も保存していない場合はリークしているのと同じ状態になります(グループの参照方法は グループの参照ユーザーとグループの関連 をご覧ください)。

    URI による参照を行わない設計のときは、ユーザーの削除の際にグループの削除も考慮する必要があります。

    ユーザーを削除するとき、以下の方法でグループの削除も同時に行う処理を検討してください。

    1. 削除しようとしているユーザーについて、そのユーザーがメンバーであるグループの一覧を取得する
    2. 取得したグループのそれぞれについて、そのグループのメンバーを取得する
    3. 削除しようとしているユーザーがグループの最後の 1 人のメンバーなら、ユーザーの削除と同時にそのグループも削除する