# MCP tool reference

1 callable tools.

Use tools/call at https://mcp.schedulerzero.com/mcp with the exact tool name and arguments below. The /tools/ paths in this view are documentation identifiers, not HTTP endpoints. Request execution is disabled for this reference.

Inputs are shown for personal API keys (bound) and for OAuth/delegated agents. Output schemas describe MCP structuredContent: native objects pass through; arrays, scalars and null use a data wrapper. Text content retains the native JSON result.

[Connect a client](/mcp/connect) · [Authentication and authorization](/authentication) · [Generated auth guide](/auth.md) · [Download tool catalog](/mcp-catalog.json) · [Agent documentation](/llms.txt)

## manage_organization_roles

List, create, update, or delete an Organization's custom roles (Organization or Workspace scope).

Use to define reusable permission sets; preview dependents before deleting an assigned role.

System roles are immutable; a role can only contain permissions the user holds.

Obtain the user's explicit authorization before invoking a write or destructive action. This is a client interaction requirement, not a server-issued approval token.

Scopes: role:read, role:manage

Risk: destructive; confirmation: explicit; idempotency: supported.

### Input schema (personal API key)

```json
{
  "type": "object",
  "anyOf": [
    {
      "type": "object",
      "properties": {
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "list"
              ]
            }
          ]
        },
        "organizationId": {
          "type": "string",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
          "format": "uuid"
        }
      },
      "required": [
        "action",
        "organizationId"
      ],
      "patternProperties": {
        "^(?!(?:action|organizationId)$)[\\s\\S]*$": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "type": "string",
        "enum": [
          "action",
          "organizationId"
        ]
      }
    },
    {
      "type": "object",
      "properties": {
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "create"
              ]
            }
          ]
        },
        "organizationId": {
          "type": "string",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
          "format": "uuid"
        },
        "name": {
          "$ref": "#/$defs/ShortText"
        },
        "scope": {
          "type": "string",
          "enum": [
            "organization",
            "workspace"
          ]
        },
        "permissions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "maxItems": 512
        }
      },
      "required": [
        "action",
        "organizationId",
        "name",
        "scope",
        "permissions"
      ],
      "patternProperties": {
        "^(?!(?:action|organizationId|name|scope|permissions)$)[\\s\\S]*$": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "type": "string",
        "enum": [
          "action",
          "organizationId",
          "name",
          "scope",
          "permissions"
        ]
      }
    },
    {
      "type": "object",
      "properties": {
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "update"
              ]
            }
          ]
        },
        "organizationId": {
          "type": "string",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
          "format": "uuid"
        },
        "roleId": {
          "$ref": "#/$defs/OpaqueId"
        },
        "name": {
          "$ref": "#/$defs/ShortText"
        },
        "permissions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "maxItems": 512
        }
      },
      "required": [
        "action",
        "organizationId",
        "roleId"
      ],
      "patternProperties": {
        "^(?!(?:action|organizationId|roleId|name|permissions)$)[\\s\\S]*$": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "type": "string",
        "enum": [
          "action",
          "organizationId",
          "roleId",
          "name",
          "permissions"
        ]
      }
    },
    {
      "type": "object",
      "properties": {
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "dependents"
              ]
            }
          ]
        },
        "organizationId": {
          "type": "string",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
          "format": "uuid"
        },
        "roleId": {
          "$ref": "#/$defs/OpaqueId"
        }
      },
      "required": [
        "action",
        "organizationId",
        "roleId"
      ],
      "patternProperties": {
        "^(?!(?:action|organizationId|roleId)$)[\\s\\S]*$": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "type": "string",
        "enum": [
          "action",
          "organizationId",
          "roleId"
        ]
      }
    },
    {
      "type": "object",
      "properties": {
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "delete"
              ]
            }
          ]
        },
        "organizationId": {
          "type": "string",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
          "format": "uuid"
        },
        "roleId": {
          "$ref": "#/$defs/OpaqueId"
        }
      },
      "required": [
        "action",
        "organizationId",
        "roleId"
      ],
      "patternProperties": {
        "^(?!(?:action|organizationId|roleId)$)[\\s\\S]*$": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "type": "string",
        "enum": [
          "action",
          "organizationId",
          "roleId"
        ]
      }
    }
  ],
  "$defs": {
    "ShortText": {
      "type": "string",
      "minLength": 1,
      "maxLength": 256
    },
    "OpaqueId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 512
    },
    "ManageOrganizationRolesInput": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "action": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "list"
                  ]
                }
              ]
            },
            "organizationId": {
              "type": "string",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
              "format": "uuid"
            }
          },
          "required": [
            "action",
            "organizationId"
          ],
          "patternProperties": {
            "^(?!(?:action|organizationId)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "action",
              "organizationId"
            ]
          }
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "create"
                  ]
                }
              ]
            },
            "organizationId": {
              "type": "string",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
              "format": "uuid"
            },
            "name": {
              "$ref": "#/$defs/ShortText"
            },
            "scope": {
              "type": "string",
              "enum": [
                "organization",
                "workspace"
              ]
            },
            "permissions": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "maxItems": 512
            }
          },
          "required": [
            "action",
            "organizationId",
            "name",
            "scope",
            "permissions"
          ],
          "patternProperties": {
            "^(?!(?:action|organizationId|name|scope|permissions)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "action",
              "organizationId",
              "name",
              "scope",
              "permissions"
            ]
          }
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "update"
                  ]
                }
              ]
            },
            "organizationId": {
              "type": "string",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
              "format": "uuid"
            },
            "roleId": {
              "$ref": "#/$defs/OpaqueId"
            },
            "name": {
              "$ref": "#/$defs/ShortText"
            },
            "permissions": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "maxItems": 512
            }
          },
          "required": [
            "action",
            "organizationId",
            "roleId"
          ],
          "patternProperties": {
            "^(?!(?:action|organizationId|roleId|name|permissions)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "action",
              "organizationId",
              "roleId",
              "name",
              "permissions"
            ]
          }
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "dependents"
                  ]
                }
              ]
            },
            "organizationId": {
              "type": "string",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
              "format": "uuid"
            },
            "roleId": {
              "$ref": "#/$defs/OpaqueId"
            }
          },
          "required": [
            "action",
            "organizationId",
            "roleId"
          ],
          "patternProperties": {
            "^(?!(?:action|organizationId|roleId)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "action",
              "organizationId",
              "roleId"
            ]
          }
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "delete"
                  ]
                }
              ]
            },
            "organizationId": {
              "type": "string",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
              "format": "uuid"
            },
            "roleId": {
              "$ref": "#/$defs/OpaqueId"
            }
          },
          "required": [
            "action",
            "organizationId",
            "roleId"
          ],
          "patternProperties": {
            "^(?!(?:action|organizationId|roleId)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "action",
              "organizationId",
              "roleId"
            ]
          }
        }
      ]
    }
  }
}
```

