@adcp/client 2.7.1 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/adcp-async-handler.js +10 -8
- package/bin/adcp-config.js +13 -6
- package/bin/adcp.js +113 -40
- package/dist/lib/advanced.d.ts +41 -0
- package/dist/lib/advanced.d.ts.map +1 -0
- package/dist/lib/advanced.js +49 -0
- package/dist/lib/advanced.js.map +1 -0
- package/dist/lib/auth/index.d.ts +4 -0
- package/dist/lib/auth/index.d.ts.map +1 -1
- package/dist/lib/auth/index.js +13 -14
- package/dist/lib/auth/index.js.map +1 -1
- package/dist/lib/core/ADCPMultiAgentClient.d.ts +54 -7
- package/dist/lib/core/ADCPMultiAgentClient.d.ts.map +1 -1
- package/dist/lib/core/ADCPMultiAgentClient.js +84 -10
- package/dist/lib/core/ADCPMultiAgentClient.js.map +1 -1
- package/dist/lib/core/AgentClient.d.ts +11 -2
- package/dist/lib/core/AgentClient.d.ts.map +1 -1
- package/dist/lib/core/AgentClient.js +57 -13
- package/dist/lib/core/AgentClient.js.map +1 -1
- package/dist/lib/core/AsyncHandler.d.ts +2 -1
- package/dist/lib/core/AsyncHandler.d.ts.map +1 -1
- package/dist/lib/core/AsyncHandler.js +3 -3
- package/dist/lib/core/AsyncHandler.js.map +1 -1
- package/dist/lib/core/ConfigurationManager.d.ts.map +1 -1
- package/dist/lib/core/ConfigurationManager.js +8 -17
- package/dist/lib/core/ConfigurationManager.js.map +1 -1
- package/dist/lib/core/ConversationTypes.d.ts.map +1 -1
- package/dist/lib/core/CreativeAgentClient.d.ts +5 -5
- package/dist/lib/core/CreativeAgentClient.d.ts.map +1 -1
- package/dist/lib/core/CreativeAgentClient.js +6 -6
- package/dist/lib/core/CreativeAgentClient.js.map +1 -1
- package/dist/lib/core/ProtocolResponseParser.d.ts +1 -1
- package/dist/lib/core/ProtocolResponseParser.d.ts.map +1 -1
- package/dist/lib/core/ProtocolResponseParser.js +4 -4
- package/dist/lib/core/ProtocolResponseParser.js.map +1 -1
- package/dist/lib/core/ResponseValidator.d.ts.map +1 -1
- package/dist/lib/core/ResponseValidator.js +1 -1
- package/dist/lib/core/ResponseValidator.js.map +1 -1
- package/dist/lib/core/{ADCPClient.d.ts → SingleAgentClient.d.ts} +22 -13
- package/dist/lib/core/SingleAgentClient.d.ts.map +1 -0
- package/dist/lib/core/{ADCPClient.js → SingleAgentClient.js} +125 -105
- package/dist/lib/core/SingleAgentClient.js.map +1 -0
- package/dist/lib/core/TaskEventTypes.js +1 -1
- package/dist/lib/core/TaskExecutor.d.ts.map +1 -1
- package/dist/lib/core/TaskExecutor.js +76 -57
- package/dist/lib/core/TaskExecutor.js.map +1 -1
- package/dist/lib/discovery/property-crawler.d.ts.map +1 -1
- package/dist/lib/discovery/property-crawler.js +24 -21
- package/dist/lib/discovery/property-crawler.js.map +1 -1
- package/dist/lib/discovery/property-index.d.ts.map +1 -1
- package/dist/lib/discovery/property-index.js +5 -5
- package/dist/lib/discovery/property-index.js.map +1 -1
- package/dist/lib/discovery/types.d.ts.map +1 -1
- package/dist/lib/errors/index.d.ts.map +1 -1
- package/dist/lib/errors/index.js +3 -3
- package/dist/lib/errors/index.js.map +1 -1
- package/dist/lib/handlers/types.d.ts.map +1 -1
- package/dist/lib/handlers/types.js.map +1 -1
- package/dist/lib/index.d.ts +18 -42
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +14 -50
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/protocols/a2a.js +20 -20
- package/dist/lib/protocols/a2a.js.map +1 -1
- package/dist/lib/protocols/index.d.ts.map +1 -1
- package/dist/lib/protocols/index.js +5 -5
- package/dist/lib/protocols/index.js.map +1 -1
- package/dist/lib/protocols/mcp.d.ts.map +1 -1
- package/dist/lib/protocols/mcp.js +30 -69
- package/dist/lib/protocols/mcp.js.map +1 -1
- package/dist/lib/storage/MemoryStorage.d.ts.map +1 -1
- package/dist/lib/storage/MemoryStorage.js +4 -4
- package/dist/lib/storage/MemoryStorage.js.map +1 -1
- package/dist/lib/storage/interfaces.d.ts.map +1 -1
- package/dist/lib/testing/index.d.ts +2 -0
- package/dist/lib/testing/index.d.ts.map +1 -0
- package/dist/lib/testing/index.js +22 -0
- package/dist/lib/testing/index.js.map +1 -0
- package/dist/lib/testing/test-helpers.d.ts +217 -0
- package/dist/lib/testing/test-helpers.d.ts.map +1 -0
- package/dist/lib/testing/test-helpers.js +258 -0
- package/dist/lib/testing/test-helpers.js.map +1 -0
- package/dist/lib/types/adcp.d.ts.map +1 -1
- package/dist/lib/types/core.generated.d.ts +146 -58
- package/dist/lib/types/core.generated.d.ts.map +1 -1
- package/dist/lib/types/core.generated.js +1 -1
- package/dist/lib/types/index.d.ts +1 -1
- package/dist/lib/types/index.d.ts.map +1 -1
- package/dist/lib/types/schemas.generated.d.ts +2608 -1536
- package/dist/lib/types/schemas.generated.d.ts.map +1 -1
- package/dist/lib/types/schemas.generated.js +361 -259
- package/dist/lib/types/schemas.generated.js.map +1 -1
- package/dist/lib/types/tools.generated.d.ts +688 -359
- package/dist/lib/types/tools.generated.d.ts.map +1 -1
- package/dist/lib/types/tools.generated.js +1 -1
- package/dist/lib/types/tools.generated.js.map +1 -1
- package/dist/lib/utils/index.d.ts +1 -0
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/lib/utils/index.js +15 -10
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/lib/utils/logger.js +6 -6
- package/dist/lib/utils/preview-utils.d.ts +87 -0
- package/dist/lib/utils/preview-utils.d.ts.map +1 -0
- package/dist/lib/utils/preview-utils.js +322 -0
- package/dist/lib/utils/preview-utils.js.map +1 -0
- package/dist/lib/utils/protocol-detection.d.ts.map +1 -1
- package/dist/lib/utils/protocol-detection.js +4 -4
- package/dist/lib/utils/protocol-detection.js.map +1 -1
- package/dist/lib/validation/index.d.ts.map +1 -1
- package/dist/lib/validation/index.js +5 -5
- package/dist/lib/validation/index.js.map +1 -1
- package/dist/lib/version.d.ts +3 -3
- package/dist/lib/version.js +3 -3
- package/package.json +18 -5
- package/dist/lib/core/ADCPClient.d.ts.map +0 -1
- package/dist/lib/core/ADCPClient.js.map +0 -1
|
@@ -403,6 +403,30 @@ export interface Product {
|
|
|
403
403
|
* Expiration timestamp for custom products
|
|
404
404
|
*/
|
|
405
405
|
expires_at?: string;
|
|
406
|
+
/**
|
|
407
|
+
* Optional standard visual card (300x400px) for displaying this product in user interfaces. Can be rendered via preview_creative or pre-generated.
|
|
408
|
+
*/
|
|
409
|
+
product_card?: {
|
|
410
|
+
format_id: FormatID1;
|
|
411
|
+
/**
|
|
412
|
+
* Asset manifest for rendering the card, structure defined by the format
|
|
413
|
+
*/
|
|
414
|
+
manifest: {
|
|
415
|
+
[k: string]: unknown;
|
|
416
|
+
};
|
|
417
|
+
};
|
|
418
|
+
/**
|
|
419
|
+
* Optional detailed card with carousel and full specifications. Provides rich product presentation similar to media kit pages.
|
|
420
|
+
*/
|
|
421
|
+
product_card_detailed?: {
|
|
422
|
+
format_id: FormatID2;
|
|
423
|
+
/**
|
|
424
|
+
* Asset manifest for rendering the detailed card, structure defined by the format
|
|
425
|
+
*/
|
|
426
|
+
manifest: {
|
|
427
|
+
[k: string]: unknown;
|
|
428
|
+
};
|
|
429
|
+
};
|
|
406
430
|
}
|
|
407
431
|
/**
|
|
408
432
|
* Structured format identifier with agent URL and format name
|
|
@@ -820,6 +844,32 @@ export interface CreativePolicy {
|
|
|
820
844
|
*/
|
|
821
845
|
templates_available: boolean;
|
|
822
846
|
}
|
|
847
|
+
/**
|
|
848
|
+
* Structured format identifier with agent URL and format name
|
|
849
|
+
*/
|
|
850
|
+
export interface FormatID1 {
|
|
851
|
+
/**
|
|
852
|
+
* URL of the agent that defines this format (e.g., 'https://creatives.adcontextprotocol.org' for standard formats, or 'https://publisher.com/.well-known/adcp/sales' for custom formats)
|
|
853
|
+
*/
|
|
854
|
+
agent_url: string;
|
|
855
|
+
/**
|
|
856
|
+
* Format identifier within the agent's namespace (e.g., 'display_300x250', 'video_standard_30s')
|
|
857
|
+
*/
|
|
858
|
+
id: string;
|
|
859
|
+
}
|
|
860
|
+
/**
|
|
861
|
+
* Structured format identifier with agent URL and format name
|
|
862
|
+
*/
|
|
863
|
+
export interface FormatID2 {
|
|
864
|
+
/**
|
|
865
|
+
* URL of the agent that defines this format (e.g., 'https://creatives.adcontextprotocol.org' for standard formats, or 'https://publisher.com/.well-known/adcp/sales' for custom formats)
|
|
866
|
+
*/
|
|
867
|
+
agent_url: string;
|
|
868
|
+
/**
|
|
869
|
+
* Format identifier within the agent's namespace (e.g., 'display_300x250', 'video_standard_30s')
|
|
870
|
+
*/
|
|
871
|
+
id: string;
|
|
872
|
+
}
|
|
823
873
|
/**
|
|
824
874
|
* Standard error structure for task-specific errors and warnings
|
|
825
875
|
*/
|
|
@@ -939,7 +989,7 @@ export interface Format {
|
|
|
939
989
|
*/
|
|
940
990
|
description?: string;
|
|
941
991
|
/**
|
|
942
|
-
* Optional preview image URL for format browsing/discovery UI. Should be 400x300px (4:3 aspect ratio) PNG or JPG. Used as thumbnail/card image in format browsers.
|
|
992
|
+
* DEPRECATED: Use format_card instead. Optional preview image URL for format browsing/discovery UI. Should be 400x300px (4:3 aspect ratio) PNG or JPG. Used as thumbnail/card image in format browsers. This field is maintained for backward compatibility but format_card provides a more flexible, structured approach.
|
|
943
993
|
*/
|
|
944
994
|
preview_image?: string;
|
|
945
995
|
/**
|
|
@@ -1068,7 +1118,7 @@ export interface Format {
|
|
|
1068
1118
|
/**
|
|
1069
1119
|
* Type of asset
|
|
1070
1120
|
*/
|
|
1071
|
-
asset_type: 'image' | 'video' | 'audio' | 'vast' | 'daast' | 'text' | 'html' | 'css' | 'javascript' | 'url' | 'webhook' | 'promoted_offerings';
|
|
1121
|
+
asset_type: 'image' | 'video' | 'audio' | 'vast' | 'daast' | 'text' | 'markdown' | 'html' | 'css' | 'javascript' | 'url' | 'webhook' | 'promoted_offerings';
|
|
1072
1122
|
/**
|
|
1073
1123
|
* Optional descriptive label for this asset's purpose (e.g., 'hero_image', 'logo'). Not used for referencing assets in manifests—use asset_id instead. This field is for human-readable documentation and UI display only.
|
|
1074
1124
|
*/
|
|
@@ -1111,7 +1161,7 @@ export interface Format {
|
|
|
1111
1161
|
/**
|
|
1112
1162
|
* Type of asset
|
|
1113
1163
|
*/
|
|
1114
|
-
asset_type: 'image' | 'video' | 'audio' | 'vast' | 'daast' | 'text' | 'html' | 'css' | 'javascript' | 'url' | 'webhook' | 'promoted_offerings';
|
|
1164
|
+
asset_type: 'image' | 'video' | 'audio' | 'vast' | 'daast' | 'text' | 'markdown' | 'html' | 'css' | 'javascript' | 'url' | 'webhook' | 'promoted_offerings';
|
|
1115
1165
|
/**
|
|
1116
1166
|
* Optional descriptive label for this asset's purpose (e.g., 'hero_image', 'logo'). Not used for referencing assets in manifests—use asset_id instead. This field is for human-readable documentation and UI display only.
|
|
1117
1167
|
*/
|
|
@@ -1142,11 +1192,35 @@ export interface Format {
|
|
|
1142
1192
|
* For generative formats: array of format IDs that this format can generate. When a format accepts inputs like brand_manifest and message, this specifies what concrete output formats can be produced (e.g., a generative banner format might output standard image banner formats).
|
|
1143
1193
|
*/
|
|
1144
1194
|
output_format_ids?: FormatID1[];
|
|
1195
|
+
/**
|
|
1196
|
+
* Optional standard visual card (300x400px) for displaying this format in user interfaces. Can be rendered via preview_creative or pre-generated.
|
|
1197
|
+
*/
|
|
1198
|
+
format_card?: {
|
|
1199
|
+
format_id: FormatID2;
|
|
1200
|
+
/**
|
|
1201
|
+
* Asset manifest for rendering the card, structure defined by the format
|
|
1202
|
+
*/
|
|
1203
|
+
manifest: {
|
|
1204
|
+
[k: string]: unknown;
|
|
1205
|
+
};
|
|
1206
|
+
};
|
|
1207
|
+
/**
|
|
1208
|
+
* Optional detailed card with carousel and full specifications. Provides rich format documentation similar to ad spec pages.
|
|
1209
|
+
*/
|
|
1210
|
+
format_card_detailed?: {
|
|
1211
|
+
format_id: FormatID3;
|
|
1212
|
+
/**
|
|
1213
|
+
* Asset manifest for rendering the detailed card, structure defined by the format
|
|
1214
|
+
*/
|
|
1215
|
+
manifest: {
|
|
1216
|
+
[k: string]: unknown;
|
|
1217
|
+
};
|
|
1218
|
+
};
|
|
1145
1219
|
}
|
|
1146
1220
|
/**
|
|
1147
1221
|
* Structured format identifier with agent URL and format name
|
|
1148
1222
|
*/
|
|
1149
|
-
export interface
|
|
1223
|
+
export interface FormatID3 {
|
|
1150
1224
|
/**
|
|
1151
1225
|
* URL of the agent that defines this format (e.g., 'https://creatives.adcontextprotocol.org' for standard formats, or 'https://publisher.com/.well-known/adcp/sales' for custom formats)
|
|
1152
1226
|
*/
|
|
@@ -1166,20 +1240,110 @@ export type Pacing = 'even' | 'asap' | 'front_loaded';
|
|
|
1166
1240
|
/**
|
|
1167
1241
|
* VAST (Video Ad Serving Template) tag for third-party video ad serving
|
|
1168
1242
|
*/
|
|
1169
|
-
export type VASTAsset =
|
|
1170
|
-
|
|
1171
|
-
|
|
1243
|
+
export type VASTAsset = {
|
|
1244
|
+
/**
|
|
1245
|
+
* Discriminator indicating VAST is delivered via URL endpoint
|
|
1246
|
+
*/
|
|
1247
|
+
delivery_type: 'url';
|
|
1248
|
+
/**
|
|
1249
|
+
* URL endpoint that returns VAST XML
|
|
1250
|
+
*/
|
|
1251
|
+
url: string;
|
|
1252
|
+
/**
|
|
1253
|
+
* VAST specification version
|
|
1254
|
+
*/
|
|
1255
|
+
vast_version?: '2.0' | '3.0' | '4.0' | '4.1' | '4.2';
|
|
1256
|
+
/**
|
|
1257
|
+
* Whether VPAID (Video Player-Ad Interface Definition) is supported
|
|
1258
|
+
*/
|
|
1259
|
+
vpaid_enabled?: boolean;
|
|
1260
|
+
/**
|
|
1261
|
+
* Expected video duration in milliseconds (if known)
|
|
1262
|
+
*/
|
|
1263
|
+
duration_ms?: number;
|
|
1264
|
+
/**
|
|
1265
|
+
* Tracking events supported by this VAST tag
|
|
1266
|
+
*/
|
|
1267
|
+
tracking_events?: ('start' | 'firstQuartile' | 'midpoint' | 'thirdQuartile' | 'complete' | 'impression' | 'click' | 'pause' | 'resume' | 'skip' | 'mute' | 'unmute' | 'fullscreen' | 'exitFullscreen' | 'playerExpand' | 'playerCollapse')[];
|
|
1172
1268
|
} | {
|
|
1173
|
-
|
|
1269
|
+
/**
|
|
1270
|
+
* Discriminator indicating VAST is delivered as inline XML content
|
|
1271
|
+
*/
|
|
1272
|
+
delivery_type: 'inline';
|
|
1273
|
+
/**
|
|
1274
|
+
* Inline VAST XML content
|
|
1275
|
+
*/
|
|
1276
|
+
content: string;
|
|
1277
|
+
/**
|
|
1278
|
+
* VAST specification version
|
|
1279
|
+
*/
|
|
1280
|
+
vast_version?: '2.0' | '3.0' | '4.0' | '4.1' | '4.2';
|
|
1281
|
+
/**
|
|
1282
|
+
* Whether VPAID (Video Player-Ad Interface Definition) is supported
|
|
1283
|
+
*/
|
|
1284
|
+
vpaid_enabled?: boolean;
|
|
1285
|
+
/**
|
|
1286
|
+
* Expected video duration in milliseconds (if known)
|
|
1287
|
+
*/
|
|
1288
|
+
duration_ms?: number;
|
|
1289
|
+
/**
|
|
1290
|
+
* Tracking events supported by this VAST tag
|
|
1291
|
+
*/
|
|
1292
|
+
tracking_events?: ('start' | 'firstQuartile' | 'midpoint' | 'thirdQuartile' | 'complete' | 'impression' | 'click' | 'pause' | 'resume' | 'skip' | 'mute' | 'unmute' | 'fullscreen' | 'exitFullscreen' | 'playerExpand' | 'playerCollapse')[];
|
|
1174
1293
|
};
|
|
1175
1294
|
/**
|
|
1176
1295
|
* DAAST (Digital Audio Ad Serving Template) tag for third-party audio ad serving
|
|
1177
1296
|
*/
|
|
1178
|
-
export type DAASTAsset =
|
|
1179
|
-
|
|
1180
|
-
|
|
1297
|
+
export type DAASTAsset = {
|
|
1298
|
+
/**
|
|
1299
|
+
* Discriminator indicating DAAST is delivered via URL endpoint
|
|
1300
|
+
*/
|
|
1301
|
+
delivery_type: 'url';
|
|
1302
|
+
/**
|
|
1303
|
+
* URL endpoint that returns DAAST XML
|
|
1304
|
+
*/
|
|
1305
|
+
url: string;
|
|
1306
|
+
/**
|
|
1307
|
+
* DAAST specification version
|
|
1308
|
+
*/
|
|
1309
|
+
daast_version?: '1.0' | '1.1';
|
|
1310
|
+
/**
|
|
1311
|
+
* Expected audio duration in milliseconds (if known)
|
|
1312
|
+
*/
|
|
1313
|
+
duration_ms?: number;
|
|
1314
|
+
/**
|
|
1315
|
+
* Tracking events supported by this DAAST tag
|
|
1316
|
+
*/
|
|
1317
|
+
tracking_events?: ('start' | 'firstQuartile' | 'midpoint' | 'thirdQuartile' | 'complete' | 'impression' | 'pause' | 'resume' | 'skip' | 'mute' | 'unmute')[];
|
|
1318
|
+
/**
|
|
1319
|
+
* Whether companion display ads are included
|
|
1320
|
+
*/
|
|
1321
|
+
companion_ads?: boolean;
|
|
1181
1322
|
} | {
|
|
1182
|
-
|
|
1323
|
+
/**
|
|
1324
|
+
* Discriminator indicating DAAST is delivered as inline XML content
|
|
1325
|
+
*/
|
|
1326
|
+
delivery_type: 'inline';
|
|
1327
|
+
/**
|
|
1328
|
+
* Inline DAAST XML content
|
|
1329
|
+
*/
|
|
1330
|
+
content: string;
|
|
1331
|
+
/**
|
|
1332
|
+
* DAAST specification version
|
|
1333
|
+
*/
|
|
1334
|
+
daast_version?: '1.0' | '1.1';
|
|
1335
|
+
/**
|
|
1336
|
+
* Expected audio duration in milliseconds (if known)
|
|
1337
|
+
*/
|
|
1338
|
+
duration_ms?: number;
|
|
1339
|
+
/**
|
|
1340
|
+
* Tracking events supported by this DAAST tag
|
|
1341
|
+
*/
|
|
1342
|
+
tracking_events?: ('start' | 'firstQuartile' | 'midpoint' | 'thirdQuartile' | 'complete' | 'impression' | 'pause' | 'resume' | 'skip' | 'mute' | 'unmute')[];
|
|
1343
|
+
/**
|
|
1344
|
+
* Whether companion display ads are included
|
|
1345
|
+
*/
|
|
1346
|
+
companion_ads?: boolean;
|
|
1183
1347
|
};
|
|
1184
1348
|
/**
|
|
1185
1349
|
* Brand information manifest containing assets, themes, and guidelines. Can be provided inline or as a URL reference to a hosted manifest.
|
|
@@ -1474,58 +1638,6 @@ export interface JavaScriptAsset {
|
|
|
1474
1638
|
*/
|
|
1475
1639
|
module_type?: 'esm' | 'commonjs' | 'script';
|
|
1476
1640
|
}
|
|
1477
|
-
export interface VASTAsset1 {
|
|
1478
|
-
/**
|
|
1479
|
-
* URL endpoint that returns VAST XML
|
|
1480
|
-
*/
|
|
1481
|
-
url?: string;
|
|
1482
|
-
/**
|
|
1483
|
-
* Inline VAST XML content
|
|
1484
|
-
*/
|
|
1485
|
-
content?: string;
|
|
1486
|
-
/**
|
|
1487
|
-
* VAST specification version
|
|
1488
|
-
*/
|
|
1489
|
-
vast_version?: '2.0' | '3.0' | '4.0' | '4.1' | '4.2';
|
|
1490
|
-
/**
|
|
1491
|
-
* Whether VPAID (Video Player-Ad Interface Definition) is supported
|
|
1492
|
-
*/
|
|
1493
|
-
vpaid_enabled?: boolean;
|
|
1494
|
-
/**
|
|
1495
|
-
* Expected video duration in milliseconds (if known)
|
|
1496
|
-
*/
|
|
1497
|
-
duration_ms?: number;
|
|
1498
|
-
/**
|
|
1499
|
-
* Tracking events supported by this VAST tag
|
|
1500
|
-
*/
|
|
1501
|
-
tracking_events?: ('start' | 'firstQuartile' | 'midpoint' | 'thirdQuartile' | 'complete' | 'impression' | 'click' | 'pause' | 'resume' | 'skip' | 'mute' | 'unmute' | 'fullscreen' | 'exitFullscreen' | 'playerExpand' | 'playerCollapse')[];
|
|
1502
|
-
}
|
|
1503
|
-
export interface DAASTAsset1 {
|
|
1504
|
-
/**
|
|
1505
|
-
* URL endpoint that returns DAAST XML
|
|
1506
|
-
*/
|
|
1507
|
-
url?: string;
|
|
1508
|
-
/**
|
|
1509
|
-
* Inline DAAST XML content
|
|
1510
|
-
*/
|
|
1511
|
-
content?: string;
|
|
1512
|
-
/**
|
|
1513
|
-
* DAAST specification version
|
|
1514
|
-
*/
|
|
1515
|
-
daast_version?: '1.0' | '1.1';
|
|
1516
|
-
/**
|
|
1517
|
-
* Expected audio duration in milliseconds (if known)
|
|
1518
|
-
*/
|
|
1519
|
-
duration_ms?: number;
|
|
1520
|
-
/**
|
|
1521
|
-
* Tracking events supported by this DAAST tag
|
|
1522
|
-
*/
|
|
1523
|
-
tracking_events?: ('start' | 'firstQuartile' | 'midpoint' | 'thirdQuartile' | 'complete' | 'impression' | 'pause' | 'resume' | 'skip' | 'mute' | 'unmute')[];
|
|
1524
|
-
/**
|
|
1525
|
-
* Whether companion display ads are included
|
|
1526
|
-
*/
|
|
1527
|
-
companion_ads?: boolean;
|
|
1528
|
-
}
|
|
1529
1641
|
/**
|
|
1530
1642
|
* Complete offering specification combining brand manifest, product selectors, and asset filters. Provides all context needed for creative generation about what is being promoted.
|
|
1531
1643
|
*/
|
|
@@ -1634,13 +1746,13 @@ export interface PushNotificationConfig {
|
|
|
1634
1746
|
};
|
|
1635
1747
|
}
|
|
1636
1748
|
/**
|
|
1637
|
-
* Response payload for create_media_buy task
|
|
1749
|
+
* Response payload for create_media_buy task. Returns either complete success data OR error information, never both. This enforces atomic operation semantics - the media buy is either fully created or not created at all.
|
|
1638
1750
|
*/
|
|
1639
|
-
export
|
|
1751
|
+
export type CreateMediaBuyResponse = {
|
|
1640
1752
|
/**
|
|
1641
1753
|
* Publisher's unique identifier for the created media buy
|
|
1642
1754
|
*/
|
|
1643
|
-
media_buy_id
|
|
1755
|
+
media_buy_id: string;
|
|
1644
1756
|
/**
|
|
1645
1757
|
* Buyer's reference identifier for this media buy
|
|
1646
1758
|
*/
|
|
@@ -1652,7 +1764,7 @@ export interface CreateMediaBuyResponse {
|
|
|
1652
1764
|
/**
|
|
1653
1765
|
* Array of created packages
|
|
1654
1766
|
*/
|
|
1655
|
-
packages
|
|
1767
|
+
packages: {
|
|
1656
1768
|
/**
|
|
1657
1769
|
* Publisher's unique identifier for the package
|
|
1658
1770
|
*/
|
|
@@ -1662,11 +1774,14 @@ export interface CreateMediaBuyResponse {
|
|
|
1662
1774
|
*/
|
|
1663
1775
|
buyer_ref: string;
|
|
1664
1776
|
}[];
|
|
1777
|
+
} | {
|
|
1665
1778
|
/**
|
|
1666
|
-
*
|
|
1779
|
+
* Array of errors explaining why the operation failed
|
|
1780
|
+
*
|
|
1781
|
+
* @minItems 1
|
|
1667
1782
|
*/
|
|
1668
|
-
errors
|
|
1669
|
-
}
|
|
1783
|
+
errors: [Error, ...Error[]];
|
|
1784
|
+
};
|
|
1670
1785
|
/**
|
|
1671
1786
|
* Standard error structure for task-specific errors and warnings
|
|
1672
1787
|
*/
|
|
@@ -1714,15 +1829,15 @@ export interface SyncCreativesRequest {
|
|
|
1714
1829
|
* Creative asset for upload to library - supports static assets, generative formats, and third-party snippets
|
|
1715
1830
|
*/
|
|
1716
1831
|
/**
|
|
1717
|
-
* Response from creative sync operation
|
|
1832
|
+
* Response from creative sync operation. Returns either per-creative results (best-effort processing) OR operation-level errors (complete failure). This enforces atomic semantics at the operation level while allowing per-item failures within successful operations.
|
|
1718
1833
|
*/
|
|
1719
|
-
export
|
|
1834
|
+
export type SyncCreativesResponse = {
|
|
1720
1835
|
/**
|
|
1721
1836
|
* Whether this was a dry run (no actual changes made)
|
|
1722
1837
|
*/
|
|
1723
1838
|
dry_run?: boolean;
|
|
1724
1839
|
/**
|
|
1725
|
-
* Results for each creative processed
|
|
1840
|
+
* Results for each creative processed. Items with action='failed' indicate per-item validation/processing failures, not operation-level failures.
|
|
1726
1841
|
*/
|
|
1727
1842
|
creatives: {
|
|
1728
1843
|
/**
|
|
@@ -1774,7 +1889,17 @@ export interface SyncCreativesResponse {
|
|
|
1774
1889
|
[k: string]: string;
|
|
1775
1890
|
};
|
|
1776
1891
|
}[];
|
|
1777
|
-
}
|
|
1892
|
+
} | {
|
|
1893
|
+
/**
|
|
1894
|
+
* Operation-level errors that prevented processing any creatives (e.g., authentication failure, service unavailable, invalid request format)
|
|
1895
|
+
*
|
|
1896
|
+
* @minItems 1
|
|
1897
|
+
*/
|
|
1898
|
+
errors: [Error, ...Error[]];
|
|
1899
|
+
};
|
|
1900
|
+
/**
|
|
1901
|
+
* Standard error structure for task-specific errors and warnings
|
|
1902
|
+
*/
|
|
1778
1903
|
/**
|
|
1779
1904
|
* Filter by creative approval status
|
|
1780
1905
|
*/
|
|
@@ -1901,11 +2026,40 @@ export interface ListCreativesRequest {
|
|
|
1901
2026
|
/**
|
|
1902
2027
|
* Current approval status of the creative
|
|
1903
2028
|
*/
|
|
1904
|
-
export type SubAsset =
|
|
1905
|
-
|
|
1906
|
-
|
|
2029
|
+
export type SubAsset = {
|
|
2030
|
+
/**
|
|
2031
|
+
* Discriminator indicating this is a media asset with content_uri
|
|
2032
|
+
*/
|
|
2033
|
+
asset_kind: 'media';
|
|
2034
|
+
/**
|
|
2035
|
+
* Type of asset. Common types: thumbnail_image, product_image, featured_image, logo
|
|
2036
|
+
*/
|
|
2037
|
+
asset_type: string;
|
|
2038
|
+
/**
|
|
2039
|
+
* Unique identifier for the asset within the creative
|
|
2040
|
+
*/
|
|
2041
|
+
asset_id: string;
|
|
2042
|
+
/**
|
|
2043
|
+
* URL for media assets (images, videos, etc.)
|
|
2044
|
+
*/
|
|
2045
|
+
content_uri: string;
|
|
1907
2046
|
} | {
|
|
1908
|
-
|
|
2047
|
+
/**
|
|
2048
|
+
* Discriminator indicating this is a text asset with content
|
|
2049
|
+
*/
|
|
2050
|
+
asset_kind: 'text';
|
|
2051
|
+
/**
|
|
2052
|
+
* Type of asset. Common types: headline, body_text, cta_text, price_text, sponsor_name, author_name, click_url
|
|
2053
|
+
*/
|
|
2054
|
+
asset_type: string;
|
|
2055
|
+
/**
|
|
2056
|
+
* Unique identifier for the asset within the creative
|
|
2057
|
+
*/
|
|
2058
|
+
asset_id: string;
|
|
2059
|
+
/**
|
|
2060
|
+
* Text content for text-based assets like headlines, body text, CTA text, etc.
|
|
2061
|
+
*/
|
|
2062
|
+
content: string | string[];
|
|
1909
2063
|
};
|
|
1910
2064
|
/**
|
|
1911
2065
|
* Response from creative library query with filtered results, metadata, and optional enriched data
|
|
@@ -2117,24 +2271,6 @@ export interface ListCreativesResponse {
|
|
|
2117
2271
|
/**
|
|
2118
2272
|
* Format identifier specifying which format this creative conforms to
|
|
2119
2273
|
*/
|
|
2120
|
-
export interface SubAsset1 {
|
|
2121
|
-
/**
|
|
2122
|
-
* Type of asset. Common types: headline, body_text, thumbnail_image, product_image, featured_image, logo, cta_text, price_text, sponsor_name, author_name, click_url
|
|
2123
|
-
*/
|
|
2124
|
-
asset_type?: string;
|
|
2125
|
-
/**
|
|
2126
|
-
* Unique identifier for the asset within the creative
|
|
2127
|
-
*/
|
|
2128
|
-
asset_id?: string;
|
|
2129
|
-
/**
|
|
2130
|
-
* URL for media assets (images, videos, etc.)
|
|
2131
|
-
*/
|
|
2132
|
-
content_uri?: string;
|
|
2133
|
-
/**
|
|
2134
|
-
* Text content for text-based assets like headlines, body text, CTA text, etc.
|
|
2135
|
-
*/
|
|
2136
|
-
content?: string | string[];
|
|
2137
|
-
}
|
|
2138
2274
|
/**
|
|
2139
2275
|
* Request parameters for updating campaign and package settings
|
|
2140
2276
|
*/
|
|
@@ -2177,9 +2313,9 @@ export interface UpdateMediaBuyRequest1 {
|
|
|
2177
2313
|
* Optional webhook configuration for async update notifications. Publisher will send webhook when update completes if operation takes longer than immediate response time.
|
|
2178
2314
|
*/
|
|
2179
2315
|
/**
|
|
2180
|
-
* Response payload for update_media_buy task
|
|
2316
|
+
* Response payload for update_media_buy task. Returns either complete success data OR error information, never both. This enforces atomic operation semantics - updates are either fully applied or not applied at all.
|
|
2181
2317
|
*/
|
|
2182
|
-
export
|
|
2318
|
+
export type UpdateMediaBuyResponse = {
|
|
2183
2319
|
/**
|
|
2184
2320
|
* Publisher's identifier for the media buy
|
|
2185
2321
|
*/
|
|
@@ -2205,11 +2341,14 @@ export interface UpdateMediaBuyResponse {
|
|
|
2205
2341
|
*/
|
|
2206
2342
|
buyer_ref: string;
|
|
2207
2343
|
}[];
|
|
2344
|
+
} | {
|
|
2208
2345
|
/**
|
|
2209
|
-
*
|
|
2346
|
+
* Array of errors explaining why the operation failed
|
|
2347
|
+
*
|
|
2348
|
+
* @minItems 1
|
|
2210
2349
|
*/
|
|
2211
|
-
errors
|
|
2212
|
-
}
|
|
2350
|
+
errors: [Error, ...Error[]];
|
|
2351
|
+
};
|
|
2213
2352
|
/**
|
|
2214
2353
|
* Standard error structure for task-specific errors and warnings
|
|
2215
2354
|
*/
|
|
@@ -2611,18 +2750,21 @@ export interface ProvidePerformanceFeedbackRequest {
|
|
|
2611
2750
|
feedback_source?: 'buyer_attribution' | 'third_party_measurement' | 'platform_analytics' | 'verification_partner';
|
|
2612
2751
|
}
|
|
2613
2752
|
/**
|
|
2614
|
-
* Response payload for provide_performance_feedback task
|
|
2753
|
+
* Response payload for provide_performance_feedback task. Returns either success confirmation OR error information, never both.
|
|
2615
2754
|
*/
|
|
2616
|
-
export
|
|
2755
|
+
export type ProvidePerformanceFeedbackResponse = {
|
|
2617
2756
|
/**
|
|
2618
2757
|
* Whether the performance feedback was successfully received
|
|
2619
2758
|
*/
|
|
2620
|
-
success:
|
|
2759
|
+
success: true;
|
|
2760
|
+
} | {
|
|
2621
2761
|
/**
|
|
2622
|
-
*
|
|
2762
|
+
* Array of errors explaining why feedback was rejected (e.g., invalid measurement period, missing campaign data)
|
|
2763
|
+
*
|
|
2764
|
+
* @minItems 1
|
|
2623
2765
|
*/
|
|
2624
|
-
errors
|
|
2625
|
-
}
|
|
2766
|
+
errors: [Error, ...Error[]];
|
|
2767
|
+
};
|
|
2626
2768
|
/**
|
|
2627
2769
|
* Standard error structure for task-specific errors and warnings
|
|
2628
2770
|
*/
|
|
@@ -2709,22 +2851,25 @@ export interface WebhookAsset {
|
|
|
2709
2851
|
* CSS stylesheet asset
|
|
2710
2852
|
*/
|
|
2711
2853
|
/**
|
|
2712
|
-
*
|
|
2854
|
+
* Response containing the transformed or generated creative manifest, ready for use with preview_creative or sync_creatives. Returns either the complete creative manifest OR error information, never both.
|
|
2713
2855
|
*/
|
|
2714
|
-
export
|
|
2856
|
+
export type BuildCreativeResponse = {
|
|
2715
2857
|
creative_manifest: CreativeManifest;
|
|
2858
|
+
} | {
|
|
2716
2859
|
/**
|
|
2717
|
-
*
|
|
2860
|
+
* Array of errors explaining why creative generation failed
|
|
2861
|
+
*
|
|
2862
|
+
* @minItems 1
|
|
2718
2863
|
*/
|
|
2719
|
-
errors
|
|
2720
|
-
}
|
|
2864
|
+
errors: [Error, ...Error[]];
|
|
2865
|
+
};
|
|
2721
2866
|
/**
|
|
2722
|
-
*
|
|
2867
|
+
* VAST (Video Ad Serving Template) tag for third-party video ad serving
|
|
2723
2868
|
*/
|
|
2724
2869
|
/**
|
|
2725
|
-
*
|
|
2870
|
+
* Request to generate previews of one or more creative manifests. Accepts either a single creative request or an array of requests for batch processing.
|
|
2726
2871
|
*/
|
|
2727
|
-
export
|
|
2872
|
+
export type PreviewCreativeRequest = {
|
|
2728
2873
|
format_id: FormatID;
|
|
2729
2874
|
creative_manifest: CreativeManifest;
|
|
2730
2875
|
/**
|
|
@@ -2750,14 +2895,112 @@ export interface PreviewCreativeRequest {
|
|
|
2750
2895
|
* Specific template ID for custom format rendering
|
|
2751
2896
|
*/
|
|
2752
2897
|
template_id?: string;
|
|
2753
|
-
|
|
2898
|
+
/**
|
|
2899
|
+
* Output format for previews. 'url' returns preview_url (iframe-embeddable URL), 'html' returns preview_html (raw HTML for direct embedding). Default: 'url' for backward compatibility.
|
|
2900
|
+
*/
|
|
2901
|
+
output_format?: 'url' | 'html';
|
|
2902
|
+
} | {
|
|
2903
|
+
/**
|
|
2904
|
+
* Array of preview requests (1-50 items). Each follows the single request structure.
|
|
2905
|
+
*
|
|
2906
|
+
* @minItems 1
|
|
2907
|
+
* @maxItems 50
|
|
2908
|
+
*/
|
|
2909
|
+
requests: [
|
|
2910
|
+
{
|
|
2911
|
+
format_id: FormatID2;
|
|
2912
|
+
creative_manifest: CreativeManifest1;
|
|
2913
|
+
/**
|
|
2914
|
+
* Array of input sets for generating multiple preview variants
|
|
2915
|
+
*/
|
|
2916
|
+
inputs?: {
|
|
2917
|
+
/**
|
|
2918
|
+
* Human-readable name for this input set
|
|
2919
|
+
*/
|
|
2920
|
+
name: string;
|
|
2921
|
+
/**
|
|
2922
|
+
* Macro values to use for this preview
|
|
2923
|
+
*/
|
|
2924
|
+
macros?: {
|
|
2925
|
+
[k: string]: string;
|
|
2926
|
+
};
|
|
2927
|
+
/**
|
|
2928
|
+
* Natural language description of the context for AI-generated content
|
|
2929
|
+
*/
|
|
2930
|
+
context_description?: string;
|
|
2931
|
+
}[];
|
|
2932
|
+
/**
|
|
2933
|
+
* Specific template ID for custom format rendering
|
|
2934
|
+
*/
|
|
2935
|
+
template_id?: string;
|
|
2936
|
+
/**
|
|
2937
|
+
* Output format for this preview. 'url' returns preview_url, 'html' returns preview_html.
|
|
2938
|
+
*/
|
|
2939
|
+
output_format?: 'url' | 'html';
|
|
2940
|
+
},
|
|
2941
|
+
...{
|
|
2942
|
+
format_id: FormatID2;
|
|
2943
|
+
creative_manifest: CreativeManifest1;
|
|
2944
|
+
/**
|
|
2945
|
+
* Array of input sets for generating multiple preview variants
|
|
2946
|
+
*/
|
|
2947
|
+
inputs?: {
|
|
2948
|
+
/**
|
|
2949
|
+
* Human-readable name for this input set
|
|
2950
|
+
*/
|
|
2951
|
+
name: string;
|
|
2952
|
+
/**
|
|
2953
|
+
* Macro values to use for this preview
|
|
2954
|
+
*/
|
|
2955
|
+
macros?: {
|
|
2956
|
+
[k: string]: string;
|
|
2957
|
+
};
|
|
2958
|
+
/**
|
|
2959
|
+
* Natural language description of the context for AI-generated content
|
|
2960
|
+
*/
|
|
2961
|
+
context_description?: string;
|
|
2962
|
+
}[];
|
|
2963
|
+
/**
|
|
2964
|
+
* Specific template ID for custom format rendering
|
|
2965
|
+
*/
|
|
2966
|
+
template_id?: string;
|
|
2967
|
+
/**
|
|
2968
|
+
* Output format for this preview. 'url' returns preview_url, 'html' returns preview_html.
|
|
2969
|
+
*/
|
|
2970
|
+
output_format?: 'url' | 'html';
|
|
2971
|
+
}[]
|
|
2972
|
+
];
|
|
2973
|
+
/**
|
|
2974
|
+
* Default output format for all requests in this batch. Individual requests can override this. 'url' returns preview_url (iframe-embeddable URL), 'html' returns preview_html (raw HTML for direct embedding).
|
|
2975
|
+
*/
|
|
2976
|
+
output_format?: 'url' | 'html';
|
|
2977
|
+
};
|
|
2754
2978
|
/**
|
|
2755
|
-
*
|
|
2979
|
+
* VAST (Video Ad Serving Template) tag for third-party video ad serving
|
|
2756
2980
|
*/
|
|
2981
|
+
export interface CreativeManifest1 {
|
|
2982
|
+
format_id: FormatID1;
|
|
2983
|
+
/**
|
|
2984
|
+
* Product name or offering being advertised. Maps to promoted_offerings in create_media_buy request to associate creative with the product being promoted.
|
|
2985
|
+
*/
|
|
2986
|
+
promoted_offering?: string;
|
|
2987
|
+
/**
|
|
2988
|
+
* Map of asset IDs to actual asset content. Each key MUST match an asset_id from the format's assets_required array (e.g., 'banner_image', 'clickthrough_url', 'video_file', 'vast_tag'). The asset_id is the technical identifier used to match assets to format requirements.
|
|
2989
|
+
*
|
|
2990
|
+
* IMPORTANT: Creative manifest validation MUST be performed in the context of the format specification. The format defines what type each asset_id should be, which eliminates any validation ambiguity.
|
|
2991
|
+
*/
|
|
2992
|
+
assets: {
|
|
2993
|
+
/**
|
|
2994
|
+
* This interface was referenced by `undefined`'s JSON-Schema definition
|
|
2995
|
+
* via the `patternProperty` "^[a-z0-9_]+$".
|
|
2996
|
+
*/
|
|
2997
|
+
[k: string]: ImageAsset | VideoAsset | AudioAsset | VASTAsset | TextAsset | URLAsset | HTMLAsset | JavaScriptAsset | WebhookAsset | CSSAsset | DAASTAsset | PromotedOfferings;
|
|
2998
|
+
};
|
|
2999
|
+
}
|
|
2757
3000
|
/**
|
|
2758
|
-
* Response containing preview links for
|
|
3001
|
+
* Response containing preview links for one or more creatives. Format matches the request: single preview response for single requests, batch results for batch requests.
|
|
2759
3002
|
*/
|
|
2760
|
-
export
|
|
3003
|
+
export type PreviewCreativeResponse = {
|
|
2761
3004
|
/**
|
|
2762
3005
|
* Array of preview variants. Each preview corresponds to an input set from the request. If no inputs were provided, returns a single default preview.
|
|
2763
3006
|
*
|
|
@@ -2774,92 +3017,7 @@ export interface PreviewCreativeResponse {
|
|
|
2774
3017
|
*
|
|
2775
3018
|
* @minItems 1
|
|
2776
3019
|
*/
|
|
2777
|
-
renders: [
|
|
2778
|
-
{
|
|
2779
|
-
/**
|
|
2780
|
-
* Unique identifier for this rendered piece within the variant
|
|
2781
|
-
*/
|
|
2782
|
-
render_id: string;
|
|
2783
|
-
/**
|
|
2784
|
-
* URL to an HTML page that renders this piece. Can be embedded in an iframe. Handles all rendering complexity internally (images, video players, audio players, interactive content, etc.).
|
|
2785
|
-
*/
|
|
2786
|
-
preview_url: string;
|
|
2787
|
-
/**
|
|
2788
|
-
* Semantic role of this rendered piece. Use 'primary' for main content, 'companion' for associated banners, descriptive strings for device variants or custom roles.
|
|
2789
|
-
*/
|
|
2790
|
-
role: string;
|
|
2791
|
-
/**
|
|
2792
|
-
* Dimensions for this rendered piece. For companion ads with multiple sizes, this specifies which size this piece is.
|
|
2793
|
-
*/
|
|
2794
|
-
dimensions?: {
|
|
2795
|
-
width: number;
|
|
2796
|
-
height: number;
|
|
2797
|
-
};
|
|
2798
|
-
/**
|
|
2799
|
-
* Optional security and embedding metadata for safe iframe integration
|
|
2800
|
-
*/
|
|
2801
|
-
embedding?: {
|
|
2802
|
-
/**
|
|
2803
|
-
* Recommended iframe sandbox attribute value (e.g., 'allow-scripts allow-same-origin')
|
|
2804
|
-
*/
|
|
2805
|
-
recommended_sandbox?: string;
|
|
2806
|
-
/**
|
|
2807
|
-
* Whether this output requires HTTPS for secure embedding
|
|
2808
|
-
*/
|
|
2809
|
-
requires_https?: boolean;
|
|
2810
|
-
/**
|
|
2811
|
-
* Whether this output supports fullscreen mode
|
|
2812
|
-
*/
|
|
2813
|
-
supports_fullscreen?: boolean;
|
|
2814
|
-
/**
|
|
2815
|
-
* Content Security Policy requirements for embedding
|
|
2816
|
-
*/
|
|
2817
|
-
csp_policy?: string;
|
|
2818
|
-
};
|
|
2819
|
-
},
|
|
2820
|
-
...{
|
|
2821
|
-
/**
|
|
2822
|
-
* Unique identifier for this rendered piece within the variant
|
|
2823
|
-
*/
|
|
2824
|
-
render_id: string;
|
|
2825
|
-
/**
|
|
2826
|
-
* URL to an HTML page that renders this piece. Can be embedded in an iframe. Handles all rendering complexity internally (images, video players, audio players, interactive content, etc.).
|
|
2827
|
-
*/
|
|
2828
|
-
preview_url: string;
|
|
2829
|
-
/**
|
|
2830
|
-
* Semantic role of this rendered piece. Use 'primary' for main content, 'companion' for associated banners, descriptive strings for device variants or custom roles.
|
|
2831
|
-
*/
|
|
2832
|
-
role: string;
|
|
2833
|
-
/**
|
|
2834
|
-
* Dimensions for this rendered piece. For companion ads with multiple sizes, this specifies which size this piece is.
|
|
2835
|
-
*/
|
|
2836
|
-
dimensions?: {
|
|
2837
|
-
width: number;
|
|
2838
|
-
height: number;
|
|
2839
|
-
};
|
|
2840
|
-
/**
|
|
2841
|
-
* Optional security and embedding metadata for safe iframe integration
|
|
2842
|
-
*/
|
|
2843
|
-
embedding?: {
|
|
2844
|
-
/**
|
|
2845
|
-
* Recommended iframe sandbox attribute value (e.g., 'allow-scripts allow-same-origin')
|
|
2846
|
-
*/
|
|
2847
|
-
recommended_sandbox?: string;
|
|
2848
|
-
/**
|
|
2849
|
-
* Whether this output requires HTTPS for secure embedding
|
|
2850
|
-
*/
|
|
2851
|
-
requires_https?: boolean;
|
|
2852
|
-
/**
|
|
2853
|
-
* Whether this output supports fullscreen mode
|
|
2854
|
-
*/
|
|
2855
|
-
supports_fullscreen?: boolean;
|
|
2856
|
-
/**
|
|
2857
|
-
* Content Security Policy requirements for embedding
|
|
2858
|
-
*/
|
|
2859
|
-
csp_policy?: string;
|
|
2860
|
-
};
|
|
2861
|
-
}[]
|
|
2862
|
-
];
|
|
3020
|
+
renders: [PreviewRender, ...PreviewRender[]];
|
|
2863
3021
|
/**
|
|
2864
3022
|
* The input parameters that generated this preview variant. Echoes back the request input or shows defaults used.
|
|
2865
3023
|
*/
|
|
@@ -2890,92 +3048,7 @@ export interface PreviewCreativeResponse {
|
|
|
2890
3048
|
*
|
|
2891
3049
|
* @minItems 1
|
|
2892
3050
|
*/
|
|
2893
|
-
renders: [
|
|
2894
|
-
{
|
|
2895
|
-
/**
|
|
2896
|
-
* Unique identifier for this rendered piece within the variant
|
|
2897
|
-
*/
|
|
2898
|
-
render_id: string;
|
|
2899
|
-
/**
|
|
2900
|
-
* URL to an HTML page that renders this piece. Can be embedded in an iframe. Handles all rendering complexity internally (images, video players, audio players, interactive content, etc.).
|
|
2901
|
-
*/
|
|
2902
|
-
preview_url: string;
|
|
2903
|
-
/**
|
|
2904
|
-
* Semantic role of this rendered piece. Use 'primary' for main content, 'companion' for associated banners, descriptive strings for device variants or custom roles.
|
|
2905
|
-
*/
|
|
2906
|
-
role: string;
|
|
2907
|
-
/**
|
|
2908
|
-
* Dimensions for this rendered piece. For companion ads with multiple sizes, this specifies which size this piece is.
|
|
2909
|
-
*/
|
|
2910
|
-
dimensions?: {
|
|
2911
|
-
width: number;
|
|
2912
|
-
height: number;
|
|
2913
|
-
};
|
|
2914
|
-
/**
|
|
2915
|
-
* Optional security and embedding metadata for safe iframe integration
|
|
2916
|
-
*/
|
|
2917
|
-
embedding?: {
|
|
2918
|
-
/**
|
|
2919
|
-
* Recommended iframe sandbox attribute value (e.g., 'allow-scripts allow-same-origin')
|
|
2920
|
-
*/
|
|
2921
|
-
recommended_sandbox?: string;
|
|
2922
|
-
/**
|
|
2923
|
-
* Whether this output requires HTTPS for secure embedding
|
|
2924
|
-
*/
|
|
2925
|
-
requires_https?: boolean;
|
|
2926
|
-
/**
|
|
2927
|
-
* Whether this output supports fullscreen mode
|
|
2928
|
-
*/
|
|
2929
|
-
supports_fullscreen?: boolean;
|
|
2930
|
-
/**
|
|
2931
|
-
* Content Security Policy requirements for embedding
|
|
2932
|
-
*/
|
|
2933
|
-
csp_policy?: string;
|
|
2934
|
-
};
|
|
2935
|
-
},
|
|
2936
|
-
...{
|
|
2937
|
-
/**
|
|
2938
|
-
* Unique identifier for this rendered piece within the variant
|
|
2939
|
-
*/
|
|
2940
|
-
render_id: string;
|
|
2941
|
-
/**
|
|
2942
|
-
* URL to an HTML page that renders this piece. Can be embedded in an iframe. Handles all rendering complexity internally (images, video players, audio players, interactive content, etc.).
|
|
2943
|
-
*/
|
|
2944
|
-
preview_url: string;
|
|
2945
|
-
/**
|
|
2946
|
-
* Semantic role of this rendered piece. Use 'primary' for main content, 'companion' for associated banners, descriptive strings for device variants or custom roles.
|
|
2947
|
-
*/
|
|
2948
|
-
role: string;
|
|
2949
|
-
/**
|
|
2950
|
-
* Dimensions for this rendered piece. For companion ads with multiple sizes, this specifies which size this piece is.
|
|
2951
|
-
*/
|
|
2952
|
-
dimensions?: {
|
|
2953
|
-
width: number;
|
|
2954
|
-
height: number;
|
|
2955
|
-
};
|
|
2956
|
-
/**
|
|
2957
|
-
* Optional security and embedding metadata for safe iframe integration
|
|
2958
|
-
*/
|
|
2959
|
-
embedding?: {
|
|
2960
|
-
/**
|
|
2961
|
-
* Recommended iframe sandbox attribute value (e.g., 'allow-scripts allow-same-origin')
|
|
2962
|
-
*/
|
|
2963
|
-
recommended_sandbox?: string;
|
|
2964
|
-
/**
|
|
2965
|
-
* Whether this output requires HTTPS for secure embedding
|
|
2966
|
-
*/
|
|
2967
|
-
requires_https?: boolean;
|
|
2968
|
-
/**
|
|
2969
|
-
* Whether this output supports fullscreen mode
|
|
2970
|
-
*/
|
|
2971
|
-
supports_fullscreen?: boolean;
|
|
2972
|
-
/**
|
|
2973
|
-
* Content Security Policy requirements for embedding
|
|
2974
|
-
*/
|
|
2975
|
-
csp_policy?: string;
|
|
2976
|
-
};
|
|
2977
|
-
}[]
|
|
2978
|
-
];
|
|
3051
|
+
renders: [PreviewRender, ...PreviewRender[]];
|
|
2979
3052
|
/**
|
|
2980
3053
|
* The input parameters that generated this preview variant. Echoes back the request input or shows defaults used.
|
|
2981
3054
|
*/
|
|
@@ -3005,7 +3078,198 @@ export interface PreviewCreativeResponse {
|
|
|
3005
3078
|
* ISO 8601 timestamp when preview links expire
|
|
3006
3079
|
*/
|
|
3007
3080
|
expires_at: string;
|
|
3008
|
-
}
|
|
3081
|
+
} | {
|
|
3082
|
+
/**
|
|
3083
|
+
* Array of preview results corresponding to each request in the same order. results[0] is the result for requests[0], results[1] for requests[1], etc. Order is guaranteed even when some requests fail. Each result contains either a successful preview response or an error.
|
|
3084
|
+
*
|
|
3085
|
+
* @minItems 1
|
|
3086
|
+
*/
|
|
3087
|
+
results: [
|
|
3088
|
+
({
|
|
3089
|
+
success?: true;
|
|
3090
|
+
} | {
|
|
3091
|
+
success?: false;
|
|
3092
|
+
}),
|
|
3093
|
+
...({
|
|
3094
|
+
success?: true;
|
|
3095
|
+
} | {
|
|
3096
|
+
success?: false;
|
|
3097
|
+
})[]
|
|
3098
|
+
];
|
|
3099
|
+
};
|
|
3100
|
+
/**
|
|
3101
|
+
* A single rendered piece of a creative preview with discriminated output format
|
|
3102
|
+
*/
|
|
3103
|
+
export type PreviewRender = {
|
|
3104
|
+
/**
|
|
3105
|
+
* Unique identifier for this rendered piece within the variant
|
|
3106
|
+
*/
|
|
3107
|
+
render_id: string;
|
|
3108
|
+
/**
|
|
3109
|
+
* Discriminator indicating preview_url is provided
|
|
3110
|
+
*/
|
|
3111
|
+
output_format: 'url';
|
|
3112
|
+
/**
|
|
3113
|
+
* URL to an HTML page that renders this piece. Can be embedded in an iframe.
|
|
3114
|
+
*/
|
|
3115
|
+
preview_url: string;
|
|
3116
|
+
/**
|
|
3117
|
+
* Semantic role of this rendered piece. Use 'primary' for main content, 'companion' for associated banners, descriptive strings for device variants or custom roles.
|
|
3118
|
+
*/
|
|
3119
|
+
role: string;
|
|
3120
|
+
/**
|
|
3121
|
+
* Dimensions for this rendered piece
|
|
3122
|
+
*/
|
|
3123
|
+
dimensions?: {
|
|
3124
|
+
width: number;
|
|
3125
|
+
height: number;
|
|
3126
|
+
};
|
|
3127
|
+
/**
|
|
3128
|
+
* Optional security and embedding metadata for safe iframe integration
|
|
3129
|
+
*/
|
|
3130
|
+
embedding?: {
|
|
3131
|
+
/**
|
|
3132
|
+
* Recommended iframe sandbox attribute value (e.g., 'allow-scripts allow-same-origin')
|
|
3133
|
+
*/
|
|
3134
|
+
recommended_sandbox?: string;
|
|
3135
|
+
/**
|
|
3136
|
+
* Whether this output requires HTTPS for secure embedding
|
|
3137
|
+
*/
|
|
3138
|
+
requires_https?: boolean;
|
|
3139
|
+
/**
|
|
3140
|
+
* Whether this output supports fullscreen mode
|
|
3141
|
+
*/
|
|
3142
|
+
supports_fullscreen?: boolean;
|
|
3143
|
+
/**
|
|
3144
|
+
* Content Security Policy requirements for embedding
|
|
3145
|
+
*/
|
|
3146
|
+
csp_policy?: string;
|
|
3147
|
+
};
|
|
3148
|
+
} | {
|
|
3149
|
+
/**
|
|
3150
|
+
* Unique identifier for this rendered piece within the variant
|
|
3151
|
+
*/
|
|
3152
|
+
render_id: string;
|
|
3153
|
+
/**
|
|
3154
|
+
* Discriminator indicating preview_html is provided
|
|
3155
|
+
*/
|
|
3156
|
+
output_format: 'html';
|
|
3157
|
+
/**
|
|
3158
|
+
* Raw HTML for this rendered piece. Can be embedded directly in the page without iframe. Security warning: Only use with trusted creative agents as this bypasses iframe sandboxing.
|
|
3159
|
+
*/
|
|
3160
|
+
preview_html: string;
|
|
3161
|
+
/**
|
|
3162
|
+
* Semantic role of this rendered piece. Use 'primary' for main content, 'companion' for associated banners, descriptive strings for device variants or custom roles.
|
|
3163
|
+
*/
|
|
3164
|
+
role: string;
|
|
3165
|
+
/**
|
|
3166
|
+
* Dimensions for this rendered piece
|
|
3167
|
+
*/
|
|
3168
|
+
dimensions?: {
|
|
3169
|
+
width: number;
|
|
3170
|
+
height: number;
|
|
3171
|
+
};
|
|
3172
|
+
/**
|
|
3173
|
+
* Optional security and embedding metadata
|
|
3174
|
+
*/
|
|
3175
|
+
embedding?: {
|
|
3176
|
+
/**
|
|
3177
|
+
* Recommended iframe sandbox attribute value (e.g., 'allow-scripts allow-same-origin')
|
|
3178
|
+
*/
|
|
3179
|
+
recommended_sandbox?: string;
|
|
3180
|
+
/**
|
|
3181
|
+
* Whether this output requires HTTPS for secure embedding
|
|
3182
|
+
*/
|
|
3183
|
+
requires_https?: boolean;
|
|
3184
|
+
/**
|
|
3185
|
+
* Whether this output supports fullscreen mode
|
|
3186
|
+
*/
|
|
3187
|
+
supports_fullscreen?: boolean;
|
|
3188
|
+
/**
|
|
3189
|
+
* Content Security Policy requirements for embedding
|
|
3190
|
+
*/
|
|
3191
|
+
csp_policy?: string;
|
|
3192
|
+
};
|
|
3193
|
+
} | {
|
|
3194
|
+
/**
|
|
3195
|
+
* Unique identifier for this rendered piece within the variant
|
|
3196
|
+
*/
|
|
3197
|
+
render_id: string;
|
|
3198
|
+
/**
|
|
3199
|
+
* Discriminator indicating both preview_url and preview_html are provided
|
|
3200
|
+
*/
|
|
3201
|
+
output_format: 'both';
|
|
3202
|
+
/**
|
|
3203
|
+
* URL to an HTML page that renders this piece. Can be embedded in an iframe.
|
|
3204
|
+
*/
|
|
3205
|
+
preview_url: string;
|
|
3206
|
+
/**
|
|
3207
|
+
* Raw HTML for this rendered piece. Can be embedded directly in the page without iframe. Security warning: Only use with trusted creative agents as this bypasses iframe sandboxing.
|
|
3208
|
+
*/
|
|
3209
|
+
preview_html: string;
|
|
3210
|
+
/**
|
|
3211
|
+
* Semantic role of this rendered piece. Use 'primary' for main content, 'companion' for associated banners, descriptive strings for device variants or custom roles.
|
|
3212
|
+
*/
|
|
3213
|
+
role: string;
|
|
3214
|
+
/**
|
|
3215
|
+
* Dimensions for this rendered piece
|
|
3216
|
+
*/
|
|
3217
|
+
dimensions?: {
|
|
3218
|
+
width: number;
|
|
3219
|
+
height: number;
|
|
3220
|
+
};
|
|
3221
|
+
/**
|
|
3222
|
+
* Optional security and embedding metadata for safe iframe integration
|
|
3223
|
+
*/
|
|
3224
|
+
embedding?: {
|
|
3225
|
+
/**
|
|
3226
|
+
* Recommended iframe sandbox attribute value (e.g., 'allow-scripts allow-same-origin')
|
|
3227
|
+
*/
|
|
3228
|
+
recommended_sandbox?: string;
|
|
3229
|
+
/**
|
|
3230
|
+
* Whether this output requires HTTPS for secure embedding
|
|
3231
|
+
*/
|
|
3232
|
+
requires_https?: boolean;
|
|
3233
|
+
/**
|
|
3234
|
+
* Whether this output supports fullscreen mode
|
|
3235
|
+
*/
|
|
3236
|
+
supports_fullscreen?: boolean;
|
|
3237
|
+
/**
|
|
3238
|
+
* Content Security Policy requirements for embedding
|
|
3239
|
+
*/
|
|
3240
|
+
csp_policy?: string;
|
|
3241
|
+
};
|
|
3242
|
+
};
|
|
3243
|
+
/**
|
|
3244
|
+
* A destination platform where signals can be activated (DSP, sales agent, etc.)
|
|
3245
|
+
*/
|
|
3246
|
+
export type Destination = {
|
|
3247
|
+
/**
|
|
3248
|
+
* Discriminator indicating this is a platform-based destination
|
|
3249
|
+
*/
|
|
3250
|
+
type: 'platform';
|
|
3251
|
+
/**
|
|
3252
|
+
* Platform identifier for DSPs (e.g., 'the-trade-desk', 'amazon-dsp')
|
|
3253
|
+
*/
|
|
3254
|
+
platform: string;
|
|
3255
|
+
/**
|
|
3256
|
+
* Optional account identifier on the platform
|
|
3257
|
+
*/
|
|
3258
|
+
account?: string;
|
|
3259
|
+
} | {
|
|
3260
|
+
/**
|
|
3261
|
+
* Discriminator indicating this is an agent URL-based destination
|
|
3262
|
+
*/
|
|
3263
|
+
type: 'agent';
|
|
3264
|
+
/**
|
|
3265
|
+
* URL identifying the destination agent (for sales agents, etc.)
|
|
3266
|
+
*/
|
|
3267
|
+
agent_url: string;
|
|
3268
|
+
/**
|
|
3269
|
+
* Optional account identifier on the agent
|
|
3270
|
+
*/
|
|
3271
|
+
account?: string;
|
|
3272
|
+
};
|
|
3009
3273
|
/**
|
|
3010
3274
|
* Request parameters for discovering signals based on description
|
|
3011
3275
|
*/
|
|
@@ -3015,26 +3279,15 @@ export interface GetSignalsRequest {
|
|
|
3015
3279
|
*/
|
|
3016
3280
|
signal_spec: string;
|
|
3017
3281
|
/**
|
|
3018
|
-
*
|
|
3282
|
+
* Destination platforms where signals need to be activated
|
|
3019
3283
|
*/
|
|
3020
3284
|
deliver_to: {
|
|
3021
3285
|
/**
|
|
3022
|
-
*
|
|
3023
|
-
|
|
3024
|
-
|
|
3025
|
-
/**
|
|
3026
|
-
* Specific platform-account combinations
|
|
3286
|
+
* List of destination platforms (DSPs, sales agents, etc.). If the authenticated caller matches one of these destinations, activation keys will be included in the response.
|
|
3287
|
+
*
|
|
3288
|
+
* @minItems 1
|
|
3027
3289
|
*/
|
|
3028
|
-
|
|
3029
|
-
/**
|
|
3030
|
-
* Platform identifier
|
|
3031
|
-
*/
|
|
3032
|
-
platform: string;
|
|
3033
|
-
/**
|
|
3034
|
-
* Account identifier on that platform
|
|
3035
|
-
*/
|
|
3036
|
-
account: string;
|
|
3037
|
-
}[];
|
|
3290
|
+
destinations: [Destination, ...Destination[]];
|
|
3038
3291
|
/**
|
|
3039
3292
|
* Countries where signals will be used (ISO codes)
|
|
3040
3293
|
*/
|
|
@@ -3066,6 +3319,114 @@ export interface GetSignalsRequest {
|
|
|
3066
3319
|
*/
|
|
3067
3320
|
max_results?: number;
|
|
3068
3321
|
}
|
|
3322
|
+
/**
|
|
3323
|
+
* A signal deployment to a specific destination platform with activation status and key
|
|
3324
|
+
*/
|
|
3325
|
+
export type Deployment = {
|
|
3326
|
+
/**
|
|
3327
|
+
* Discriminator indicating this is a platform-based deployment
|
|
3328
|
+
*/
|
|
3329
|
+
type: 'platform';
|
|
3330
|
+
/**
|
|
3331
|
+
* Platform identifier for DSPs
|
|
3332
|
+
*/
|
|
3333
|
+
platform: string;
|
|
3334
|
+
/**
|
|
3335
|
+
* Account identifier if applicable
|
|
3336
|
+
*/
|
|
3337
|
+
account?: string;
|
|
3338
|
+
/**
|
|
3339
|
+
* Whether signal is currently active on this destination
|
|
3340
|
+
*/
|
|
3341
|
+
is_live: boolean;
|
|
3342
|
+
activation_key?: ActivationKey;
|
|
3343
|
+
/**
|
|
3344
|
+
* Estimated time to activate if not live, or to complete activation if in progress
|
|
3345
|
+
*/
|
|
3346
|
+
estimated_activation_duration_minutes?: number;
|
|
3347
|
+
/**
|
|
3348
|
+
* Timestamp when activation completed (if is_live=true)
|
|
3349
|
+
*/
|
|
3350
|
+
deployed_at?: string;
|
|
3351
|
+
} | {
|
|
3352
|
+
/**
|
|
3353
|
+
* Discriminator indicating this is an agent URL-based deployment
|
|
3354
|
+
*/
|
|
3355
|
+
type: 'agent';
|
|
3356
|
+
/**
|
|
3357
|
+
* URL identifying the destination agent
|
|
3358
|
+
*/
|
|
3359
|
+
agent_url: string;
|
|
3360
|
+
/**
|
|
3361
|
+
* Account identifier if applicable
|
|
3362
|
+
*/
|
|
3363
|
+
account?: string;
|
|
3364
|
+
/**
|
|
3365
|
+
* Whether signal is currently active on this destination
|
|
3366
|
+
*/
|
|
3367
|
+
is_live: boolean;
|
|
3368
|
+
activation_key?: ActivationKey1;
|
|
3369
|
+
/**
|
|
3370
|
+
* Estimated time to activate if not live, or to complete activation if in progress
|
|
3371
|
+
*/
|
|
3372
|
+
estimated_activation_duration_minutes?: number;
|
|
3373
|
+
/**
|
|
3374
|
+
* Timestamp when activation completed (if is_live=true)
|
|
3375
|
+
*/
|
|
3376
|
+
deployed_at?: string;
|
|
3377
|
+
};
|
|
3378
|
+
/**
|
|
3379
|
+
* The key to use for targeting. Only present if is_live=true AND requester has access to this destination.
|
|
3380
|
+
*/
|
|
3381
|
+
export type ActivationKey = {
|
|
3382
|
+
/**
|
|
3383
|
+
* Segment ID based targeting
|
|
3384
|
+
*/
|
|
3385
|
+
type: 'segment_id';
|
|
3386
|
+
/**
|
|
3387
|
+
* The platform-specific segment identifier to use in campaign targeting
|
|
3388
|
+
*/
|
|
3389
|
+
segment_id: string;
|
|
3390
|
+
} | {
|
|
3391
|
+
/**
|
|
3392
|
+
* Key-value pair based targeting
|
|
3393
|
+
*/
|
|
3394
|
+
type: 'key_value';
|
|
3395
|
+
/**
|
|
3396
|
+
* The targeting parameter key
|
|
3397
|
+
*/
|
|
3398
|
+
key: string;
|
|
3399
|
+
/**
|
|
3400
|
+
* The targeting parameter value
|
|
3401
|
+
*/
|
|
3402
|
+
value: string;
|
|
3403
|
+
};
|
|
3404
|
+
/**
|
|
3405
|
+
* The key to use for targeting. Only present if is_live=true AND requester has access to this destination.
|
|
3406
|
+
*/
|
|
3407
|
+
export type ActivationKey1 = {
|
|
3408
|
+
/**
|
|
3409
|
+
* Segment ID based targeting
|
|
3410
|
+
*/
|
|
3411
|
+
type: 'segment_id';
|
|
3412
|
+
/**
|
|
3413
|
+
* The platform-specific segment identifier to use in campaign targeting
|
|
3414
|
+
*/
|
|
3415
|
+
segment_id: string;
|
|
3416
|
+
} | {
|
|
3417
|
+
/**
|
|
3418
|
+
* Key-value pair based targeting
|
|
3419
|
+
*/
|
|
3420
|
+
type: 'key_value';
|
|
3421
|
+
/**
|
|
3422
|
+
* The targeting parameter key
|
|
3423
|
+
*/
|
|
3424
|
+
key: string;
|
|
3425
|
+
/**
|
|
3426
|
+
* The targeting parameter value
|
|
3427
|
+
*/
|
|
3428
|
+
value: string;
|
|
3429
|
+
};
|
|
3069
3430
|
/**
|
|
3070
3431
|
* Response payload for get_signals task
|
|
3071
3432
|
*/
|
|
@@ -3099,34 +3460,9 @@ export interface GetSignalsResponse {
|
|
|
3099
3460
|
*/
|
|
3100
3461
|
coverage_percentage: number;
|
|
3101
3462
|
/**
|
|
3102
|
-
* Array of
|
|
3463
|
+
* Array of destination deployments
|
|
3103
3464
|
*/
|
|
3104
|
-
deployments:
|
|
3105
|
-
/**
|
|
3106
|
-
* Platform name
|
|
3107
|
-
*/
|
|
3108
|
-
platform: string;
|
|
3109
|
-
/**
|
|
3110
|
-
* Specific account if applicable
|
|
3111
|
-
*/
|
|
3112
|
-
account?: string | null;
|
|
3113
|
-
/**
|
|
3114
|
-
* Whether signal is currently active
|
|
3115
|
-
*/
|
|
3116
|
-
is_live: boolean;
|
|
3117
|
-
/**
|
|
3118
|
-
* Deployment scope
|
|
3119
|
-
*/
|
|
3120
|
-
scope: 'platform-wide' | 'account-specific';
|
|
3121
|
-
/**
|
|
3122
|
-
* Platform-specific segment ID
|
|
3123
|
-
*/
|
|
3124
|
-
decisioning_platform_segment_id?: string;
|
|
3125
|
-
/**
|
|
3126
|
-
* Time to activate if not live
|
|
3127
|
-
*/
|
|
3128
|
-
estimated_activation_duration_minutes?: number;
|
|
3129
|
-
}[];
|
|
3465
|
+
deployments: Deployment[];
|
|
3130
3466
|
/**
|
|
3131
3467
|
* Pricing information
|
|
3132
3468
|
*/
|
|
@@ -3150,7 +3486,7 @@ export interface GetSignalsResponse {
|
|
|
3150
3486
|
* Standard error structure for task-specific errors and warnings
|
|
3151
3487
|
*/
|
|
3152
3488
|
/**
|
|
3153
|
-
*
|
|
3489
|
+
* A destination platform where signals can be activated (DSP, sales agent, etc.)
|
|
3154
3490
|
*/
|
|
3155
3491
|
export interface ActivateSignalRequest {
|
|
3156
3492
|
/**
|
|
@@ -3158,36 +3494,29 @@ export interface ActivateSignalRequest {
|
|
|
3158
3494
|
*/
|
|
3159
3495
|
signal_agent_segment_id: string;
|
|
3160
3496
|
/**
|
|
3161
|
-
*
|
|
3162
|
-
|
|
3163
|
-
|
|
3164
|
-
/**
|
|
3165
|
-
* Account identifier (required for account-specific activation)
|
|
3497
|
+
* Target destination(s) for activation. If the authenticated caller matches one of these destinations, activation keys will be included in the response.
|
|
3498
|
+
*
|
|
3499
|
+
* @minItems 1
|
|
3166
3500
|
*/
|
|
3167
|
-
|
|
3501
|
+
destinations: [Destination, ...Destination[]];
|
|
3168
3502
|
}
|
|
3169
3503
|
/**
|
|
3170
|
-
* Response payload for activate_signal task
|
|
3504
|
+
* Response payload for activate_signal task. Returns either complete success data OR error information, never both. This enforces atomic operation semantics - the signal is either fully activated or not activated at all.
|
|
3171
3505
|
*/
|
|
3172
|
-
export
|
|
3173
|
-
/**
|
|
3174
|
-
* The platform-specific ID to use once activated
|
|
3175
|
-
*/
|
|
3176
|
-
decisioning_platform_segment_id?: string;
|
|
3177
|
-
/**
|
|
3178
|
-
* Estimated time to complete (optional)
|
|
3179
|
-
*/
|
|
3180
|
-
estimated_activation_duration_minutes?: number;
|
|
3506
|
+
export type ActivateSignalResponse = {
|
|
3181
3507
|
/**
|
|
3182
|
-
*
|
|
3508
|
+
* Array of deployment results for each destination
|
|
3183
3509
|
*/
|
|
3184
|
-
|
|
3510
|
+
deployments: Deployment[];
|
|
3511
|
+
} | {
|
|
3185
3512
|
/**
|
|
3186
|
-
*
|
|
3513
|
+
* Array of errors explaining why activation failed (e.g., platform connectivity issues, signal definition problems, authentication failures)
|
|
3514
|
+
*
|
|
3515
|
+
* @minItems 1
|
|
3187
3516
|
*/
|
|
3188
|
-
errors
|
|
3189
|
-
}
|
|
3517
|
+
errors: [Error, ...Error[]];
|
|
3518
|
+
};
|
|
3190
3519
|
/**
|
|
3191
|
-
*
|
|
3520
|
+
* A signal deployment to a specific destination platform with activation status and key
|
|
3192
3521
|
*/
|
|
3193
3522
|
//# sourceMappingURL=tools.generated.d.ts.map
|