Puedes descargar tus integraciones como un archivo JSON y guardarlas en tu sistema local. Como resultado, toda tu integración está disponible en un archivo, que puedes subir directamente en otro proyecto de integración sin modificaciones. Si subes una integración, se crea una versión nueva de la integración en el proyecto en el que se sube el archivo.
Tener una integración completa en un formato de archivo te brinda las siguientes ventajas:
Puedes copiar tu integración de un proyecto a otro sin mucho esfuerzo.
Puedes actualizar el archivo de integración de manera programática para realizar cambios repetitivos, como el cambio de nombre de las tareas o la modificación dinámica de los nombres de variables.
Descarga una integración
Para descargar una integración, selecciona una de las siguientes opciones:
Si subes una integración, se crea una versión nueva de la integración en el proyecto en el que se sube el archivo. Por ejemplo, si tienes una integración llamada IP-Test en la versión 5 y subes un archivo de integración en IP-Test, se creará una nueva versión 6 para la integración.
Si no tienes una integración existente en la que puedas subir un archivo, primero debes crear una integración nueva y, luego, subirla. En este caso, la integración nueva que crees estará en la versión 1 y la integración subida estará en la versión 2.
Si tienes una integración existente que deseas subir, selecciona una de las siguientes opciones:
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-09-03 (UTC)"],[[["\u003cp\u003eYou can download Application Integrations as JSON files to save them locally, enabling easy transfer and programmatic updates of the integration.\u003c/p\u003e\n"],["\u003cp\u003eUploading a JSON file of an integration will create a new version of that integration within the designated project.\u003c/p\u003e\n"],["\u003cp\u003eDownloading an integration is available via the Google Cloud console's Application Integration page or via an API \u003ccode\u003eGET\u003c/code\u003e request.\u003c/p\u003e\n"],["\u003cp\u003eUploading an integration can be done through the Google Cloud console's Application Integration page or using an API \u003ccode\u003ePOST\u003c/code\u003e request.\u003c/p\u003e\n"],["\u003cp\u003eWhen uploading or downloading an integration, keep in mind authentication profile details are not included in the downloaded file, and must be reconfigured upon upload.\u003c/p\u003e\n"]]],[],null,["# Upload and download integrations\n\nSee the [supported connectors](/integration-connectors/docs/connector-reference-overview) for Application Integration.\n\nUpload and download integrations\n================================\n\nYou can download your integrations as a JSON file and save it in your\nlocal system. As a result, your entire integration is available in a file, which you can directly\nupload in another integration project without any modifications. [Uploading an integration](/application-integration/docs/create-integrations#upload-an-integration) creates\na new version of the integration in the project where the file is uploaded.\nHaving an entire integration in a file format provides you with the following advantages:\n\n- You can copy your integration from one project to another without much effort.\n- You can programmatically update the integration file for repetitive changes, such as renaming of tasks or dynamically modifying variable names.\n\n| **Note:** Details of authentication profiles configured for an integration is not available in the downloaded file. After [uploading the integration file](#upload-an-integration), you must re-configure the authentication profiles in the uploaded integration.\n\nDownload an integration\n-----------------------\n\nTo download an integration, select one of the following optionss:\n\n### Console\n\n1. In the Google Cloud console, go to the **Application Integration** page.\n\n [Go to Application Integration](https://console.cloud.google.com/integrations)\n2. Click **Integrations** from the left navigation menu to open the **Integrations** page.\n3. Select an existing integration. This opens the integration in the *integration editor*.\n4. Click the **Versions** dropdown and select the version you want to download.\n5. In the designer toolbar, click more_vert (Actions menu) and select **Download** .\n\n The \u003cvar translate=\"no\"\u003eINTEGRATION_NAME\u003c/var\u003e.json file is automatically saved in your web browser's default download folder.\n\n| **Note:** The downloaded JSON file will have the structure of [`DownloadIntegrationVersionResponse`](/application-integration/docs/reference/rest/v1/DownloadIntegrationVersionResponse) type. If you modify the JSON file, ensure that the modified file adheres to the `DownloadIntegrationVersionResponse` structure.\n\n### API\n\nTo download an integration, issue a `GET` request to the following API: GET https://integrations.googleapis.com/v1/projects/\\*/locations/\\*/integrations/\\*/versions/\\*:download \n\n```\nhttps://integrations.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/integrations/INTEGRATION_NAME/versions/INTEGRATION_VERSION:download\n```\n\nThe following example shows you how to download a specific version of an integration: \n\n```\ncurl -v -s \\\n-H \"Content-Type: application/json\" -H \"Authorization: Bearer $TOKEN\" \\\n-H \"X-GFE-SSL: yes\" \\\n-X GET \"https://integrations.googleapis.com/v1/projects/demo-project/locations/us-east1/integrations/test-integration/versions/0e90d453-5fcf-4aae-b164-2e8344d1ac11:download\"\n```\n| **Note:** In the previous example, the integration version number is `0e90d453-5fcf-4aae-b164-2e8344d1ac11`. To get the integration version, open the required version of the integration in the UI and copy the auto-generated unique ID string after `../integrations/integration/`\u003cvar translate=\"no\"\u003eINTEGRATION_NAME\u003c/var\u003e`/` from the URL.\n\nFor more information, see [`projects.locations.integrations.versions.download`](/application-integration/docs/reference/rest/v1/projects.locations.integrations.versions/download).\n\nUpload an integration\n---------------------\n\nUploading an integration creates a new version of the integration in the project where the file\nis uploaded. For example, if you have an integration by name `IP-Test` at version 5, and you upload an integration file in `IP-Test`, a new version 6 is created for the integration.\n\nIf you don't have an existing integration in which you can upload a file, you must first create a new integration and then upload. In this case, the new integration you create will be at version 1 and the uploaded integration will be at version 2.\n\n\nIf you have an existing integration that you want to upload, then select one of the following options:\n\n### Console\n\n1. In the Google Cloud console, go to the **Application Integration** page.\n\n [Go to Application Integration](https://console.cloud.google.com/integrations)\n2. Click **Integrations** from the left navigation menu to open the **Integrations** page.\n3. Select an existing integration or create a new integration by clicking **Create integration** .\n\n\n If you are creating a new integration:\n 1. Enter a name and description in the **Create Integration** dialog.\n 2. Select a region for the integration. **Note:** The **Regions** dropdown only lists the regions provisioned in your Google Cloud project. To provision a new region, Click **Enable Region** . See [Enable new region](/application-integration/docs/enable-new-region) for more information.\n 3. Click **Create**.\n\n\n This opens the integration in the *integration editor*.\n4. In the designer toolbar, click more_vert (Actions menu) and select **Upload**.\n5. In the file browser dialog, select the file that you want to upload, and then click **Open** .\n\n A new version of the integration is created using the uploaded file.\n\n### API\n\nTo upload an integration, issue a `POST` request to the following API: \n\n```\n https://integrations.googleapis.com/v1/projects/$YOUR_GOOGLE_PROJECT_ID/locations/$PROJECT_LOCATION/integrations $INTEGRATION_NAME/versions/$INTEGRATION_VERSION}:upload\n \n```\n\nThe following example shows you how to upload an integration: \n\n```\n curl -v -s -H \"Content-Type: application/json\" -H \"Authorization: Bearer $TOKEN\" \\\n -X POST -d '{\"content\": \n \"{\\\"name\\\":\\\"projects/450954726404/locations/us-east1/integrations/test-workflow/versions/0e90d453-5fcf-4aae-b164-2e8344d1ac11\\\",\n \\\"origin\\\":\\\"UI\\\",\n \\\"snapshotNumber\\\":\\\"3\\\",\n \\\"updateTime\\\":\\\"2022-01-06T04:26:58.137Z\\\",\n \\\"lockHolder\\\":\\\"abc@test.com\\\",\n \\\"createTime\\\":\\\"2022-01-06T04:26:42.734Z\\\",\n \\\"lastModifierEmail\\\":\\\"abc@test.com\\\",\n \\\"state\\\":\\\"DRAFT\\\",\n \\\"triggerConfigs\\\":[{\\\"label\\\":\\\"API Trigger\\\",\\\"startTasks\\\":[{\\\"taskId\\\":\\\"1\\\"}],\n \\\"properties\\\":{\\\"Trigger name\\\":\\\"rj-test-workflow_API_1\\\"},\\\"triggerType\\\":\\\"API\\\",\\\"triggerNumber\\\":\\\"1\\\",\\\"triggerId\\\":\\\"api_trigger/rj-test-workflow_API_1\\\"}],\\\"taskConfigs\\\":[{\\\"task\\\":\\\"EmailTask\\\",\\\"taskId\\\":\\\"1\\\",\\\"taskExecutionStrategy\\\":\\\"WHEN_ALL_SUCCEED\\\",\\\"displayName\\\":\\\"Send Email\\\"}]}\"}' \n \\https://integrations.googleapis.com/v1/projects/demo-project/locations/us-east1/integrations/test-integration/versions:upload\n \n```\n\nFor more information, see [`projects.locations.integrations.versions.upload`](/application-integration/docs/reference/rest/v1/projects.locations.integrations.versions/upload).\n\nWhat's next\n-----------\n\n- Learn how to [manage integrations](/application-integration/docs/view-integration-details).\n- Learn how to [test and publish integrations](/application-integration/docs/test-publish-integrations).\n- Learn about [all tasks and triggers](/application-integration/docs/all-triggers-tasks)."]]