### Input schema (OAuth / delegated agent)

```json
{
  "type": "object",
  "anyOf": [
    {
      "type": "object",
      "properties": {
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "list"
              ]
            }
          ]
        },
        "organizationId": {
          "type": "string",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
          "format": "uuid"
        }
      },
      "required": [
        "action",
        "organizationId"
      ],
      "patternProperties": {
        "^(?!(?:action|organizationId)$)[\\s\\S]*$": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "type": "string",
        "enum": [
          "action",
          "organizationId"
        ]
      }
    },
    {
      "type": "object",
      "properties": {
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "create"
              ]
            }
          ]
        },
        "organizationId": {
          "type": "string",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
          "format": "uuid"
        },
        "name": {
          "$ref": "#/$defs/ShortText"
        },
        "scope": {
          "type": "string",
          "enum": [
            "organization",
            "workspace"
          ]
        },
        "permissions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "maxItems": 512
        }
      },
      "required": [
        "action",
        "organizationId",
        "name",
        "scope",
        "permissions"
      ],
      "patternProperties": {
        "^(?!(?:action|organizationId|name|scope|permissions)$)[\\s\\S]*$": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "type": "string",
        "enum": [
          "action",
          "organizationId",
          "name",
          "scope",
          "permissions"
        ]
      }
    },
    {
      "type": "object",
      "properties": {
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "update"
              ]
            }
          ]
        },
        "organizationId": {
          "type": "string",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
          "format": "uuid"
        },
        "roleId": {
          "$ref": "#/$defs/OpaqueId"
        },
        "name": {
          "$ref": "#/$defs/ShortText"
        },
        "permissions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "maxItems": 512
        }
      },
      "required": [
        "action",
        "organizationId",
        "roleId"
      ],
      "patternProperties": {
        "^(?!(?:action|organizationId|roleId|name|permissions)$)[\\s\\S]*$": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "type": "string",
        "enum": [
          "action",
          "organizationId",
          "roleId",
          "name",
          "permissions"
        ]
      }
    },
    {
      "type": "object",
      "properties": {
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "dependents"
              ]
            }
          ]
        },
        "organizationId": {
          "type": "string",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
          "format": "uuid"
        },
        "roleId": {
          "$ref": "#/$defs/OpaqueId"
        }
      },
      "required": [
        "action",
        "organizationId",
        "roleId"
      ],
      "patternProperties": {
        "^(?!(?:action|organizationId|roleId)$)[\\s\\S]*$": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "type": "string",
        "enum": [
          "action",
          "organizationId",
          "roleId"
        ]
      }
    },
    {
      "type": "object",
      "properties": {
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "delete"
              ]
            }
          ]
        },
        "organizationId": {
          "type": "string",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
          "format": "uuid"
        },
        "roleId": {
          "$ref": "#/$defs/OpaqueId"
        }
      },
      "required": [
        "action",
        "organizationId",
        "roleId"
      ],
      "patternProperties": {
        "^(?!(?:action|organizationId|roleId)$)[\\s\\S]*$": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "type": "string",
        "enum": [
          "action",
          "organizationId",
          "roleId"
        ]
      }
    }
  ],
  "$defs": {
    "ShortText": {
      "type": "string",
      "minLength": 1,
      "maxLength": 256
    },
    "OpaqueId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 512
    },
    "ManageOrganizationRolesInput": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "action": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "list"
                  ]
                }
              ]
            },
            "organizationId": {
              "type": "string",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
              "format": "uuid"
            }
          },
          "required": [
            "action",
            "organizationId"
          ],
          "patternProperties": {
            "^(?!(?:action|organizationId)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "action",
              "organizationId"
            ]
          }
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "create"
                  ]
                }
              ]
            },
            "organizationId": {
              "type": "string",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
              "format": "uuid"
            },
            "name": {
              "$ref": "#/$defs/ShortText"
            },
            "scope": {
              "type": "string",
              "enum": [
                "organization",
                "workspace"
              ]
            },
            "permissions": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "maxItems": 512
            }
          },
          "required": [
            "action",
            "organizationId",
            "name",
            "scope",
            "permissions"
          ],
          "patternProperties": {
            "^(?!(?:action|organizationId|name|scope|permissions)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "action",
              "organizationId",
              "name",
              "scope",
              "permissions"
            ]
          }
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "update"
                  ]
                }
              ]
            },
            "organizationId": {
              "type": "string",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
              "format": "uuid"
            },
            "roleId": {
              "$ref": "#/$defs/OpaqueId"
            },
            "name": {
              "$ref": "#/$defs/ShortText"
            },
            "permissions": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "maxItems": 512
            }
          },
          "required": [
            "action",
            "organizationId",
            "roleId"
          ],
          "patternProperties": {
            "^(?!(?:action|organizationId|roleId|name|permissions)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "action",
              "organizationId",
              "roleId",
              "name",
              "permissions"
            ]
          }
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "dependents"
                  ]
                }
              ]
            },
            "organizationId": {
              "type": "string",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
              "format": "uuid"
            },
            "roleId": {
              "$ref": "#/$defs/OpaqueId"
            }
          },
          "required": [
            "action",
            "organizationId",
            "roleId"
          ],
          "patternProperties": {
            "^(?!(?:action|organizationId|roleId)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "action",
              "organizationId",
              "roleId"
            ]
          }
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "delete"
                  ]
                }
              ]
            },
            "organizationId": {
              "type": "string",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
              "format": "uuid"
            },
            "roleId": {
              "$ref": "#/$defs/OpaqueId"
            }
          },
          "required": [
            "action",
            "organizationId",
            "roleId"
          ],
          "patternProperties": {
            "^(?!(?:action|organizationId|roleId)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "action",
              "organizationId",
              "roleId"
            ]
          }
        }
      ]
    }
  }
}
```

