{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "userId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "description": "Identifier of the user returned by its create or list operation."
    },
    "role": {
      "description": "Workspace access role; cannot exceed the acting member’s authority.",
      "type": "string",
      "enum": [
        "owner",
        "admin",
        "member",
        "viewer"
      ]
    },
    "projectIds": {
      "description": "Accessible project IDs. Where nullable, null grants all projects.",
      "anyOf": [
        {
          "minItems": 1,
          "maxItems": 100,
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          }
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "userId"
  ],
  "additionalProperties": false
}
