メンバー
ワークスペースメンバー(workspace member) は、ユーザーをワークスペースにロール付きで 結びつけます。ロールには階層があります。
owner— ワークスペースの作成者。ワークスペースごとにちょうど 1 人で、削除できません。admin— ワークスペース・そのプロジェクト・そのメンバーを完全に管理できます。member— ワークスペースで作業しますが、所属するプロジェクトにスコープされます。
オーナーと管理者はワークスペース内のすべてのプロジェクトを管理し、一般メンバーはプロジェクト
メンバーシップによって制限されます(プロジェクト を参照)。メンバーは
ワークスペース配下にネストされるため、すべてのエンドポイントのパスは /api/v1/workspaces/:id で
始まります。
メンバーオブジェクト
Section titled “メンバーオブジェクト”| フィールド | 型 | 説明 |
|---|---|---|
workspaceId |
string | 所属ワークスペース。 |
userId |
string | メンバーのユーザー ID。 |
role |
string | owner、admin、または member。 |
name |
string | メンバーの表示名。 |
email |
string | メンバーのメールアドレス。 |
imageUrl |
string | null | そのまま使えるアバター URL。アバターがない場合は null。 |
createdAt |
string | メンバーシップ作成の ISO 8601 時刻。 |
メンバーの一覧
Section titled “メンバーの一覧”GET /api/v1/workspaces/:id/members scope: read
ワークスペースのすべてのメンバーを返します。メンバーシップが必要です。
メンバーの追加
Section titled “メンバーの追加”POST /api/v1/workspaces/:id/members scope: admin
既存ユーザーをメールアドレスでワークスペースに追加します。ワークスペース管理者のみ。対象ユーザーは
インスタンスに既にアカウントを持っている必要があります。該当するメールのユーザーがいない場合は
404 not_found を返します。既にメンバーであるユーザーを追加すると 409 conflict を返します。
リクエストボディ
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
email |
string | はい | 追加する既存ユーザーのメール。 |
role |
string | いいえ | admin または member(既定 member)。owner は指定できません。 |
新しいメンバーオブジェクトとともに 201 Created を返します。
メンバーの削除
Section titled “メンバーの削除”DELETE /api/v1/workspaces/:id/members/:userId scope: admin
メンバーをワークスペースから削除します。ワークスペース管理者のみ。このワークスペース内での
プロジェクトメンバーシップも合わせて削除されます。204 No Content を返します。