adcp-signals
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseAdCP Signals Protocol
AdCP Signals Protocol
This skill enables you to execute the AdCP Signals Protocol with signal agents. Use the standard MCP tools (, ) exposed by the connected agent.
get_signalsactivate_signal本Skill可让你借助信号代理执行AdCP Signals Protocol操作。使用已连接代理提供的标准MCP工具(、)。
get_signalsactivate_signalOverview
概述
The Signals Protocol provides 2 standardized tasks for discovering and activating targeting data:
| Task | Purpose | Response Time |
|---|---|---|
| Discover signals using natural language | ~60s |
| Activate a signal on a platform/agent | Minutes-Hours |
Signals Protocol提供两项标准化任务,用于发现和激活定向数据:
| 任务 | 用途 | 响应时间 |
|---|---|---|
| 使用自然语言发现信号 | 约60秒 |
| 在平台/代理上激活信号 | 数分钟至数小时 |
Typical Workflow
典型工作流程
- Discover signals: with a natural language description of targeting needs
get_signals - Review options: Evaluate signals by coverage, pricing, and deployment status
- Activate if needed: for signals not yet live on your platform
activate_signal - Use in campaigns: Reference the activation key in your media buy targeting
- 发现信号:使用,输入定向需求的自然语言描述
get_signals - 评估选项:从覆盖范围、定价和部署状态等维度评估信号
- 按需激活:对尚未在你的平台上线的信号执行
activate_signal - 用于广告活动:在媒体采购定向中引用激活密钥
Task Reference
任务参考
get_signals
get_signals
Discover signals based on natural language description, with deployment status across platforms.
Request:
json
{
"signal_spec": "High-income households interested in luxury goods",
"deliver_to": {
"deployments": [
{
"type": "platform",
"platform": "the-trade-desk",
"account": "agency-123"
}
],
"countries": ["US"]
},
"filters": {
"max_cpm": 5.0,
"catalog_types": ["marketplace"]
},
"max_results": 5
}Key fields:
- (string, required): Natural language description of desired signals
signal_spec - (object, required): Where signals will be used
deliver_to- (array): Target platforms/agents with
deployments,type/platform, and optionalagent_urlaccount - (array): ISO country codes where signals will be used
countries
- (object, optional): Filter by
filters,catalog_types,data_providers,max_cpmmin_coverage_percentage - (number, optional): Limit number of results
max_results
Deployment types:
json
// DSP platform
{ "type": "platform", "platform": "the-trade-desk", "account": "agency-123" }
// Sales agent
{ "type": "agent", "agent_url": "https://salesagent.example.com" }Response contains:
- : Array of matching signals with:
signals- : Use this in
signal_agent_segment_idactivate_signal - ,
name: Human-readable signal infodescription - : Source of the signal data
data_provider - : Reach relative to agent's population
coverage_percentage - : Status per platform with
deployments,is_live,activation_keyestimated_activation_duration_minutes - : CPM and currency
pricing
根据自然语言描述发现信号,同时获取各平台的部署状态。
请求:
json
{
"signal_spec": "High-income households interested in luxury goods",
"deliver_to": {
"deployments": [
{
"type": "platform",
"platform": "the-trade-desk",
"account": "agency-123"
}
],
"countries": ["US"]
},
"filters": {
"max_cpm": 5.0,
"catalog_types": ["marketplace"]
},
"max_results": 5
}关键字段:
- (字符串,必填):所需信号的自然语言描述
signal_spec - (对象,必填):信号的使用场景
deliver_to- (数组):目标平台/代理,包含
deployments、type/platform,可选agent_urlaccount - (数组):信号将使用的ISO国家代码
countries
- (对象,可选):按
filters、catalog_types、data_providers、max_cpm筛选min_coverage_percentage - (数字,可选):限制结果数量
max_results
部署类型:
json
// DSP platform
{ "type": "platform", "platform": "the-trade-desk", "account": "agency-123" }
// Sales agent
{ "type": "agent", "agent_url": "https://salesagent.example.com" }响应包含:
- : 匹配的信号数组,包含:
signals- : 在
signal_agent_segment_id中使用该IDactivate_signal - ,
name: 便于人类阅读的信号信息description - : 信号数据的来源
data_provider - : 相对于代理受众群体的触达比例
coverage_percentage - : 各平台的状态,包含
deployments,is_live,activation_keyestimated_activation_duration_minutes - : CPM和货币类型
pricing
activate_signal
activate_signal
Activate a signal for use on a specific platform or agent.
Request:
json
{
"signal_agent_segment_id": "luxury_auto_intenders",
"deployments": [
{
"type": "platform",
"platform": "the-trade-desk",
"account": "agency-123-ttd"
}
]
}Key fields:
- (string, required): From
signal_agent_segment_idresponseget_signals - (array, required): Target deployment(s) with
deployments,type/platform, and optionalagent_urlaccount
Response contains:
- : Array with activation results per target
deployments- : The key to use for targeting (segment ID or key-value pair)
activation_key - : ISO timestamp when activation completed
deployed_at - : Time remaining if async
estimated_activation_duration_minutes
- : Any warnings or errors encountered
errors
在特定平台或代理上激活信号以供使用。
请求:
json
{
"signal_agent_segment_id": "luxury_auto_intenders",
"deployments": [
{
"type": "platform",
"platform": "the-trade-desk",
"account": "agency-123-ttd"
}
]
}关键字段:
- (字符串,必填):来自
signal_agent_segment_id的响应结果get_signals - (数组,必填):目标部署项,包含
deployments、type/platform,可选agent_urlaccount
响应包含:
- : 各目标的激活结果数组
deployments- : 用于定向的密钥(细分ID或键值对)
activation_key - : 激活完成的ISO时间戳
deployed_at - : 异步操作的剩余时间
estimated_activation_duration_minutes
- : 遇到的任何警告或错误
errors
Key Concepts
核心概念
Deployment Targets
部署目标
Signals can be activated on two types of targets:
DSP Platforms:
json
{
"type": "platform",
"platform": "the-trade-desk",
"account": "agency-123"
}Sales Agents:
json
{
"type": "agent",
"agent_url": "https://wonderstruck.salesagents.com"
}信号可在两类目标上激活:
DSP平台:
json
{
"type": "platform",
"platform": "the-trade-desk",
"account": "agency-123"
}销售代理:
json
{
"type": "agent",
"agent_url": "https://wonderstruck.salesagents.com"
}Activation Keys
激活密钥
When signals are live, the response includes an activation key for targeting:
Segment ID format (typical for DSPs):
json
{
"type": "segment_id",
"segment_id": "ttd_segment_12345"
}Key-Value format (typical for sales agents):
json
{
"type": "key_value",
"key": "audience_segment",
"value": "luxury_auto_intenders"
}当信号上线后,响应结果会包含用于定向的激活密钥:
细分ID格式(DSP常用):
json
{
"type": "segment_id",
"segment_id": "ttd_segment_12345"
}键值对格式(销售代理常用):
json
{
"type": "key_value",
"key": "audience_segment",
"value": "luxury_auto_intenders"
}Signal Types
信号类型
- marketplace: Licensed from data providers (CPM pricing)
- custom: Built for specific principal accounts
- owned: Private signals from your own data (no cost)
- marketplace: 从数据提供商处授权获取(按CPM定价)
- custom: 为特定主账户定制
- owned: 来自自有数据的私有信号(无成本)
Coverage Percentage
覆盖比例
Indicates signal reach relative to the agent's population:
- 99%: Very broad signal (matches most identifiers)
- 50%: Medium signal
- 1%: Very niche signal
表示信号相对于代理受众群体的触达范围:
- 99%:覆盖极广的信号(匹配大多数标识)
- 50%:中等覆盖信号
- 1%:非常小众的信号
Asynchronous Operations
异步操作
Signal activation may take time. Check the response:
- +
is_live: true: Ready to use immediatelyactivation_key - +
is_live: false: Activation in progressestimated_activation_duration_minutes
Poll or use webhooks to check completion status.
信号激活可能需要一定时间。请查看响应结果:
- +
is_live: true: 可立即使用activation_key - +
is_live: false: 激活中 可通过轮询或webhook检查完成状态。estimated_activation_duration_minutes
Error Handling
错误处理
Common error codes:
- : Invalid signal_agent_segment_id
SIGNAL_AGENT_SEGMENT_NOT_FOUND - : Could not activate signal
ACTIVATION_FAILED - : Signal already active on target
ALREADY_ACTIVATED - : Not authorized for platform/account
DEPLOYMENT_UNAUTHORIZED - : Private agent not visible to this principal
AGENT_NOT_FOUND - : Not authorized for this signal agent
AGENT_ACCESS_DENIED
Error responses include:
json
{
"errors": [
{
"code": "DEPLOYMENT_UNAUTHORIZED",
"message": "Account not authorized for this data provider",
"field": "deployment.account",
"suggestion": "Contact your account manager to enable access"
}
]
}常见错误代码:
- : 无效的signal_agent_segment_id
SIGNAL_AGENT_SEGMENT_NOT_FOUND - : 无法激活信号
ACTIVATION_FAILED - : 信号已在目标平台激活
ALREADY_ACTIVATED - : 无平台/账户权限
DEPLOYMENT_UNAUTHORIZED - : 无法找到该私有代理
AGENT_NOT_FOUND - : 无该信号代理的访问权限
AGENT_ACCESS_DENIED
错误响应示例:
json
{
"errors": [
{
"code": "DEPLOYMENT_UNAUTHORIZED",
"message": "Account not authorized for this data provider",
"field": "deployment.account",
"suggestion": "Contact your account manager to enable access"
}
]
}