Los servicios avanzados de Apps Script permiten que los desarrolladores experimentados se conecten ciertas APIs públicas de Google con menos configuración que cuando usan sus interfaces HTTP. Los servicios avanzados son, en esencia, wrappers delgados en torno a esas APIs de Google. Ellas funciona de forma muy parecida a la de Apps Script servicios integrados, por ejemplo, ofrecen Autocompletar, y Apps Script se encarga de el flujo de autorización automáticamente. Sin embargo, debes habilitar un servicio avanzado antes puedes usarlo en un guion.
Para ver qué APIs de Google están disponibles como servicios avanzados, busca la Sección Servicios avanzados de Google en Referencia: Si quieres usar una API de Google que no está disponible como servicio avanzado, solo conéctate a él como a cualquier otro API externa.
¿Servicios avanzados o HTTP?
Cada uno de los servicios avanzados de Google está asociado con una API pública de Google.
En Apps Script, puedes acceder a estas APIs a través de servicios avanzados o simplemente
realizar las solicitudes a la API directamente con
UrlFetch
Si usas el método de servicio avanzado, Apps Script se encarga de las el flujo de autorización y las ofertas autocompletar. Sin embargo, debes habilitar el servicio avanzado antes de usarlo que la modifica. Además, algunos servicios avanzados solo proporcionan un subconjunto y la funcionalidad disponible en la API.
Si usas el método UrlFetch
para acceder directamente a la API, tienes lo siguiente:
básicamente, trata a la API de Google como un
API externa. Con este método, todas
diferentes aspectos de la API. Sin embargo, requiere que manejes la API
autorización por tu cuenta. También debes construir cualquier encabezado necesario y analizar
las respuestas de la API.
En general, es más fácil
usar un servicio avanzado siempre que sea posible
Usa el método UrlFetch
cuando el servicio avanzado no proporcione la
la funcionalidad que necesitas.
Requisitos
Para poder usar un servicio avanzado, debes cumplir con los siguientes requisitos: requisitos:
- Debes habilitar el servicio avanzado. en tu proyecto de secuencia de comandos.
Debes asegurarte de que esté habilitada la API correspondiente al servicio avanzado en el proyecto de Cloud Platform (GCP) usa tu guion.
Si tu proyecto de secuencia de comandos usa un proyecto de GCP predeterminado creada a partir del 8 de abril de 2019, la API se habilita automáticamente después de habilitar el servicio avanzado y guardar el proyecto de la secuencia de comandos. Si que todavía no lo has hecho, también puedes se le solicitó aceptar los Términos y condiciones de Google Cloud y las Condiciones del Servicio de las APIs de Google.
Si tu proyecto de secuencia de comandos utiliza un proyecto estándar de GCP o un proyecto predeterminado de GCP más antiguo, Debes habilitar la API correspondiente del servicio avanzado en el proyecto de GCP de forma manual. Debes tener acceso de edición al proyecto de GCP para hacer este cambio.
Consulta Proyectos de Cloud Platform para obtener más información.
Habilitar servicios avanzados
Para usar un servicio avanzado de Google, sigue estas instrucciones:
- Abre el proyecto Apps Script.
- A la izquierda, haz clic en Editor .
- A la izquierda, junto a Servicios, haz clic en Agregar un servicio.
- Selecciona un servicio avanzado de Google y haz clic en Agregar.
Una vez que habilites un servicio avanzado, estará disponible en el autocompletado.
Cómo se determinan las firmas de métodos
Por lo general, los servicios avanzados usan los mismos objetos, nombres de métodos y parámetros. que las APIs públicas correspondientes, aunque las firmas de métodos se traducen para usar en Apps Script. La vista del editor de secuencias de comandos función autocompletar generalmente proporciona suficiente información para comenzar, pero las reglas que aparecen a continuación explican cómo Apps Script genera una firma de método a partir de una API pública de Google
Las solicitudes a las APIs de Google aceptan una variedad de tipos de datos incluidos los parámetros de ruta de acceso, los parámetros de consulta, el cuerpo de una solicitud o un elemento multimedia Subir archivo adjunto Algunos servicios avanzados también pueden aceptar solicitudes HTTP específicas encabezados (por ejemplo, el Servicio avanzado de Calendario).
La firma de método correspondiente en Google Apps Script tiene lo siguiente argumentos:
- Cuerpo de la solicitud (por lo general, un recurso), como un objeto de JavaScript
- Ruta de acceso o parámetros obligatorios, como argumentos individuales.
- El archivo adjunto de carga de archivos multimedia, como
Blob
argumento. - Parámetros opcionales, como un objeto JavaScript que asigna nombres de parámetros a de salida.
- Encabezados de la solicitud HTTP, como un objeto de JavaScript que asigna nombres de encabezado al encabezado de salida.
Si el método no tiene ningún elemento en una categoría determinada, esa parte del firma del proveedor.
Existen algunas excepciones especiales que debes tener en cuenta:
- Para los métodos que aceptan una carga de contenido multimedia, se establece el parámetro
uploadType
. automáticamente. - Los métodos llamados
delete
en la API de Google se denominanremove
en Apps Script. ya quedelete
es una palabra reservada en JavaScript. - Si se configura un servicio avanzado para aceptar encabezados de solicitud HTTP establece un objeto de encabezados de solicitud de JavaScript, luego, también debes establecer el de parámetros de JavaScript (a un objeto vacío si no usas parámetros opcionales).
Asistencia para servicios avanzados
Los servicios avanzados son solo wrappers delgados que permiten usar un bucket de Google APIs dentro de Apps Script. Por lo tanto, cualquier problema que se encuentre al usarlos suele ser un problema con la API subyacente, no con Apps Script.
Si encuentras un problema mientras usas un servicio avanzado, debería ser informadas con las instrucciones de asistencia de la API subyacente. Vínculos a estas se proporcionan instrucciones de asistencia en cada guía de servicio avanzado en la Sección Referencia de Apps Script.