{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/PermissionRequest",
  "title": "PermissionRequest",
  "type": "object",
  "properties": {
    "remote_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "The third-party API ID of the matching object."
    },
    "user": {
      "type": [
        "string",
        "null"
      ],
      "format": "uuid",
      "description": "The user that is granted this permission. This will only be populated if the type is `USER`."
    },
    "group": {
      "type": [
        "string",
        "null"
      ],
      "format": "uuid",
      "description": "The group that is granted this permission. This will only be populated if the type is `GROUP`."
    },
    "type": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/TypeEnum"
        },
        {
          "type": "null"
        }
      ],
      "description": "Denotes what type of people have access to the file."
    },
    "roles": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "$ref": "#/components/schemas/RolesEnum"
      },
      "description": "The permissions that the user or group has for the File or Folder. It is possible for a user or group to have multiple roles, such as viewing & uploading. Possible values include: `READ`, `WRITE`, `OWNER`. In cases where there is no clear mapping, the original value passed through will be returned."
    },
    "integration_params": {
      "type": [
        "object",
        "null"
      ],
      "additionalProperties": {
        "description": "Any type"
      }
    },
    "linked_account_params": {
      "type": [
        "object",
        "null"
      ],
      "additionalProperties": {
        "description": "Any type"
      }
    }
  },
  "description": "# The Permission Object\n### Description\nThe Permission object is used to represent a user's or group's access to a File or Folder. Permissions are unexpanded by default.\n\n### Usage Example\nFetch from the `GET Files` or `GET Folders` endpoint. Permissions are unexpanded by default. Use the query param `expand=permissions` to see more details."
}