{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/SpacePermissionCreate",
  "title": "SpacePermissionCreate",
  "required": [
    "anonymousAccess",
    "operation",
    "unlicensedAccess"
  ],
  "type": "object",
  "additionalProperties": true,
  "properties": {
    "subjects": {
      "type": "object",
      "properties": {
        "user": {
          "required": [
            "results",
            "size"
          ],
          "type": "object",
          "properties": {
            "results": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/User"
              }
            },
            "size": {
              "type": "integer",
              "format": "int32"
            }
          }
        },
        "group": {
          "required": [
            "results",
            "size"
          ],
          "type": "object",
          "properties": {
            "results": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/GroupCreate"
              }
            },
            "size": {
              "type": "integer",
              "format": "int32"
            }
          }
        }
      },
      "description": "The users and/or groups that the permission applies to."
    },
    "operation": {
      "$ref": "#/components/schemas/OperationCheckResult"
    },
    "anonymousAccess": {
      "type": "boolean",
      "description": "Grant anonymous users permission to use the operation.",
      "default": false
    },
    "unlicensedAccess": {
      "type": "boolean",
      "description": "Grants access to unlicensed users from JIRA Service Desk when used\nwith the 'read space' operation.",
      "default": false
    }
  },
  "description": "This object represents a permission for given space. Permissions consist of\nat least one operation object with an accompanying subjects object.\n\nThe following combinations of `operation` and `targetType` values are\nvalid for the `operation` object:\n\n  - 'create': 'page', 'blogpost', 'comment', 'attachment'\n  - 'read': 'space'\n  - 'delete': 'page', 'blogpost', 'comment', 'attachment'\n  - 'export': 'space'\n  - 'administer': 'space'"
}