コンテンツにスキップ

メンバー

ワークスペースメンバー(workspace member) は、ユーザーをワークスペースにロール付きで 結びつけます。ロールには階層があります。

  • owner — ワークスペースの作成者。ワークスペースごとにちょうど 1 人で、削除できません。
  • admin — ワークスペース・そのプロジェクト・そのメンバーを完全に管理できます。
  • member — ワークスペースで作業しますが、所属するプロジェクトにスコープされます。

オーナーと管理者はワークスペース内のすべてのプロジェクトを管理し、一般メンバーはプロジェクト メンバーシップによって制限されます(プロジェクト を参照)。メンバーは ワークスペース配下にネストされるため、すべてのエンドポイントのパスは /api/v1/workspaces/:id で 始まります。

フィールド 説明
workspaceId string 所属ワークスペース。
userId string メンバーのユーザー ID。
role string owneradmin、または member
name string メンバーの表示名。
email string メンバーのメールアドレス。
imageUrl string | null そのまま使えるアバター URL。アバターがない場合は null
createdAt string メンバーシップ作成の ISO 8601 時刻。

GET /api/v1/workspaces/:id/members scope: read

ワークスペースのすべてのメンバーを返します。メンバーシップが必要です。

curl "https://<your-instance>/api/v1/workspaces/wrk_demo/members" \
  -H "Authorization: Bearer spantail_pat_yourtoken"

POST /api/v1/workspaces/:id/members scope: admin

既存ユーザーをメールアドレスでワークスペースに追加します。ワークスペース管理者のみ。対象ユーザーは インスタンスに既にアカウントを持っている必要があります。該当するメールのユーザーがいない場合は 404 not_found を返します。既にメンバーであるユーザーを追加すると 409 conflict を返します。

リクエストボディ

フィールド 必須 説明
email string はい 追加する既存ユーザーのメール。
role string いいえ admin または member(既定 member)。owner は指定できません。
curl -X POST "https://<your-instance>/api/v1/workspaces/wrk_demo/members" \
  -H "Authorization: Bearer spantail_pat_yourtoken" \
  -H "Content-Type: application/json" \
  -d '{ "email": "ben@example.com", "role": "member" }'

新しいメンバーオブジェクトとともに 201 Created を返します。

DELETE /api/v1/workspaces/:id/members/:userId scope: admin

メンバーをワークスペースから削除します。ワークスペース管理者のみ。このワークスペース内での プロジェクトメンバーシップも合わせて削除されます。204 No Content を返します。

curl -X DELETE "https://<your-instance>/api/v1/workspaces/wrk_demo/members/usr_ben" \
  -H "Authorization: Bearer spantail_pat_yourtoken"