Invocar un servicio de Google Cloud mediante un conector
Organízate con las colecciones
Guarda y clasifica el contenido según tus preferencias.
Workflows publica conectores para facilitar el acceso a otrasGoogle Cloud APIs dentro de un flujo de trabajo y para integrar tus flujos de trabajo con esos productos Google Cloud . Por ejemplo, puedes usar conectores para publicar mensajes de Pub/Sub, leer o escribir datos en una base de datos de Firestore o recuperar claves de autenticación de Secret Manager. Para obtener una referencia detallada de los conectores disponibles, consulta la referencia de conectores.
Los conectores simplifican las llamadas a servicios, ya que se encargan de dar formato a las solicitudes, y proporcionan métodos y argumentos para que no tengas que conocer los detalles de una API de Google Cloud . Para obtener más información sobre la autenticación y el comportamiento durante los reintentos y las operaciones de larga duración, consulta Información sobre los conectores.
Invocar una llamada de conector
Al igual que al invocar un endpoint HTTP, una llamada de conector requiere los campos call y args. Puedes especificar un valor de tiempo de espera y una política de sondeo con el bloque connector_params:
CONNECTOR (obligatorio): el método del conector en el formulario googleapis.gcp_service.version.resource.operation. Por ejemplo, googleapis.bigquery.v2.tables.get.
ARG y ARG_VALUE (obligatorios):
cada llamada de conector requiere argumentos diferentes.
KEY y KEY_VALUE (opcional):
campos para proporcionar información a la API.
Parámetros específicos del conector (opcional):
TIMEOUT_IN_SECONDS: tiempo en segundos.
Duración total que se permite que se ejecute la llamada del conector antes de generar una excepción de tiempo de espera. El valor predeterminado es 1800, que debería ser el máximo para los métodos de conectores que no sean operaciones de larga duración.
De lo contrario, en el caso de las operaciones de larga duración, el tiempo de espera máximo de una llamada de conector es de 31536000 segundos (un año).
INITIAL_DELAY_IN_SECONDS: parámetro de política de votación con el valor predeterminado 1.0. Solo se aplica a las llamadas de operaciones de larga duración.
MULTIPLIER_VALUE: parámetro de política de sondeo con el valor predeterminado 1.25. Solo se aplica a las llamadas de operaciones de larga duración.
MAX_DELAY_IN_SECONDS: parámetro de política de sondeo
con el valor predeterminado 60.0. Solo se aplica a las llamadas de operaciones de larga duración.
SKIP_POLLING_SWITCH: si se define como True, la llamada de invocación del conector no se bloquea si la solicitud inicial para gestionar o actualizar el recurso se realiza correctamente (normalmente, HTTP POST, HTTP UPDATE o HTTP DELETE). Si la solicitud inicial no se realiza correctamente, se pueden producir reintentos. El sondeo del estado (HTTP GET solicitudes que siguen a la solicitud inicial) se omite en la operación de larga duración una vez que se completa la solicitud inicial. El valor predeterminado es False.
OAUTH2_SCOPE: permisos de OAuth2 que se deben transferir a la API de Google. Puede ser una cadena, una lista de cadenas, una cadena separada por espacios o una cadena separada por comas.
RESPONSE_VALUE (opcional): nombre de la variable en la que se almacena el resultado de un paso de invocación de llamada de conector.
[[["Es fácil de entender","easyToUnderstand","thumb-up"],["Me ofreció una solución al problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Es difícil de entender","hardToUnderstand","thumb-down"],["La información o el código de muestra no son correctos","incorrectInformationOrSampleCode","thumb-down"],["Me faltan las muestras o la información que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-08-20 (UTC)."],[],[],null,["# Invoke a Google Cloud service using a connector\n\nWorkflows publishes connectors to make it easier to access other\nGoogle Cloud APIs within a workflow, and to integrate your workflows with\nthose Google Cloud products. For example, you can use connectors to\npublish Pub/Sub messages, read or write data to a Firestore\ndatabase, or retrieve authentication keys from Secret Manager. For a\ndetailed reference of available connectors, see the\n[Connectors reference](/workflows/docs/reference/googleapis#list_of_supported_connectors).\n\nConnectors simplify calling services because they handle the formatting of\nrequests for you, providing methods and arguments so that you don't need to know\nthe details of a Google Cloud API. To learn more about authentication,\nand behavior during retries and long-running operations, see\n[Understand connectors](/workflows/docs/connectors).\n| **Note:** API operations that are facilitated by Workflows connectors should not be confused with calling or invoking a Google Cloud service---such as Cloud Run functions or Cloud Run---which is done through an [HTTP request](/workflows/docs/http-requests).\n\nInvoke a connector call\n-----------------------\n\nSimilar to [invoking an HTTP endpoint](/workflows/docs/http-requests),\na connector call requires `call` and `args` fields. You can specify a timeout\nvalue and polling policy using the `connector_params` block: \n\n```yaml\n- STEP_NAME:\n call: CONNECTOR\n args:\n ARG: ARG_VALUE\n [...]\n body:\n KEY:KEY_VALUE\n [...]\n connector_params:\n timeout: TIMEOUT_IN_SECONDS\n polling_policy:\n initial_delay: INITIAL_DELAY_IN_SECONDS\n multiplier: MULTIPLIER_VALUE\n max_delay: MAX_DELAY_IN_SECONDS\n skip_polling: SKIP_POLLING_SWITCH \n scopes: \u003cvar translate=\"no\"\u003e \u003c/var\u003eOAUTH2_SCOPE \n result: RESPONSE_VALUE\n```\n\nReplace the following:\n\n- \u003cvar translate=\"no\"\u003eSTEP_NAME\u003c/var\u003e: the name of the step.\n- \u003cvar translate=\"no\"\u003eCONNECTOR\u003c/var\u003e (required): the connector method in the form `googleapis.gcp_service.version.resource.operation`. For example, `googleapis.bigquery.v2.tables.get`.\n- \u003cvar translate=\"no\"\u003eARG\u003c/var\u003e and \u003cvar translate=\"no\"\u003eARG_VALUE\u003c/var\u003e (required): each connector call requires different arguments.\n- \u003cvar translate=\"no\"\u003eKEY\u003c/var\u003e and \u003cvar translate=\"no\"\u003eKEY_VALUE\u003c/var\u003e (optional): fields to supply input to the API.\n- Connector-specific parameters (optional):\n - \u003cvar translate=\"no\"\u003eTIMEOUT_IN_SECONDS\u003c/var\u003e: time in seconds. The end-to-end duration the connector call is allowed to run for before throwing a timeout exception. The default value is `1800` and this should be the maximum for connector methods that are not long-running operations. Otherwise, for long-running operations, the maximum timeout for a connector call is `31536000` seconds (one year).\n - \u003cvar translate=\"no\"\u003eINITIAL_DELAY_IN_SECONDS\u003c/var\u003e: polling policy parameter with a default value of `1.0`. Only applies to long-running operation calls.\n - \u003cvar translate=\"no\"\u003eMULTIPLIER_VALUE\u003c/var\u003e: polling policy parameter with a default value of `1.25`. Only applies to long-running operation calls.\n - \u003cvar translate=\"no\"\u003eMAX_DELAY_IN_SECONDS\u003c/var\u003e: polling policy parameter with a default value of `60.0`. Only applies to long-running operation calls.\n - \u003cvar translate=\"no\"\u003eSKIP_POLLING_SWITCH\u003c/var\u003e: if set to `True`, the connector invocation call is non-blocking if the initial request to manage or update the resource succeeds (usually `HTTP POST`, `HTTP UPDATE`, or `HTTP DELETE`). If the initial request is not successful, retries might occur. Polling of status (`HTTP GET` requests that follow the initial request) is skipped for the long-running operation after the initial request completes. The default value is `False`.\n - \u003cvar translate=\"no\"\u003eOAUTH2_SCOPE\u003c/var\u003e: OAuth2 scopes to pass to the Google API. Can be a string, list of strings, space-separated string, or comma-separated string.\n- \u003cvar translate=\"no\"\u003eRESPONSE_VALUE\u003c/var\u003e (optional): variable name where the result of a connector call invocation step is stored.\n\n### Example\n\nThe following workflow demonstrates using both the\n[Cloud Storage API connector](/workflows/docs/reference/googleapis/storage/Overview)\nand the\n[Cloud Translation API connector](/workflows/docs/reference/googleapis/translate/Overview)\nto translate two files to French and Spanish, saving the results in a\nCloud Storage bucket. \n\n main:\n steps:\n - init:\n assign:\n - projectId: ${sys.get_env(\"GOOGLE_CLOUD_PROJECT_ID\")}\n - location: ${sys.get_env(\"GOOGLE_CLOUD_LOCATION\")}\n - inputBucketName: ${projectId + \"-input-files\"}\n - outputBucketName: ${projectId + \"-output-files-\" + string(int(sys.now()))}\n - createOutputBucket:\n call: googleapis.storage.v1.buckets.insert\n args:\n project: ${projectId}\n body:\n name: ${outputBucketName}\n - batchTranslateText:\n call: googleapis.translate.v3beta1.projects.locations.batchTranslateText\n args:\n parent: ${\"projects/\" + projectId + \"/locations/\" + location}\n body:\n inputConfigs:\n gcsSource:\n inputUri: ${\"gs://\" + inputBucketName + \"/*\"}\n outputConfig:\n gcsDestination:\n outputUriPrefix: ${\"gs://\" + outputBucketName + \"/\"}\n sourceLanguageCode: \"en\"\n targetLanguageCodes: [\"es\", \"fr\"]\n result: batchTranslateTextResult\n\nWhat's next\n-----------\n\n- [Tutorial: Run a batch translation using the Cloud Translation connector](/workflows/docs/tutorials/translation-connector)"]]