チーム
チームは、レポート、コンプライアンス集計、チームスコープ課題のためにユーザーをグループ化します。すべてのエンドポイントは/api/public/v1/teams下にあります。ユーザーは一度に0または1つのチームに所属できます。
エンドポイント
| メソッド | パス | スコープ | 目的 |
|---|---|---|---|
| GET | /teams | teams:read | メンバー数を含むチームをリスト表示します。 |
| GET | /teams/{'{'}id{'}'} | teams:read | メンバーリスト付きの単一チーム。 |
| POST | /teams | teams:write | チームを作成します。 |
| PATCH | /teams/{'{'}id{'}'} | teams:write | チーム名を変更します。 |
| DELETE | /teams/{'{'}id{'}'} | teams:write | チームを削除します。メンバーは未割り当てになりますが、非アクティブ化はされません。 |
| POST | /teams/{'{'}teamId{'}'}/members/{'{'}userId{'}'} | teams:write | ユーザーをチームに追加します。 |
| DELETE | /teams/{'{'}teamId{'}'}/members/{'{'}userId{'}'} | teams:write | ユーザーをチームから削除します。 |
チームをリスト表示
組織内のすべてのチームを返します。メンバー数は非正規化されています — 実際の名簿にはGET /teams/{id}を呼び出してください。
GET /api/public/v1/teams
Authorization: Bearer scs_live_…レスポンス
[
{
"id": "4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32",
"name": "Payments",
"memberCount": 12,
"createdAt": "2025-11-03T14:20:00Z"
},
{
"id": "a52e1f9b-8c44-4a31-9c0d-3b62e0a17c84",
"name": "Platform",
"memberCount": 8,
"createdAt": "2025-11-03T14:21:42Z"
}
]例
curl -sS -H "Authorization: Bearer $SCH_API_KEY" \
https://api.limeplate.com/api/public/v1/teamsチームを取得
チームと、進捗配列を除くGET /users/{id}と同じ形状のメンバー名簿を返します。
GET /api/public/v1/teams/{teamId}
Authorization: Bearer scs_live_…レスポンス
{
"id": "4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32",
"name": "Payments",
"createdAt": "2025-11-03T14:20:00Z",
"members": [
{
"id": "b1a4d7c2-9e58-4f3a-83cd-2c6f1a90e7b4",
"name": "Jane Smith",
"email": "jane.smith@acme.com",
"role": "member",
"teamId": "4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32",
"teamName": "Payments",
"isActive": true,
"lastLoginAt": "2026-05-27T16:42:11Z",
"createdAt": "2026-02-04T11:08:00Z"
}
]
}例
curl -sS -H "Authorization: Bearer $SCH_API_KEY" \
https://api.limeplate.com/api/public/v1/teams/4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32チームを作成
チーム名は組織内で一意でなければなりません。レスポンスは、メンバー数がゼロの新しいチームを返します。
POST /api/public/v1/teams
Authorization: Bearer scs_live_…
Content-Type: application/jsonリクエストボディ
| フィールド | タイプ | 必須 | 意味 |
|---|---|---|---|
name | string | はい | チーム表示名。組織内で一意でなければなりません。 |
レスポンス
{
"id": "4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32",
"name": "Payments",
"memberCount": 0,
"createdAt": "2026-05-29T09:30:12Z"
}例
curl -sS -X POST \
-H "Authorization: Bearer $SCH_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name": "Payments"}' \
https://api.limeplate.com/api/public/v1/teamsチームを更新
チーム名のみ変更できます。メンバーを移動するには、メンバーエンドポイントを使用してください。
PATCH /api/public/v1/teams/{teamId}
Authorization: Bearer scs_live_…
Content-Type: application/jsonリクエストボディ
| フィールド | タイプ | 必須 | 意味 |
|---|---|---|---|
name | string | はい | 新しいチーム名。 |
レスポンス
{
"message": "Team updated"
}例
curl -sS -X PATCH \
-H "Authorization: Bearer $SCH_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name": "Payments Core"}' \
https://api.limeplate.com/api/public/v1/teams/4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32チームを削除
チームを削除します。チームのメンバーは未割り当てになります (teamIdがnullになります) が、非アクティブ化はされません — アカウント、XP、進捗はそのまま残ります。削除されたチームに紐づくチームスコープ課題は非アクティブ化されます。
DELETE /api/public/v1/teams/{teamId}
Authorization: Bearer scs_live_…レスポンス
{
"message": "Team deleted"
}例
curl -sS -X DELETE \
-H "Authorization: Bearer $SCH_API_KEY" \
https://api.limeplate.com/api/public/v1/teams/4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32メンバーを追加
ユーザーをチームに移動します。ユーザーがすでに別のチームに所属していた場合、その以前のメンバーシップは置き換えられます。別途「転送」呼び出しはありません。
POST /api/public/v1/teams/{teamId}/members/{userId}
Authorization: Bearer scs_live_…レスポンス
{
"message": "Member added"
}例
curl -sS -X POST \
-H "Authorization: Bearer $SCH_API_KEY" \
https://api.limeplate.com/api/public/v1/teams/4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32/members/b1a4d7c2-9e58-4f3a-83cd-2c6f1a90e7b4メンバーを削除
ユーザーをチームから切り離します。ユーザーをteamId: nullでPATCHすることと同等ですが、チームアイデンティティ経由でクリーンにルーティングされます。ユーザーのアカウントと進捗には影響しません。
DELETE /api/public/v1/teams/{teamId}/members/{userId}
Authorization: Bearer scs_live_…レスポンス
{
"message": "Member removed"
}例
curl -sS -X DELETE \
-H "Authorization: Bearer $SCH_API_KEY" \
https://api.limeplate.com/api/public/v1/teams/4f8d3e2a-71cb-4d09-9ad7-5b8c7e1f0a32/members/b1a4d7c2-9e58-4f3a-83cd-2c6f1a90e7b4