### Output schema (structuredContent)

```json
{
  "$defs": {
    "RoleId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 512
    },
    "ShortText": {
      "type": "string",
      "minLength": 1,
      "maxLength": 256
    },
    "ManageOrganizationRolesOutput": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "$ref": "#/$defs/RoleId"
              },
              "name": {
                "$ref": "#/$defs/ShortText"
              },
              "scope": {
                "type": "string",
                "enum": [
                  "organization",
                  "workspace"
                ]
              },
              "permissions": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "system": {
                "type": "boolean"
              },
              "assignedCount": {
                "type": "integer"
              }
            },
            "required": [
              "id",
              "name",
              "scope",
              "permissions",
              "system",
              "assignedCount"
            ],
            "patternProperties": {
              "^(?!(?:id|name|scope|permissions|system|assignedCount)$)[\\s\\S]*$": false
            },
            "additionalProperties": true,
            "propertyNames": {
              "type": "string",
              "enum": [
                "id",
                "name",
                "scope",
                "permissions",
                "system",
                "assignedCount"
              ]
            }
          }
        },
        {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/$defs/RoleId"
            },
            "name": {
              "$ref": "#/$defs/ShortText"
            },
            "scope": {
              "type": "string",
              "enum": [
                "organization",
                "workspace"
              ]
            },
            "permissions": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "system": {
              "type": "boolean"
            },
            "assignedCount": {
              "type": "integer"
            }
          },
          "required": [
            "id",
            "name",
            "scope",
            "permissions",
            "system",
            "assignedCount"
          ],
          "patternProperties": {
            "^(?!(?:id|name|scope|permissions|system|assignedCount)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "id",
              "name",
              "scope",
              "permissions",
              "system",
              "assignedCount"
            ]
          }
        },
        {
          "type": "object",
          "properties": {
            "roleId": {
              "$ref": "#/$defs/RoleId"
            },
            "members": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "userId": {
                    "type": "string",
                    "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
                    "format": "uuid"
                  },
                  "name": {
                    "type": "string"
                  },
                  "email": {
                    "type": "string"
                  }
                },
                "required": [
                  "userId",
                  "name",
                  "email"
                ],
                "patternProperties": {
                  "^(?!(?:userId|name|email)$)[\\s\\S]*$": false
                },
                "additionalProperties": true,
                "propertyNames": {
                  "type": "string",
                  "enum": [
                    "userId",
                    "name",
                    "email"
                  ]
                }
              }
            }
          },
          "required": [
            "roleId",
            "members"
          ],
          "patternProperties": {
            "^(?!(?:roleId|members)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "roleId",
              "members"
            ]
          }
        },
        {
          "type": "object",
          "properties": {
            "deleted": {
              "anyOf": [
                {
                  "type": "boolean",
                  "enum": [
                    true
                  ]
                }
              ]
            },
            "affectedUserIds": {
              "type": "array",
              "items": {
                "type": "string",
                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
                "format": "uuid"
              }
            }
          },
          "required": [
            "deleted",
            "affectedUserIds"
          ],
          "patternProperties": {
            "^(?!(?:deleted|affectedUserIds)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "deleted",
              "affectedUserIds"
            ]
          }
        }
      ]
    }
  },
  "type": "object",
  "anyOf": [
    {
      "allOf": [
        {
          "$ref": "#/$defs/ManageOrganizationRolesOutput"
        },
        {
          "type": "object"
        }
      ]
    },
    {
      "type": "object",
      "properties": {
        "data": {
          "allOf": [
            {
              "$ref": "#/$defs/ManageOrganizationRolesOutput"
            },
            {
              "not": {
                "type": "object"
              }
            }
          ]
        }
      },
      "required": [
        "data"
      ],
      "additionalProperties": false
    }
  ]
}
```

### Underlying API operations

- `organizationRoles.list`: `GET /v1/organizations/:organizationId/roles`
- `organizationRoles.create`: `POST /v1/organizations/:organizationId/roles`
- `organizationRoles.update`: `PATCH /v1/organizations/:organizationId/roles/:roleId`
- `organizationRoles.dependents`: `GET /v1/organizations/:organizationId/roles/:roleId/dependents`
- `organizationRoles.delete`: `DELETE /v1/organizations/:organizationId/roles/:roleId`

