Cómo crear un acceso directo a un archivo de Drive

Los accesos directos son archivos que se vinculan a otros archivos o carpetas en Google Drive. Los atajos tienen las siguientes características:

  • Es un tipo de MIME application/vnd.google-apps.shortcut. Para obtener más información, consulta Tipos de MIME admitidos en Google Workspace y Google Drive.

  • La LCA de un acceso directo hereda la LCA del elemento superior. No se puede cambiar directamente la ACL del acceso directo.

  • Un targetId que apunta al archivo o la carpeta de destino, también denominado "destino".

  • Un targetMimeType que indica el tipo de MIME del destino. El campo targetMimeType se usa para determinar el ícono de tipo que se mostrará. El tipo de MIME del destino se copia en el campo targetMimeType cuando se crea el acceso directo.

  • Los campos targetId y targetMimeType forman parte del campo shortcutDetails dentro del recurso archivo.

  • Un acceso directo solo puede tener un elemento superior. Si se requiere un archivo de acceso directo en otras ubicaciones de Drive, se puede copiar a las ubicaciones adicionales.

  • Cuando se borra el destino o cuando el usuario actual pierde el acceso a él, se rompe el acceso directo del usuario que apunta al destino.

  • El título de un acceso directo puede diferir del destino. Cuando se crea un acceso directo, el título del destino se usa como título del acceso directo. Después de la creación, el título del acceso directo y el título del destino se pueden cambiar de forma independiente. Si se cambia el nombre del destino, los accesos directos creados anteriormente conservan el título anterior.

  • El tipo de MIME de un acceso directo puede volverse obsoleto. Si bien es poco frecuente, el tipo de MIME de un archivo blob cambia cuando se sube una revisión de un tipo diferente, pero los accesos directos que apuntan al archivo actualizado conservan el tipo de MIME original. Por ejemplo, si subes un archivo JPG a Drive y, luego, subes una revisión en formato AVI, Drive identificará el cambio y actualizará la miniatura del archivo real. Sin embargo, el acceso directo sigue teniendo una miniatura JPG.

  • En la exportación de datos de la Cuenta de Google, también conocida como Google Takeout, los accesos directos se representan como archivos de favoritos de Netscape que contienen vínculos al destino.

Para obtener más información, consulta Cómo encontrar archivos y carpetas con los accesos directos de Google Drive.

Crear un acceso directo

Para crear un acceso directo, establece el tipo de MIME en application/vnd.google-apps.shortcut, establece el targetId en el archivo o la carpeta a los que debe vincularse el acceso directo y llama a files.create para crear un acceso directo.

En los siguientes ejemplos, se muestra cómo crear un acceso directo con una biblioteca cliente:

Python

file_metadata = {
    'name': 'FILE_NAME',
    'mimeType': 'text/plain'
}
file = drive_service.files().create(body=file_metadata, fields='id').execute()
print('File ID: %s' % file.get('id'))
shortcut_metadata = {
     'Name': 'SHORTCUT_NAME',
     'mimeType': 'application/vnd.google-apps.shortcut',
     'shortcutDetails': {
        'targetId': file.get('id')
     }
}
shortcut = drive_service.files().create(body=shortcut_metadata,
                                    fields='id,shortcutDetails').execute()
print('File ID: %s, Shortcut Target ID: %s, Shortcut Target MIME type: %s' % (
    shortcut.get('id'),
    shortcut.get('shortcutDetails').get('targetId'),
    shortcut.get('shortcutDetails').get('targetMimeType')))

Node.js

var fileMetadata = {
  'name': 'FILE_NAME',
  'mimeType': 'text/plain'
};
drive.files.create({
  'resource': fileMetadata,
  'fields': 'id'
}, function (err, file) {
  if (err) {
    // Handle error
    console.error(err);
  } else {
    console.log('File Id: ' + file.id);
    shortcutMetadata = {
      'name': 'SHORTCUT_NAME',
      'mimeType': 'application/vnd.google-apps.shortcut'
      'shortcutDetails': {
        'targetId': file.id
      }
    };
    drive.files.create({
      'resource': shortcutMetadata,
      'fields': 'id,name,mimeType,shortcutDetails'
    }, function(err, shortcut) {
      if (err) {
        // Handle error
        console.error(err);
      } else {
        console.log('Shortcut Id: ' + shortcut.id +
                    ', Name: ' + shortcut.name +
                    ', target Id: ' + shortcut.shortcutDetails.targetId +
                    ', target MIME type: ' + shortcut.shortcutDetails.targetMimeType);
      }
    }
  }
});

Reemplaza lo siguiente:

  • FILE_NAME: Es el nombre del archivo que requiere un acceso directo.
  • SHORTCUT_NAME: Es el nombre de este acceso directo.

De forma predeterminada, el acceso directo se crea en Mi unidad del usuario actual y solo se crean accesos directos para los archivos o las carpetas a los que el usuario actual tiene acceso.

Cómo buscar un atajo

Para buscar un acceso directo, usa la cadena de consulta q con files.list para filtrar los accesos directos que se devolverán.

mimeType operator values

Donde:

  • query_term es el término de búsqueda o el campo en el que se realizará la búsqueda. Para ver los términos de búsqueda que se pueden usar para filtrar unidades compartidas, consulta Términos de búsqueda.
  • operator especifica la condición del término de búsqueda. Para ver qué operadores puedes usar con cada término de búsqueda, consulta Operadores de búsqueda.
  • Los valores son los valores específicos que deseas usar para filtrar los resultados de la búsqueda.

Por ejemplo, la siguiente cadena de consulta filtra la búsqueda para mostrar todos los accesos directos a archivos de hojas de cálculo:

q: mimeType='application/vnd.google-apps.shortcut' AND shortcutDetails.targetMimeType='application/vnd.google-apps.spreadsheet'