REST Resource: permissions

Recurso: Permiso

Es un permiso para un archivo. Un permiso otorga a un usuario, grupo, dominio o a todos acceso a un archivo o a una jerarquía de carpetas.

De forma predeterminada, las solicitudes de permisos solo muestran un subconjunto de campos. El tipo de permiso, el ID, el tipo y el rol siempre se devuelven. Para recuperar campos específicos, consulta https://developers.google.com/drive/api/guides/fields-parameter.

Algunos métodos de recursos (como permissions.update) requieren un permissionId. Usa el método permissions.list para recuperar el ID de un archivo, una carpeta o un viaje compartido.

Representación JSON
{
  "id": string,
  "displayName": string,
  "type": string,
  "kind": string,
  "permissionDetails": [
    {
      "permissionType": string,
      "inheritedFrom": string,
      "role": string,
      "inherited": boolean
    }
  ],
  "photoLink": string,
  "emailAddress": string,
  "role": string,
  "allowFileDiscovery": boolean,
  "domain": string,
  "expirationTime": string,
  "teamDrivePermissionDetails": [
    {
      "teamDrivePermissionType": string,
      "inheritedFrom": string,
      "role": string,
      "inherited": boolean
    }
  ],
  "deleted": boolean,
  "view": string,
  "pendingOwner": boolean
}
Campos
id

string

Solo salida. Es el ID de este permiso. Este es un identificador único para el beneficiario y se publica en Recursos del usuario como permissionId. Los IDs deben tratarse como valores opacos.

displayName

string

Solo salida. Es el nombre "atractivo" del valor del permiso. A continuación, se muestra una lista de ejemplos para cada tipo de permiso:

  • user: Es el nombre completo del usuario, tal como se define en su Cuenta de Google, por ejemplo, "Juan Pérez".
  • group: Es el nombre del Grupo de Google, como "Administradores de la empresa".
  • domain: Es un nombre de dominio de cadena, como "laempresa.com".
  • anyone: No hay displayName presente.
type

string

Es el tipo del beneficiario. Estos son los valores válidos:

  • user
  • group
  • domain
  • anyone

Cuando crees un permiso, si type es user o group, debes proporcionar un emailAddress para el usuario o grupo. Cuando type sea domain, debes proporcionar una domain. No se requiere información adicional para un tipo anyone.

kind

string

Solo salida. Identifica qué tipo de recurso es. Valor: la cadena fija "drive#permission".

permissionDetails[]

object

Solo salida. Detalles sobre si los permisos de este elemento de la unidad compartida se heredan o se aplican directamente a este elemento. Este es un campo solo de salida que solo está presente para los elementos de unidades compartidas.

permissionDetails[].permissionType

string

Solo salida. Es el tipo de permiso de este usuario. Si bien es posible que se agreguen valores nuevos en el futuro, actualmente se pueden usar los siguientes:

  • file
  • member
permissionDetails[].inheritedFrom

string

Solo salida. Es el ID del elemento del que se hereda este permiso. Este es un campo de solo salida.

permissionDetails[].role

string

Solo salida. Es el rol principal de este usuario. Si bien es posible que se agreguen valores nuevos en el futuro, actualmente se pueden usar los siguientes:

  • organizer
  • fileOrganizer
  • writer
  • commenter
  • reader
permissionDetails[].inherited

boolean

Solo salida. Indica si este permiso se hereda. Este campo siempre se propaga. Este es un campo de solo salida.

emailAddress

string

Es la dirección de correo electrónico del usuario o grupo al que se refiere este permiso.

role

string

El rol que otorga este permiso. Si bien es posible que se admitan valores nuevos en el futuro, actualmente se permiten los siguientes:

  • owner
  • organizer
  • fileOrganizer
  • writer
  • commenter
  • reader
allowFileDiscovery

boolean

Indica si el permiso permite que se descubra el archivo a través de la búsqueda. Esto solo se aplica a los permisos de tipo domain o anyone.

domain

string

Es el dominio al que hace referencia este permiso.

expirationTime

string

La hora a la que vencerá este permiso (fecha y hora RFC 3339). Los tiempos de vencimiento tienen las siguientes restricciones:

  • Solo se pueden configurar en los permisos de usuarios y grupos.
  • La hora debe ser posterior a la actual.
  • La hora no puede ser superior a un año en el futuro.
teamDrivePermissionDetails[]
(deprecated)

object

Solo salida. Obsoleto: Solo salida. Usa permissionDetails en su lugar.

teamDrivePermissionDetails[]
(deprecated).teamDrivePermissionType
(deprecated)

string

Obsoleto: Solo salida. Usa permissionDetails/permissionType en su lugar.

teamDrivePermissionDetails[]
(deprecated).inheritedFrom
(deprecated)

string

Obsoleto: Solo salida. Usa permissionDetails/inheritedFrom en su lugar.

teamDrivePermissionDetails[]
(deprecated).role
(deprecated)

string

Obsoleto: Solo salida. Usa permissionDetails/role en su lugar.

teamDrivePermissionDetails[]
(deprecated).inherited
(deprecated)

boolean

Obsoleto: Solo salida. Usa permissionDetails/inherited en su lugar.

deleted

boolean

Solo salida. Indica si se borró la cuenta asociada con este permiso. Este campo solo se refiere a los permisos de usuarios y grupos.

view

string

Indica la vista para este permiso. Solo se completa para los permisos que pertenecen a una vista. "published" es el único valor admitido.

pendingOwner

boolean

Indica si la cuenta asociada con este permiso es un propietario pendiente. Solo se propaga para los permisos de tipo user de los archivos que no están en una unidad compartida.

Métodos

create

Crea un permiso para un archivo o una unidad compartida.

delete

Borra un permiso.

get

Obtiene un permiso por ID.

list

Muestra una lista de los permisos de un archivo o una unidad compartida.

update

Actualiza un permiso con semántica de parches.