プロジェクトロール
プロジェクトロールを管理するには、次のエンドポイントを使用します。
プロジェクトロールには、次の値を指定できます:
| 値 | 定義 |
|---|---|
| system | Workatoが提供するデフォルトロール。 |
| custom | ワークスペース内で手動で作成されたロール。 |
| inheritable | 子ワークスペースが継承できる、AHQ管理者またはEmbeddedパートナーワークスペースのカスタムロール。 |
| inherited | 子ワークスペースがそのAHQまたはEmbedded親ワークスペースから継承したロール。 |
レート制限
プロジェクトロールリソースには、次のレート制限があります:
| タイプ | リソース | 制限 |
|---|---|---|
| すべての | すべてのプロジェクトロールエンドポイント | 1分あたり60リクエスト |
クイックリファレンス
| タイプ | リソース | 説明 |
|---|---|---|
| GET | /api/project_roles | プロジェクトロールを一覧表示します。 |
| GET | /api/project_roles/:id | プロジェクトロールの詳細を取得します。 |
| POST | /api/project_roles | プロジェクトロールを作成します。 |
| PUT | /api/project_roles/:id | プロジェクトロールを更新します。 |
| DELETE | /api/project_roles/:id | プロジェクトロールを削除します。 |
プロジェクトロールの一覧表示
ワークスペースからプロジェクトロールのリストを取得します。
shell
GET /api/project_rolesクエリパラメーター
| 名前 | タイプ | 説明 |
|---|---|---|
| name | string 任意 | プロジェクトロールを名前でフィルターします。 |
| page[number] | integer optional | 取得するページ番号。 デフォルト値は1です。 |
| page[size] | integer optional | 取得するページあたりの項目数。 デフォルト値および最大値は100です。 |
サンプルリクエスト
shell
curl -X GET 'https://www.workato.com/api/project_roles?name=Builder&page[number]=1&page[size]=100' \
-H 'Authorization: Bearer <api_token>'レスポンス
json
{
"data": [
{
"id": 1,
"name" : "Builder",
"members_count": 1,
"type": "custom",
"created_at": "2024-08-02T13:35:11.691-07:00",
"updated_at": "2024-08-02T13:35:11.691-07:00"
}
],
"total": 1,
"page": {
"number": 1,
"size": 100
}
}プロジェクトロールの詳細を取得
IDに基づいてプロジェクトロールを取得します。
shell
GET /api/project_roles/:idパスパラメーター
| 名前 | タイプ | 説明 |
|---|---|---|
| id | string 必須 | 取得するプロジェクトロールのID。 |
サンプルリクエスト
shell
curl -X GET 'https://www.workato.com/api/project_roles/pr-APmWpgTs-dwARGH' \
-H 'Authorization: Bearer <api_token>'レスポンス
json
{
"data": {
"id": "pr-APmWpgTs-dwARGH",
"name" : "Developer",
"config": { "recipe": { "privileges": "all" } },
"members_count": 1,
"type": "custom",
"created_at": "2024-08-02T13:35:11.691-07:00",
"updated_at": "2024-08-02T13:35:11.691-07:00"
}
}プロジェクトロールの作成
新しいプロジェクトロールを作成します。
shell
POST /api/project_rolesリクエスト本文
| 名前 | タイプ | 説明 |
|---|---|---|
| project_role | object required | 作成するプロジェクトロールを定義します。 |
| project_role[name] | string 必須 | 作成するプロジェクトロールの名前。 最大長は200文字です。 |
| project_role[config] | object required | ロールに割り当てる権限を定義します。 |
| project_role[inheritable] | boolean optional | trueに設定すると、子ワークスペースがロールを継承します。 デフォルト値はfalseです。 この値をtrueに設定できるのは、Admin AHQまたはEmbeddedパートナーワークスペース内のみです。 |
サンプルリクエスト
shell
curl -X POST 'https://www.workato.com/api/project_roles' \
-H 'Authorization: Bearer <api_token>' \
-H 'Content-Type: application/json' \
-d '{
"project_role": {
"name": "Builder",
"config": { "recipe": { "privileges": "all" } },
"inheritable": false
}
}'レスポンス
json
{
"data": {
"id": "pr-APmWpgTs-dwARGH",
"name" : "Builder",
"config": { "recipe": { "privileges": "all" } },
"members_count": 0,
"type": "custom",
"created_at": "2024-08-02T13:35:11.691-07:00",
"updated_at": "2024-08-02T13:35:11.691-07:00"
}
}プロジェクトロールの更新
IDに基づいて既存のプロジェクトロールを更新します。
shell
PUT /api/project_roles/:idパスパラメーター
| 名前 | タイプ | 説明 |
|---|---|---|
| id | string 必須 | 更新するプロジェクトロールのID。 |
リクエスト本文
| 名前 | タイプ | 説明 |
|---|---|---|
| project_role | object required | 更新後のプロジェクトロールを定義します。 |
| project_role[name] | string 必須 | プロジェクトロールの更新後の名前。 最大長は200文字です。 |
| project_role[config] | object required | ロールに割り当てる権限を定義します。 |
| project_role[inheritable] | boolean optional | trueに設定すると、子ワークスペースがロールを継承します。 デフォルト値はfalseです。 この値をtrueに設定できるのは、Admin AHQまたはEmbeddedパートナーワークスペース内のみです。 |
サンプルリクエスト
shell
curl -X PUT 'https://www.workato.com/api/project_roles/pr-APmWpgTs-dwARGH' \
-H 'Authorization: Bearer <api_token>' \
-H 'Content-Type: application/json' \
-d '{
"project_role": {
"name": "Builder",
"config": { "recipe": { "privileges": "all" } },
"inheritable": false
}
}'レスポンス
json
{
"data": {
"id": "pr-APmWpgTs-dwARGH",
"name" : "Builder",
"config": { "recipe": { "privileges": "all" } },
"members_count": 1,
"type": "custom",
"created_at": "2024-08-02T13:35:11.691-07:00",
"updated_at": "2024-08-02T13:35:11.691-07:00"
}
}プロジェクトロールの削除
IDに基づいてプロジェクトロールを削除します。
shell
DELETE /api/project_roles/:idパスパラメーター
| 名前 | タイプ | 説明 |
|---|---|---|
| id | string 必須 | 削除するプロジェクトロールのID。 |
サンプルリクエスト
shell
curl -X DELETE 'https://www.workato.com/api/project_roles/pr-APmWpgTs-dwARGH' \
-H 'Authorization: Bearer <api_token>'レスポンス
リクエストが成功すると、204 No Contentステータスコードが返されます。 APIはプロジェクトロールを削除し、空のレスポンス本文を返します。
400 BAD REQUEST
400 Bad Requestエラーは、クライアント側の問題によりサーバーがリクエストを処理できなかったことを示します。 一般的な原因には、不正な形式のリクエスト、無効なフィールド、サポートされていないデータ型などのフィールド制約違反が含まれます。
次の例では、ロールがまだ一部のコラボレーターに割り当てられているため、リクエストは失敗します:
json
{
"errors": [
{
"code": "bad_request",
"title": "You can’t delete a role when collaborators are assigned to the role."
}
]
}Last updated: