Anda dapat mendownload integrasi sebagai file JSON dan menyimpannya di sistem lokal. Akibatnya, seluruh integrasi Anda tersedia dalam file, yang dapat Anda upload langsung di project integrasi lain tanpa modifikasi apa pun. Mengupload integrasi akan membuat versi baru integrasi di project tempat file diupload.
Memiliki seluruh integrasi
dalam format file akan memberi Anda keuntungan berikut:
Anda dapat menyalin integrasi dari satu project ke project lain tanpa banyak usaha.
Anda dapat memperbarui file integrasi secara terprogram untuk perubahan berulang, seperti mengganti nama tugas atau mengubah nama variabel secara dinamis.
Mendownload integrasi
Untuk mendownload integrasi, pilih salah satu opsi berikut:
Mengupload integrasi akan membuat versi baru integrasi di project tempat file diupload. Misalnya, jika Anda memiliki integrasi dengan nama IP-Test di versi 5, dan Anda mengupload file integrasi di IP-Test, versi 6 baru akan dibuat untuk integrasi tersebut.
Jika tidak memiliki integrasi yang dapat digunakan untuk mengupload file, Anda harus membuat integrasi baru terlebih dahulu, lalu menguploadnya. Dalam hal ini, integrasi baru yang Anda buat akan berada di versi 1 dan integrasi yang diupload akan berada di versi 2.
Jika Anda memiliki integrasi yang sudah ada dan ingin diupload, pilih salah satu opsi berikut:
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Sulit dipahami","hardToUnderstand","thumb-down"],["Informasi atau kode contoh salah","incorrectInformationOrSampleCode","thumb-down"],["Informasi/contoh yang saya butuhkan tidak ada","missingTheInformationSamplesINeed","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-08-25 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)."]]