You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用AWS Lambda|AppFlow创建GoogleAds自定义连接器报错求助

解决AppFlow自定义连接器参数验证错误问题

核心原因

你遇到的ParamValidationError是因为当前环境使用的botocore版本过低,旧版本的参数校验列表里还没加入CustomConnector选项,同时代码缺少自定义连接器必需的connectorLabel参数。

解决步骤

  1. 升级Boto3/Botocore版本
    Lambda默认Python runtime自带的Boto3版本通常较老,不支持Custom Connector的参数结构。你需要:

    • 本地创建虚拟环境,安装最新版依赖:
      pip install boto3 --upgrade
      pip install botocore --upgrade
      
    • 将依赖打包成Lambda层,或者直接把依赖和代码一起上传,确保Lambda运行时使用新版本库。
  2. 补全必填的connectorLabel参数
    当connectorType设为CustomConnector时,必须指定connectorLabel,这个值是你在AppFlow控制台注册自定义连接器时设置的标签(比如Google Ads连接器的对应标签),去掉代码里的注释并填写正确值。

  3. 修正参数结构(版本升级后生效)
    升级依赖后,CustomConnector会被加入参数校验允许列表,此时你的参数结构是合规的,可根据实际需求调整字段(比如如果已有refresh token,可去掉不需要的oAuthRequest字段)。

修正后的示例代码

import json
import boto3

def lambda_handler(event, context):
    client = boto3.client('appflow')
  
    ### Google Ads 自定义连接器配置
    response = client.create_connector_profile(
        connectorProfileName='GoogleAdsConn',
        connectorType='CustomConnector',
        connectorLabel='GoogleAds',  # 替换为你实际的自定义连接器标签
        connectionMode='Public',
        connectorProfileConfig= {
            "connectorProfileProperties": {
                'CustomConnector': {
                    'oAuth2Properties': {
                        'tokenUrl': 'https://oauth2.googleapis.com/token',
                        'oAuth2GrantType': 'AUTHORIZATION_CODE'
                    }
                }
            },
            "connectorProfileCredentials": {
                "CustomConnector": { 
                    "authenticationType": "OAUTH2",
                    "oauth2": { 
                        "accessToken": "myaccesstoken",
                        "clientId": "myclientid",
                        "clientSecret": "myclientsecret",
                        "refreshToken": "myrefreshtoken"
                    }
                }
            }   
        }
    )
    return {
        'response': response
    }

额外注意事项

  • connectorLabel要和AppFlow控制台显示的自定义连接器标签完全一致,大小写敏感。
  • 若升级依赖后仍有问题,可临时禁用botocore参数校验排查(不推荐用于生产):
    client = boto3.client('appflow', validate=False)
    

内容的提问来源于stack exchange,提问作者Aditya Bhat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 06:54:23