En esta guía, se explica cómo crear y administrar archivos en Google Drive con la API de Google Drive.
Crear archivo
Para crear un archivo en Drive que no contenga metadatos ni contenido, usa el método create
en el recurso files
sin parámetros.
Cuando creas el archivo, el método devuelve un recurso files
. El archivo recibe un kind
de drive.file
, un id
, un name
de "Sin título" y un mimeType
de application/octet-stream
. El parámetro uploadType
se marca como obligatorio, pero se establece de forma predeterminada en media
, por lo que no es necesario que lo proporciones.
Para obtener más información sobre los límites de los archivos de Drive, consulta Límites de archivos y carpetas.
Usa el parámetro fields
Si deseas especificar los campos que se devolverán en la respuesta, puedes establecer el parámetro del sistema fields
con cualquier método del recurso files
. Si omites el parámetro fields
, el servidor devolverá un conjunto predeterminado de campos específicos del método. Por ejemplo, el método list
solo devuelve los campos kind
, id
, name
, mimeType
y resourceKey
para cada archivo. Para devolver diferentes campos, consulta Cómo devolver campos específicos.
Genera IDs para usar con tus archivos
El método generateIds
del recurso files
te permite generar previamente IDs de archivos únicos que se pueden usar cuando creas o copias archivos y carpetas en Drive. Esto puede ser útil cuando necesitas controlar los IDs de los archivos desde tu app, en lugar de dejar que Drive los asigne automáticamente.
Puedes establecer la cantidad de IDs generados con el parámetro de consulta count
.
Si no se establece count
, se devuelven 10 de forma predeterminada. La cantidad máxima de IDs que puedes solicitar es de 1,000.
También puedes designar el space
en el que se pueden usar los IDs y el type
de los elementos para los que se pueden usar los IDs.
Una vez que se genera un ID, se puede pasar al método create
o copy
a través del campo id
. Esto garantiza que el archivo creado o copiado use el ID predeterminado.
Si el archivo se crea o copia correctamente, los reintentos posteriores devuelven una respuesta de código de estado HTTP 409
Conflict
y no se crean archivos duplicados.
Ten en cuenta que no se admiten los IDs generados previamente para la creación de archivos de Google Workspace, excepto para los tipos MIME application/vnd.google-apps.drive-sdk
y application/vnd.google-apps.folder
. Del mismo modo, no se admiten las cargas que hacen referencia a una conversión a un formato de archivo de Google Workspace.
Crea archivos solo con metadatos
Los archivos que solo contienen metadatos no incluyen contenido. Los metadatos son datos (como name
, mimeType
y createdTime
) que describen el archivo. Los campos como name
son independientes del usuario y aparecen de la misma manera para cada usuario, mientras que los campos como viewedByMeTime
contienen valores específicos del usuario.
Un ejemplo de un archivo que solo contiene metadatos es una carpeta con el tipo de MIME application/vnd.google-apps.folder
. Para obtener más información, consulta Crea y completa carpetas. Otro ejemplo es un acceso directo que apunta a otro archivo en Drive con el tipo MIME application/vnd.google-apps.shortcut
. Para obtener más información, consulta Cómo crear un acceso directo a un archivo de Drive.
Administra imágenes en miniatura
Las miniaturas ayudan a los usuarios a identificar los archivos de Drive. Drive puede generar automáticamente miniaturas para los tipos de archivos comunes, o bien puedes proporcionar una imagen de miniatura generada por tu app. Para obtener más información, consulta Cómo subir miniaturas.
Cómo copiar un archivo existente
Para copiar un archivo y aplicar las actualizaciones solicitadas, usa el método copy
en el recurso files
. Para encontrar el fileId
que se copiará, usa el método list
.
Puedes aplicar actualizaciones a través de la semántica de parches, lo que significa que puedes realizar modificaciones parciales en un recurso. En tu solicitud, debes establecer de forma explícita los campos que deseas modificar. Los campos que no se incluyan en la solicitud conservarán sus valores existentes. Para obtener más información, consulta Trabaja con recursos parciales.
Puedes preestablecer el ID del archivo copiado con el método generateIds
. Para obtener más información, consulta Cómo generar IDs para usar con tus archivos.
Ten en cuenta que debes usar un alcance de la API de Drive adecuado para autorizar la llamada. Para obtener más información sobre los permisos de Drive, consulta Elige permisos para la API de Google Drive.
Límites y consideraciones
Mientras te preparas para copiar archivos, ten en cuenta estos límites y consideraciones:
Permisos:
- El objeto
DownloadRestrictionsMetadata
del recursofiles
determina quién puede copiar el archivo. Para obtener más información, consulta Cómo evitar que los usuarios descarguen, impriman o copien tu archivo. - El recurso de campo
capabilities.canCopy
determina si el usuario puede copiar un archivo. Para obtener más información, consulta Información sobre las capacidades de los archivos. - El usuario que creó la copia es el propietario del archivo copiado. No se replican otros parámetros de configuración de uso compartido del archivo fuente. Si la copia se crea en una carpeta compartida, hereda los permisos de esa carpeta.
- Es posible que cambie la propiedad de un archivo copiado y que la copia no herede la configuración de uso compartido del archivo original. Es posible que debas restablecer estos parámetros de configuración.
- El objeto
Administración de archivos:
- Algunos archivos, como los accesos directos de terceros, nunca se pueden copiar.
- Solo puedes copiar un archivo en una carpeta principal. No se admite la especificación de varios elementos principales. Si no se especifica el campo
parents
, el archivo hereda cualquier elemento superior detectable del archivo fuente. - Aunque una carpeta es un tipo de archivo, no puedes copiarla.
En su lugar, crea una carpeta de destino y configura el campo
parents
de los archivos existentes en la carpeta de destino. Luego, puedes borrar la carpeta de origen original. - A menos que se especifique un nombre de archivo nuevo, el método
copy
produce un archivo con el mismo nombre que el original. - El uso excesivo de
copy
puede provocar que se superen los límites de cuota de la API de Drive. Para obtener más información, consulta Límites de uso.
Temas relacionados
Aquí hay algunos pasos que puedes seguir:
Para subir datos de archivos cuando creas o actualizas un archivo, consulta Sube datos de archivos.
Para crear un archivo en una carpeta específica, consulta Cómo crear un archivo en una carpeta específica.
Para mover archivos, consulta Cómo mover archivos entre carpetas.
Para trabajar con metadatos de archivos, consulta Administra metadatos de archivos.
Para borrar un archivo, consulta Cómo enviar archivos y carpetas a la papelera o borrarlos.