跳到正文
cccskills
Google 官方免费在 GitHub 公开中文介绍

application-integration-basics

了解 Google Cloud Application Integration 的工作流、项目初始化、区域配置、IAM 与运行身份账号,并比较操作接口及平台配额和执行限制。

原文查看原文说明

Explains Google Cloud Application Integration concepts, region provisioning, IAM roles, run-as service accounts, interface choices (REST, Python discovery client, Terraform, ADK), and platform limits. Use when setting up Application Integration in a Google Cloud project, enabling required APIs, provisioning a region, configuring IAM or run-as service accounts, choosing between Application Integration and custom code, or checking quotas and timeouts. Do not use for building, publishing, or invoking integrations (use application-integration-authoring) or diagnosing failed or stuck runs and logs (use application-integration-troubleshooting).

google/skills星标 21,674(GitHub 21,674 + cccskills 0)

实测评分 未实测

查看安装方法

适用场景

  • 在新项目中准备集成平台
  • 确认区域设置和所需 IAM 权限
  • 比较可用的管理接口
  • 检查配额和执行限制

中文介绍

功能

本技能介绍 Google Cloud Application Integration 的基本概念,以及在项目中开始使用它所需的准备工作。它说明由触发器、任务和数据映射组成的工作流,并指导你启用所需 API、配置区域,以及设置 IAM 角色和运行身份服务账号。资料还比较 REST API、Python discovery client、Terraform、ADK 和 Cloud Console 的用途,帮助你根据需求选择操作方式。此外,它涵盖执行时间、数据量和并发数等限制,可用于判断某项工作流适合使用 Application Integration 还是自定义代码。

适用场景

在新的 Google Cloud 项目中搭建集成平台、确认所需权限或认证方式时,可以使用本技能。它也适用于在开始构建前了解 API 和配额条件,以及确认 Terraform 能管理哪些配置。

使用示例

  • “请整理这个项目使用 Application Integration 前需要做的准备。”
  • “请说明区域配置和所需的 IAM 角色。”
  • “这项工作更适合 Application Integration 还是 Cloud Run?”

注意事项

使用该服务需要 Google Cloud 项目和结算账号。启用 API、创建区域、修改 IAM、安装软件包或更改 gcloud 配置都会改变状态;执行前应向用户展示具体操作并取得确认。

本介绍由 AI(OpenAI Codex)根据公开的 SKILL.md 撰写。准确的规格请查看下方原文。

文档检查

AI 根据 SKILL.md 的内容检查了需要注意的操作和使用前提。评分只依据实际运行的结果(实测对比)。

安全性发送数据、删除文件、执行命令等是否有说明
A良好资料要求对状态变更先展示具体操作并取得用户确认。
安装难易度所需工具和 API 密钥是否少且有说明
B部分不足需要项目和结算账号,并涉及认证方式及软件包安装。

不计入评分。 由 AI(OpenAI Codex)于 2026年10月28日 评估。仅供参考,安装前请同时查看原文。

如果您认为评估有误,请申请复核

请写明哪一项有误以及原因。无需登录。我们会对照 SKILL.md 重新评估,并在此处更新结果。

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

包含的文件(7)

  • SKILL.md22.6 KB
  • references/api-access.md11.5 KB
  • references/attribution.md5.0 KB
  • references/core-concepts.md13.8 KB
  • references/iam-and-service-accounts.md14.8 KB
  • references/limits.md6.3 KB
  • references/provisioning-and-terraform.md8.3 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Application Integration Basics

Application Integration is Google Cloud's serverless, auto-scaling Integration-Platform-as-a-Service (iPaaS) for connecting Google Cloud services and third-party SaaS applications. It runs event-driven workflows made of triggers, tasks, data mappings, and Integration Connectors connections without requiring you to manage servers. Use this skill to decide whether Application Integration fits a workload, set up a project and region, configure IAM and run-as service accounts, choose the right API or tool interface, and design around platform limits.

Attribution

