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

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

  • Un tipo de MIME application/vnd.google-apps.shortcut. Para obtener más información, consulta los tipos de MIME compatibles con Google Workspace y Google Drive.

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

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

  • Un targetMimeType que indica el tipo MIME del objetivo 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 atajo.

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

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

  • Cuando se borra el destino o cuando el usuario actual pierde el acceso al destino, se interrumpe el acceso directo del usuario que apunta al destino.

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

  • El tipo MIME de un atajo puede volverse inactivo. Si bien es raro, el tipo de MIME de un archivo de blob cambia cuando se sube una revisión de un tipo diferente, pero los atajos que apuntan al archivo actualizado conservan el tipo de MIME original. Por ejemplo, si subes un archivo JPG a Drive y, luego, una revisión AVI, Drive identifica el cambio y actualiza la miniatura del archivo real. Sin embargo, el atajo sigue teniendo una miniatura JPG.

  • En la exportación de datos de la Cuenta de Google, también conocida como Google Takeout, los atajos 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 al que debe vincularse el acceso directo y llama a files.create para crearlo.

En los siguientes ejemplos, se muestra cómo crear un atajo 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 atajo.
  • SHORTCUT_NAME: Es el nombre de este atajo.

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

Buscar un atajo

Para buscar un atajo, usa la cadena de consulta q con files.list para filtrar los atajos que se mostrarán.

mimeType operator values

Donde:

  • query_term es el término o campo de búsqueda. Para ver los términos de consulta que se pueden usar para filtrar unidades compartidas, consulta Términos de la búsqueda.
  • operator especifica la condición para el término de consulta. Para ver los operadores que puedes usar con cada término de consulta, consulta Operadores de consulta.
  • values 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 atajos a archivos de hoja de cálculo:

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