En esta guía, se presentan conceptos como los métodos principales que componen la API de Google Docs, cómo acceder a un documento y el flujo de trabajo para crear un documento.
Métodos de la API
El recurso documents
proporciona métodos que se usan para invocar la API de Docs. Los siguientes métodos te permiten crear, leer y actualizar documentos de Documentos:
- Usa el método
documents.create
para crear un documento. - Usa el método
documents.get
para recuperar el contenido de un documento especificado. - Usa el método
documents.batchUpdate
para realizar de forma atómica un conjunto de actualizaciones en un documento especificado.
Los métodos documents.get
y documents.batchUpdate
requieren un documentId
como parámetro para especificar el documento de destino. El método documents.create
devuelve una instancia del documento creado, desde la que puedes leer el documentId
. Para obtener más información sobre los métodos de solicitud y respuesta de la API de Docs, consulta Solicitudes y respuestas.
ID de documento
El documentId
es el identificador único del documento y se puede derivar de la URL del documento. Es una cadena específica que contiene letras, números y algunos caracteres especiales. Los IDs de documento son estables, incluso si cambia el nombre del documento.
https://docs.google.com/document/d/DOCUMENT_ID/edit
Se puede usar la siguiente expresión regular para extraer el documentId
de una URL de Documentos de Google:
/document/d/([a-zA-Z0-9-_]+)
Si conoces la API de Google Drive, documentId
corresponde a id
en el recurso files
.
Administra tus documentos en Google Drive.
Los archivos de Documentos se almacenan en Google Drive, nuestro servicio de almacenamiento basado en la nube. Si bien la API de Docs tiene sus propios métodos independientes, a menudo es necesario usar también los métodos de la API de Google Drive para interactuar con los archivos de Documentos de un usuario. Por ejemplo, para copiar archivos de Documentos, usa el método files.copy
de la API de Drive. Para obtener más información, consulta Cómo copiar un documento existente.
De forma predeterminada, cuando se usa la API de Docs, se guarda un documento nuevo en la carpeta raíz del usuario en Drive. Existen opciones para guardar un archivo en una carpeta de Drive. Para obtener más información, consulta Cómo trabajar con carpetas de Google Drive.
Trabaja con archivos de Documentos
Para recuperar un documento de Mi unidad de un usuario, a menudo es necesario usar primero el método files.list
de Drive para recuperar el ID de un archivo. Si llamas al método sin parámetros, se mostrará una lista de todos los archivos y las carpetas del usuario, incluidos los IDs.
El tipo de MIME de un documento indica el tipo y el formato de los datos. El formato del tipo de MIME para Documentos es application/vnd.google-apps.document
. Para obtener una lista de los tipos de MIME, consulta Tipos de MIME compatibles con Google Workspace y Google Drive.
Para buscar solo archivos de Documentos por tipo de MIME en Mi unidad, agrega el siguiente filtro de cadena de búsqueda:
q: mimeType = 'application/vnd.google-apps.document'
Para obtener más información sobre los filtros de cadenas de búsqueda, consulta Cómo buscar archivos y carpetas.
Una vez que conozcas el documentId
, usa el método documents.get
para recuperar una instancia completa del documento especificado. Para obtener más información, consulta Solicitudes y respuestas.
Para exportar el contenido de bytes de un documento de Google Workspace, usa el método files.export
de Drive con el documentId
del archivo que se exportará y el tipo de MIME de exportación correcto. Para obtener más información, consulta Cómo exportar contenido de documentos de Google Workspace.
Compara los métodos Get
y List
En la siguiente tabla, se describen las diferencias entre los métodos de Drive y Documentos, y los datos que se devuelven con cada uno:
Operador | Descripción | Uso |
---|---|---|
drive.files.get |
Obtiene los metadatos de un archivo por ID. Devuelve una instancia del recurso files . |
Obtiene los metadatos de un archivo específico. |
drive.files.list |
Obtiene los archivos de un usuario. Devuelve una lista de archivos. | Obtén una lista de los archivos del usuario cuando no sepas qué archivo debes modificar. |
docs.documents.get |
Obtiene la versión más reciente del documento especificado, incluido todo el formato y el texto. Devuelve una instancia del recurso documents . |
Obtén el documento para un ID de documento específico. |
Flujo de trabajo de creación de documentos
Crear y completar un documento nuevo es sencillo, ya que no hay contenido existente del que preocuparse ni colaboradores que puedan alterar el estado del documento. Conceptualmente, esto funciona como se muestra en el siguiente diagrama de secuencia:
En la Figura 1, un usuario que interactúa con el recurso documents
tiene el siguiente flujo de información:
- Una app llama al método
documents.create
en un servidor web. - El servidor web envía una respuesta HTTP que contiene una instancia del documento creado como un recurso
documents
. - De manera opcional, la app llama al método
documents.batchUpdate
para realizar de forma atómica un conjunto de solicitudes de edición para completar el documento con datos. - El servidor web envía una respuesta HTTP. Algunos métodos
documents.batchUpdate
proporcionan un cuerpo de respuesta con información sobre las solicitudes aplicadas, mientras que otros muestran una respuesta vacía.
Flujo de trabajo de actualización de documentos
Actualizar un documento existente es más complejo. Antes de realizar llamadas significativas para actualizar un documento, debes conocer su estado actual: qué elementos lo componen, qué contenido hay en esos elementos y el orden de los elementos dentro del documento. En el siguiente diagrama de secuencia, se muestra cómo funciona:
En la Figura 2, un usuario que interactúa con el recurso documents
tiene el siguiente flujo de información:
- Una app llama al método
documents.get
en un servidor web, con eldocumentId
del archivo que se debe encontrar. - El servidor web envía una respuesta HTTP que contiene una instancia del documento especificado como un recurso
documents
. El JSON que se devuelve contiene el contenido, el formato y otras características del documento. - La app analiza el JSON para que el usuario pueda determinar qué contenido o formato actualizar.
- La app llama al método
documents.batchUpdate
para realizar de forma atómica un conjunto de solicitudes de edición para actualizar el documento. - El servidor web envía una respuesta HTTP. Algunos métodos
documents.batchUpdate
proporcionan un cuerpo de respuesta con información sobre las solicitudes aplicadas, mientras que otros muestran una respuesta vacía.
Este diagrama no tiene en cuenta los flujos de trabajo en los que otros colaboradores realizan actualizaciones simultáneas en el mismo documento. Para obtener más información, consulta la sección de prácticas recomendadas Planifica la colaboración.
Temas relacionados
- Estructura de un documento de Documentos de Google
- Solicitudes y respuestas
- Reglas y comportamiento de la edición estructural
- Prácticas recomendadas para obtener los mejores resultados