MUST READ: Before executing any gcloud command, REST API call, or Python discovery-client call, you MUST read Usage Attribution. For commands executed directly in the terminal (never in generated scripts, Terraform, ADK agents, or user code), prefix gcloud with CLOUDSDK_METRICS_REQUEST_ATTRIBUTION="agent-skills/1.0 (skill:application-integration-basics)" and add agent-skills/1.0 (skill:application-integration-basics) to the User-Agent header of curl requests.

When to Use Application Integration vs. Custom Glue Code

Choose Application Integration when...Choose custom code (Cloud Run / Cloud Functions) when...
Connecting SaaS apps (CRM, ERP, databases, Google Cloud services) via prebuilt Integration Connectors.You need sub-second latency or custom binary protocols.
Orchestrating event-driven workflows from API, Pub/Sub, Cloud Scheduler, Salesforce, or Connector Event triggers.Total workflow data exceeds 30 MB (or 8 MB for API trigger inputs and Connector payloads).
Transforming JSON/array data visually with Data Mapping or Jsonnet without deploying containers.Synchronous runs take longer than 2 minutes or asynchronous runs take longer than 10 minutes.
Pausing workflows for human review (Approval or Suspend tasks up to 31 days).You must call VPC-only HTTP endpoints directly without Private Service Connect connectors (Call REST Endpoint reaches the public internet only).
Exposing enterprise workflows or connectors as tools to AI agents via ADK ApplicationIntegrationToolset.You need arbitrary language packages or heavy in-memory compute beyond JavaScript (V8) or Jsonnet tasks.

Safety and Confirmation Rules

  • Read-only checks run freely: You may run gcloud services list, gcloud projects get-iam-policy, and HTTP GET calls to https://integrations.googleapis.com/v1/... or https://connectors.googleapis.com/v1/... without asking first.
  • Require explicit user confirmation before any state change: Always show the exact command or request payload and wait for user approval before:
    • Enabling APIs (gcloud services enable).
    • Provisioning a region (clients:provision or terraform apply on google_integrations_client), especially with Customer-Managed Encryption Keys (CMEK), because enabling CMEK for a region cannot be undone.
    • Modifying IAM policies (gcloud projects add-iam-policy-binding or gcloud iam service-accounts add-iam-policy-binding).
    • Creating, uploading, publishing, unpublishing, executing, testing, or deleting any integration, version, auth profile, or connection.
  • Never bundle destructive scripts that delete integrations, versions, auth profiles, or connections unattended.
  • Host changes require approval. Before installing packages (pip install) or changing global gcloud or credential state (gcloud config set ... such as auth/impersonate_service_account, gcloud auth application-default login / set-quota-project), show the exact command and wait for the user's approval.

Choosing the Interface

Application Integration has no gcloud integrations command group (and no gcloud connectors command group), and no Google-managed remote MCP server. The REST API is the primary control and execution interface.

InterfaceWhat it coversAuthentication
REST API (curl)Full v1 surface: region provisioning, integrations, versions, download/upload, publish, execute, schedule, executions, suspensions, authConfigs, templates.Authorization: Bearer $(gcloud auth print-access-token)
Python discovery clientFull v1 surface via googleapiclient.discovery.build("integrations", "v1") (and v2 via build("integrations", "v2"); no dedicated Cloud Client Library exists). Install with pip install "google-api-python-client>=2.100.0,<3" "google-auth>=2.20.0,<3" (changes host or credential state; get the user's approval first).Application Default Credentials (gcloud auth application-default login) (changes host or credential state; get the user's approval first)
Terraform (hashicorp/google)Infrastructure only: google_integrations_client (region setup), google_integrations_auth_config, and google_integration_connectors_*. Does not manage integration workflow versions.ADC or Terraform provider credentials
ADK (ApplicationIntegrationToolset)Exposes published API-trigger integrations or Integration Connectors actions/entities as tools for ADK agents (Python v0.1.0+, Java v0.3.0+).ADC (gcloud auth application-default login) (changes host or credential state; get the user's approval first) or service account JSON
Cloud consoleVisual drag-and-drop editor, Quick/Advanced region setup, Approval task resolution, OAuth 2.0 authorization code consent flow.Browser Google Cloud sign-in
  • Use gcloud only for generic Google Cloud tasks: enabling APIs (gcloud services enable), printing access tokens (gcloud auth print-access-token), managing IAM, and reading Cloud Logging (gcloud logging read).
  • Integration Connectors includes an outbound MCP connector (MCP v1 and v2) that lets a workflow call an external MCP server as a connector target; this is an outbound connector, not a Google-managed MCP server for controlling Application Integration.
  • Always use the global endpoint https://integrations.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/... consistently for REST calls.
  • Note on draft testing (integrations:test): Although POST .../integrations/INTEGRATION_NAME:test exists in the v1 REST API, its required TestIntegrationsRequest.clientId value is not publicly documented, so do not invent one; test integrations by publishing to a non-production project and calling :execute.
  • See references/api-access.md for authentication setup, curl commands, Python discovery client patterns, and ADK ApplicationIntegrationToolset configuration.

Step-by-Step Region Setup Workflow

Application Integration is regional: confirm the target region is supported on Application Integration locations and use us-central1 as a well-supported default when the user has no preference. The region is the LOCATION in every REST path; no gcloud default-region setting applies to Application Integration. Provisioning is per region. Provisioning us-central1 does not provision europe-west1; repeat region provisioning for every LOCATION you use in PROJECT_ID. Ensure an active billing account is attached to PROJECT_ID before setup—an active billing account is required even when usage stays within the monthly free tier (see the Application Integration pricing page).

1. Check and enable required APIs

First check which APIs are already enabled (read-only):

gcloud services list --enabled --project=PROJECT_ID \
  --filter="config.name:(integrations.googleapis.com OR connectors.googleapis.com OR secretmanager.googleapis.com OR cloudkms.googleapis.com)"

After getting user confirmation, enable the required APIs (add cloudkms.googleapis.com only if configuring CMEK):

gcloud services enable \
  integrations.googleapis.com \
  connectors.googleapis.com \
  secretmanager.googleapis.com \
  --project=PROJECT_ID

2. Verify setup IAM roles on the caller

Setting up Application Integration requires roles/integrations.integrationAdmin, roles/connectors.admin, and roles/editor (plus roles/cloudkms.admin for CMEK). Check current bindings (read-only):

gcloud projects get-iam-policy PROJECT_ID --format=json

3. Provision the region (LOCATION)

Choose one of the three supported paths after getting user confirmation:

  • Option A: REST (clients:provision)

    curl -X POST \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      -d '{}' \
      "https://integrations.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/clients:provision"
    

    The response is {} when provisioning succeeds (clients:provision does not apply runAsServiceAccount; set the run-as identity on each integration version via IntegrationVersion.runAsServiceAccount). {} is also returned when the region is already provisioned; the call does not change an existing region's settings. Change HTTP calls or encryption on an existing region from the console's Regions page (when the region is already ACTIVE, cloudKmsConfig, enableHttpCall, and enableManagedAiFeatures on clients:provision are not applied). If PROJECT_ID was already registered through Apigee Integration, provisioning fails.

  • Option B: Cloud console Open https://console.cloud.google.com/integrations, select LOCATION, and click Quick setup (enables the APIs, creates the default service account, and uses Google-managed encryption) or Advanced setup (to configure CMEK, HTTP calls, AI features, governance, or variable masking). To add another region later, go to Regions > Provision new region.

  • Option C: Terraform (google_integrations_client) Use the google_integrations_client resource in hashicorp/google. Do not set run_as_service_account on google_integrations_client—that argument was removed in provider v8.0.0 (August 26, 2026), and it mapped to the clients:provision runAsServiceAccount field, which is likewise not applied; set the run-as identity on each integration version (IntegrationVersion.runAsServiceAccount) instead.

4. Sanity-check region access

Run a read-only list call against the region; a successful 200 OK response is a good sign that the API is reachable in LOCATION:

curl -sS -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  "https://integrations.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/integrations"

See references/provisioning-and-terraform.md for all ProvisionClientRequest fields, CMEK and governance options, and complete Terraform examples.

Core Concepts at a Glance

  • Integrations and Triggers: An integration is a workflow started by one or more triggers. Synchronous runs (SYNC) wait for completion and return output (integrations.execute, console test, sync Call Integration). Asynchronous runs (ASYNC) are fire-and-forget (integrations.schedule, Schedule, Cloud Scheduler, Cloud Pub/Sub, Salesforce triggers, and runs resumed after a suspension or approval).
  • Tasks: Units of work chained after a trigger (such as Data Mapping, Call REST Endpoint, Connectors, JavaScript on V8, Cloud Function, Approval, Suspend, Timer, loops, and Call Integration).
  • Versions and Edit Locks: Only a DRAFT version can be edited (locked to its author for 15 minutes after the last update). Only an ACTIVE (published) version runs from triggers. Publishing a version automatically unpublishes the prior active version and cancels any suspended executions of that prior version. Unpublishing moves an active version to SNAPSHOT (PREVIOUSLY_PUBLISHED). Calling versions.delete soft-deletes a version into ARCHIVED (listed as DELETED on the Integration versions documentation page).
  • Variables:
    • Integration variables: Explicit inputs (IN), outputs (OUT), IN_OUT, or internal variables with IN_OUT_TYPE_UNSPECIFIED ($varName$).
    • Task variables: Auto-generated task outputs named `Task_<taskId>_<variableName>` where taskId is the bare task number in taskConfigs[].taskId (for example, taskId "1" -> $`Task_1_responseBody`$).
    • System variables: keys are backtick-wrapped (`ExecutionId`, `ExecutionMode`, `ErrorInfo` [message, code], `IntegrationName`, `Region`, `ProjectId`); reference them as $`ExecutionId`$ (a bare $ExecutionId$ names a nonexistent integration variable and fails).
    • Config variables (Preview): Environment-specific values defined in integrationConfigParameters (with defaults in parameter.defaultValue; a top-level value on a draft is discarded) and supplied per environment in configParameters at publish time (named `CONFIG_<NAME>`; keys in configParameters must exactly match a key in integrationConfigParameters, backticks included, such as "`CONFIG_target_url`", because unknown keys are silently ignored—publish returns 200 and the default stays). Never store secrets in config variables—they are exported in plain text. Use an authentication profile (authConfigs) or the Secret Manager task instead.
  • Suspensions: Suspend tasks pause up to 31 days and are resumed via the Suspensions API (suspensions:lift, with an optional suspensionResult, requiring integrations.suspensions.lift). Approval tasks email approvers and can be approved or rejected in the Cloud console UI or via suspensions:resolve (state: "LIFTED" or "REJECTED", requiring integrations.suspensions.resolve). Listing suspensions (suspensions.list) requires integrations.suspensions.list. All three permissions are included in roles/integrations.suspensionResolver (and roles/integrations.integrationAdmin), and resuming also requires roles/iam.serviceAccountUser on the integration's run-as service account; always confirm with the user before lifting or resolving. Timer tasks resume automatically.
  • Authentication Profiles (authConfigs): Reusable regional credential records (projects/PROJECT_ID/locations/LOCATION/authConfigs/AUTH_CONFIG_ID). They are not included when downloading an integration version.

See references/core-concepts.md for full details on version states, trigger types, task categories, variables, suspensions, and authentication profiles.

IAM and the Run-As Service Account Requirement

Key IAM roles and service agents

  • Developer & operator roles: roles/integrations.integrationAdmin (full CRUD + delete auth profiles), roles/integrations.integrationEditor (create/upload/edit/test/invoke/cancel/replay/publish, including integrations.integrationVersions.create and integrations.integrationVersions.deploy), roles/integrations.integrationDeployer (publish/unpublish via integrations.integrationVersions.deploy; holds list/get/deploy but not create, so it can publish an existing version but cannot upload), roles/integrations.integrationInvoker (invoke/cancel/replay), roles/integrations.integrationViewer (view integrations and logs), and roles/integrations.suspensionResolver (list, lift, and resolve suspensions: integrations.suspensions.list, integrations.suspensions.lift, integrations.suspensions.resolve; suspensionResolver alone cannot read execution records, so also grant roles/integrations.integrationViewer to inspect taskExecutionDetails or run :troubleshoot, or use the approval email link, which carries the execution and task IDs).
  • Service agents:
    • Application Integration service agent: service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com (granted roles/integrations.serviceAgent).
    • Integration Connectors service agent: service-PROJECT_NUMBER@gcp-sa-connectors.iam.gserviceaccount.com (granted roles/connectors.serviceAgent).

Mandatory run-as service account rules (effective October 15, 2026)

  1. Explicit identity required: For integrations created on or after October 15, 2026 (and for existing integrations at a later date), every run needs an explicit identity—either the triggering caller or a user-managed run-as service account set per integration version via IntegrationVersion.runAsServiceAccount (region provisioning via clients:provision does not apply runAsServiceAccount).
  2. Triggers other than API or Private require a run-as service account: Integrations created on or after October 15, 2026 with any trigger other than an API or Private trigger (for example Schedule, Cloud Scheduler, Cloud Pub/Sub, Eventarc, Salesforce, or Connector Event) cannot be tested or published unless runAsServiceAccount is set. Private triggers are exempt like API triggers, so a sub-integration whose only trigger is Private can be published without runAsServiceAccount.
  3. Region governance: If governance is enabled on the region, a run-as service account is mandatory for every new integration and version, including API-trigger integrations.
  4. Service Account User (roles/iam.serviceAccountUser): Whenever runAsServiceAccount is set on a version, the user (or principal) publishing or testing the version must hold roles/iam.serviceAccountUser on that service account (or its owning project). At runtime, the invoking caller or trigger service account—and anyone resolving or lifting a suspension—must also hold roles/iam.serviceAccountUser on it.
  5. Best practice: Create one dedicated, minimally scoped user-managed service account per integration. When runAsServiceAccount is set and no task-level auth profile is set, it mints tokens for Connector, Call REST Endpoint, and Cloud Function tasks (an OAuth 2.0 or OIDC auth profile on a task takes precedence over runAsServiceAccount).

See references/iam-and-service-accounts.md for the complete IAM role tables, service agent permissions, credential precedence rules, and gcloud IAM commands.

Key Quotas and Limits to Design Around

LimitValueDesign impact
SYNC execution timeout2 minutesUse async triggers or integrations.schedule for workflows exceeding 2 minutes; timed-out sync runs become CANCELLED.
ASYNC execution timeout10 minutesSplit heavy work into sub-integrations or external jobs if a single async run exceeds 10 minutes.
Max execution lifetime31 daysIncludes time paused in Approval or Suspend tasks (max 44,640 minutes).
Total integration data30 MBShared across input/output variables and private-trigger sub-integrations. Above 10 MB, local logging is disabled, retries stop working, and monitoring skips the run.
API trigger input size8 MBCumulative size across all input variables; larger payloads fail before the workflow starts.
Connectors data & timeout8 MB in/out; 3 min timeoutApplication Integration quotas cap cumulative data sent to/from connections at 8 MB and connector response at 20 MB (Integration Connectors quotas cap the Connectors task payload at 10 MB); custom queries cap at 180 seconds and 50,000 rows.
Concurrent executions50 per project per region; 10 per integration (defaults)Both concurrency caps are adjustable; a burst on a single integration hits the 10-per-integration cap, not 50. The execution request rate quota is shown on the project's Cloud Quotas page and can be adjusted there.
Integrations / tasks / versions1,000 / 100 / 100Up to 1,000 integrations per project, 100 tasks per integration, and 100 versions per integration.
Publish propagationUp to 10 minutesEventual consistency: an older version can keep running for up to 10 minutes after publishing a new version.

See references/limits.md for all task-specific payload caps, loop iteration limits, Integration Connectors node limits, and pricing details.

Sibling Skills

  • application-integration-basics (this skill): Concepts, API enablement, region provisioning, IAM roles and run-as service accounts, interface choices (REST, Python client, Terraform, ADK), and quotas/limits.
  • application-integration-authoring: Building, uploading, versioning, config variables, publishing, executing, and testing integrations via the REST API; trigger IDs; task gotchas; and CI/CD promotion across projects with download/upload.
  • application-integration-troubleshooting: Diagnosing failed or stuck executions, checking execution and task states and ErrorInfo, listing and filtering executions, Cloud Logging and Cloud Monitoring, suspensions and approvals, Integration Connectors connection health, and IAM / run-as / quota errors.

Reference Files

  • references/attribution.md: Usage attribution for gcloud CLI commands, direct curl REST calls, and Python discovery-client snippets run in the terminal.
  • references/core-concepts.md: Triggers, execution modes, task types, version lifecycle, edit locks, variables, suspensions, and authentication profiles.
  • references/iam-and-service-accounts.md: Predefined IAM roles for Application Integration and Integration Connectors, service agents, run-as service account rules, and IAM commands.
  • references/provisioning-and-terraform.md: Per-region provisioning via REST clients:provision, Cloud console Quick/Advanced setup, CMEK caveats, and Terraform google_integrations_* / google_integration_connectors_* resources.
  • references/api-access.md: Endpoints, authentication, curl examples, Python google-api-python-client discovery patterns, ADK ApplicationIntegrationToolset, and MCP connector clarification.
  • references/limits.md: Timeouts, payload caps, concurrency quotas, loop/task limits, Integration Connectors limits, and pricing tiers.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

agent-platform-alert-configuration

Google 官方免费有简介

为 AI 代理创建 Terraform 告警配置,监控延迟、错误、令牌用量、安全信号和响应质量。先检查遥测数据与现有策略、避免重复并验证配置;质量告警需要 Vertex AI。

  • 监控代理延迟和错误率
  • 告警令牌用量突然增加
  • 跟踪安全触发和权限拒绝
google/skills2.2万2026年10月28日 更新

agent-platform-deploy

Google 官方免费有简介

将Model Garden模型部署到Agent Platform端点,查询兼容硬件与预估时价,跟踪部署、测试推理,并在使用后撤下模型和清理端点。

  • 选择可部署模型和硬件
  • 审批前估算每小时费用
  • 查看部署状态并测试推理
google/skills2.2万2026年10月28日 更新

agent-platform-endpoint-management

Google 官方免费有简介

管理 Agent Platform 中接收模型在线预测请求的端点,包括列表、查看详情、创建、更新和删除,并排查权限、配额及资源繁忙错误。

  • 列出端点并查看配置
  • 部署模型前创建端点
  • 修改显示名称或标签
google/skills2.2万2026年10月28日 更新

agent-platform-eval-flywheel

Google 官方免费有简介

在 Google Cloud 上评估 AI 模型和智能体,通过整理测试数据、选择评分指标、生成模拟用户场景、分析失败案例并比较修改前后的结果,为提示词和代码改进提供依据。

  • 从对话记录制作评估数据
  • 生成模拟用户场景
  • 选择回答和工具使用指标
google/skills2.2万2026年10月28日 更新

agent-platform-inference

Google 官方免费

Call Gemini and OpenMaaS models such as Llama, DeepSeek, and Qwen through Google Cloud Agent Platform. Prepare authentication and SDK code, run prompts, configure connection endpoints, and troubleshoot common request errors.

中文简介正在准备中。当前显示英语简介。

  • Send a test prompt to Gemini
  • Call Llama or DeepSeek with the OpenAI SDK
  • Write code to call an existing custom endpoint
google/skills2.2万2026年10月28日 更新

agent-platform-migrate-from-ai-studio

Google 官方免费有简介

指导将Google AI Studio中的Gemini API迁移到Google Cloud上的Gemini Enterprise Agent Platform,涵盖结算、权限、身份验证,以及SDK和相关智能体工具的连接设置。

  • 将Gemini应用迁移到Google Cloud
  • 用Cloud额度支付API用量
  • 统一智能体身份验证与结算
google/skills2.2万2026年10月28日 更新

查看 google 的全部技能

报告此技能的问题