@adcp/client 3.7.1 → 3.8.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.js +42 -3
- package/dist/lib/adapters/content-standards-adapter.d.ts +106 -0
- package/dist/lib/adapters/content-standards-adapter.d.ts.map +1 -0
- package/dist/lib/adapters/content-standards-adapter.js +199 -0
- package/dist/lib/adapters/content-standards-adapter.js.map +1 -0
- package/dist/lib/adapters/index.d.ts +18 -0
- package/dist/lib/adapters/index.d.ts.map +1 -0
- package/dist/lib/adapters/index.js +41 -0
- package/dist/lib/adapters/index.js.map +1 -0
- package/dist/lib/adapters/property-list-adapter.d.ts +123 -0
- package/dist/lib/adapters/property-list-adapter.d.ts.map +1 -0
- package/dist/lib/adapters/property-list-adapter.js +212 -0
- package/dist/lib/adapters/property-list-adapter.js.map +1 -0
- package/dist/lib/adapters/proposal-manager.d.ts +142 -0
- package/dist/lib/adapters/proposal-manager.d.ts.map +1 -0
- package/dist/lib/adapters/proposal-manager.js +184 -0
- package/dist/lib/adapters/proposal-manager.js.map +1 -0
- package/dist/lib/adapters/si-session-manager.d.ts +161 -0
- package/dist/lib/adapters/si-session-manager.d.ts.map +1 -0
- package/dist/lib/adapters/si-session-manager.js +320 -0
- package/dist/lib/adapters/si-session-manager.js.map +1 -0
- package/dist/lib/agents/index.generated.d.ts +109 -33
- package/dist/lib/agents/index.generated.d.ts.map +1 -1
- package/dist/lib/agents/index.generated.js +162 -36
- package/dist/lib/agents/index.generated.js.map +1 -1
- package/dist/lib/core/ADCPMultiAgentClient.d.ts +5 -7
- package/dist/lib/core/ADCPMultiAgentClient.d.ts.map +1 -1
- package/dist/lib/core/ADCPMultiAgentClient.js +47 -35
- package/dist/lib/core/ADCPMultiAgentClient.js.map +1 -1
- package/dist/lib/core/AgentClient.d.ts +13 -6
- package/dist/lib/core/AgentClient.d.ts.map +1 -1
- package/dist/lib/core/AgentClient.js +23 -13
- package/dist/lib/core/AgentClient.js.map +1 -1
- package/dist/lib/core/AsyncHandler.d.ts +1 -2
- package/dist/lib/core/AsyncHandler.d.ts.map +1 -1
- package/dist/lib/core/AsyncHandler.js +0 -3
- package/dist/lib/core/AsyncHandler.js.map +1 -1
- package/dist/lib/core/ResponseValidator.d.ts.map +1 -1
- package/dist/lib/core/ResponseValidator.js +0 -1
- package/dist/lib/core/ResponseValidator.js.map +1 -1
- package/dist/lib/core/SingleAgentClient.d.ts +102 -10
- package/dist/lib/core/SingleAgentClient.d.ts.map +1 -1
- package/dist/lib/core/SingleAgentClient.js +244 -17
- package/dist/lib/core/SingleAgentClient.js.map +1 -1
- package/dist/lib/discovery/property-crawler.d.ts +13 -2
- package/dist/lib/discovery/property-crawler.d.ts.map +1 -1
- package/dist/lib/discovery/property-crawler.js +48 -13
- package/dist/lib/discovery/property-crawler.js.map +1 -1
- package/dist/lib/discovery/types.d.ts +7 -1
- package/dist/lib/discovery/types.d.ts.map +1 -1
- package/dist/lib/index.d.ts +13 -4
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +79 -5
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/types/core.generated.d.ts +502 -238
- package/dist/lib/types/core.generated.d.ts.map +1 -1
- package/dist/lib/types/core.generated.js +2 -2
- package/dist/lib/types/core.generated.js.map +1 -1
- package/dist/lib/types/schemas.generated.d.ts +7237 -2284
- package/dist/lib/types/schemas.generated.d.ts.map +1 -1
- package/dist/lib/types/schemas.generated.js +1368 -461
- package/dist/lib/types/schemas.generated.js.map +1 -1
- package/dist/lib/types/tools.generated.d.ts +3128 -507
- 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/capabilities.d.ts +98 -0
- package/dist/lib/utils/capabilities.d.ts.map +1 -0
- package/dist/lib/utils/capabilities.js +155 -0
- package/dist/lib/utils/capabilities.js.map +1 -0
- package/dist/lib/utils/creative-adapter.d.ts +87 -0
- package/dist/lib/utils/creative-adapter.d.ts.map +1 -0
- package/dist/lib/utils/creative-adapter.js +125 -0
- package/dist/lib/utils/creative-adapter.js.map +1 -0
- package/dist/lib/utils/format-assets.d.ts +4 -16
- package/dist/lib/utils/format-assets.d.ts.map +1 -1
- package/dist/lib/utils/format-assets.js +16 -14
- package/dist/lib/utils/format-assets.js.map +1 -1
- package/dist/lib/utils/format-renders.d.ts +82 -0
- package/dist/lib/utils/format-renders.d.ts.map +1 -0
- package/dist/lib/utils/format-renders.js +137 -0
- package/dist/lib/utils/format-renders.js.map +1 -0
- package/dist/lib/utils/index.d.ts +2 -1
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/lib/utils/index.js +13 -3
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/lib/utils/preview-normalizer.d.ts +109 -0
- package/dist/lib/utils/preview-normalizer.d.ts.map +1 -0
- package/dist/lib/utils/preview-normalizer.js +122 -0
- package/dist/lib/utils/preview-normalizer.js.map +1 -0
- package/dist/lib/utils/pricing-adapter.d.ts +121 -0
- package/dist/lib/utils/pricing-adapter.d.ts.map +1 -0
- package/dist/lib/utils/pricing-adapter.js +213 -0
- package/dist/lib/utils/pricing-adapter.js.map +1 -0
- package/dist/lib/utils/response-unwrapper.d.ts +2 -2
- package/dist/lib/utils/response-unwrapper.d.ts.map +1 -1
- package/dist/lib/utils/response-unwrapper.js +2 -2
- package/dist/lib/utils/response-unwrapper.js.map +1 -1
- package/dist/lib/version.d.ts +15 -7
- package/dist/lib/version.d.ts.map +1 -1
- package/dist/lib/version.js +20 -11
- package/dist/lib/version.js.map +1 -1
- package/package.json +3 -3
|
@@ -6,6 +6,14 @@ export type MediaBuyStatus = 'pending_activation' | 'active' | 'paused' | 'compl
|
|
|
6
6
|
* Budget pacing strategy
|
|
7
7
|
*/
|
|
8
8
|
export type Pacing = 'even' | 'asap' | 'front_loaded';
|
|
9
|
+
/**
|
|
10
|
+
* Metro area classification system (e.g., 'nielsen_dma', 'uk_itl2')
|
|
11
|
+
*/
|
|
12
|
+
export type MetroAreaSystem = 'nielsen_dma' | 'uk_itl1' | 'uk_itl2' | 'eurostat_nuts2' | 'custom';
|
|
13
|
+
/**
|
|
14
|
+
* Postal code system (e.g., 'us_zip', 'gb_outward'). System name encodes country and precision.
|
|
15
|
+
*/
|
|
16
|
+
export type PostalCodeSystem = 'us_zip' | 'us_zip_plus_four' | 'gb_outward' | 'gb_full' | 'ca_fsa' | 'ca_full' | 'de_plz' | 'fr_code_postal' | 'au_postcode';
|
|
9
17
|
/**
|
|
10
18
|
* Represents a purchased advertising campaign
|
|
11
19
|
*/
|
|
@@ -92,28 +100,44 @@ export interface Package {
|
|
|
92
100
|
*/
|
|
93
101
|
paused?: boolean;
|
|
94
102
|
ext?: ExtensionObject;
|
|
95
|
-
[k: string]: unknown;
|
|
103
|
+
[k: string]: unknown | undefined;
|
|
96
104
|
}
|
|
97
105
|
/**
|
|
98
106
|
* Optional geographic refinements for media buys. Most targeting should be expressed in the brief and handled by the publisher. These fields are primarily for geographic restrictions (RCT testing, regulatory compliance).
|
|
99
107
|
*/
|
|
100
108
|
export interface TargetingOverlay {
|
|
101
109
|
/**
|
|
102
|
-
* Restrict delivery to specific countries
|
|
110
|
+
* Restrict delivery to specific countries. ISO 3166-1 alpha-2 codes (e.g., 'US', 'GB', 'DE').
|
|
103
111
|
*/
|
|
104
|
-
|
|
112
|
+
geo_countries?: string[];
|
|
105
113
|
/**
|
|
106
|
-
* Restrict delivery to specific regions/states.
|
|
114
|
+
* Restrict delivery to specific regions/states. ISO 3166-2 subdivision codes (e.g., 'US-CA', 'GB-SCT').
|
|
107
115
|
*/
|
|
108
|
-
|
|
116
|
+
geo_regions?: string[];
|
|
109
117
|
/**
|
|
110
|
-
* Restrict delivery to specific metro areas
|
|
118
|
+
* Restrict delivery to specific metro areas. Each entry specifies the classification system and target values. Seller must declare supported systems in get_adcp_capabilities.
|
|
111
119
|
*/
|
|
112
|
-
|
|
120
|
+
geo_metros?: {
|
|
121
|
+
system: MetroAreaSystem;
|
|
122
|
+
/**
|
|
123
|
+
* Metro codes within the system (e.g., ['501', '602'] for Nielsen DMAs)
|
|
124
|
+
*
|
|
125
|
+
* @minItems 1
|
|
126
|
+
*/
|
|
127
|
+
values: [string, ...string[]];
|
|
128
|
+
}[];
|
|
113
129
|
/**
|
|
114
|
-
* Restrict delivery to specific postal
|
|
130
|
+
* Restrict delivery to specific postal areas. Each entry specifies the postal system and target values. Seller must declare supported systems in get_adcp_capabilities.
|
|
115
131
|
*/
|
|
116
|
-
|
|
132
|
+
geo_postal_areas?: {
|
|
133
|
+
system: PostalCodeSystem;
|
|
134
|
+
/**
|
|
135
|
+
* Postal codes within the system (e.g., ['10001', '10002'] for us_zip)
|
|
136
|
+
*
|
|
137
|
+
* @minItems 1
|
|
138
|
+
*/
|
|
139
|
+
values: [string, ...string[]];
|
|
140
|
+
}[];
|
|
117
141
|
/**
|
|
118
142
|
* AXE segment ID to include for targeting
|
|
119
143
|
*/
|
|
@@ -123,7 +147,7 @@ export interface TargetingOverlay {
|
|
|
123
147
|
*/
|
|
124
148
|
axe_exclude_segment?: string;
|
|
125
149
|
frequency_cap?: FrequencyCap;
|
|
126
|
-
[k: string]: unknown;
|
|
150
|
+
[k: string]: unknown | undefined;
|
|
127
151
|
}
|
|
128
152
|
/**
|
|
129
153
|
* Frequency capping settings for package-level application
|
|
@@ -133,7 +157,7 @@ export interface FrequencyCap {
|
|
|
133
157
|
* Minutes to suppress after impression
|
|
134
158
|
*/
|
|
135
159
|
suppress_minutes: number;
|
|
136
|
-
[k: string]: unknown;
|
|
160
|
+
[k: string]: unknown | undefined;
|
|
137
161
|
}
|
|
138
162
|
/**
|
|
139
163
|
* Assignment of a creative asset to a package with optional placement targeting. Used in create_media_buy and update_media_buy requests. Note: sync_creatives does not support placement_ids - use create/update_media_buy for placement-level targeting.
|
|
@@ -153,7 +177,7 @@ export interface CreativeAssignment {
|
|
|
153
177
|
* @minItems 1
|
|
154
178
|
*/
|
|
155
179
|
placement_ids?: [string, ...string[]];
|
|
156
|
-
[k: string]: unknown;
|
|
180
|
+
[k: string]: unknown | undefined;
|
|
157
181
|
}
|
|
158
182
|
/**
|
|
159
183
|
* Structured format identifier with agent URL and format name. Can reference: (1) a concrete format with fixed dimensions (id only), (2) a template format without parameters (id only), or (3) a template format with parameters (id + dimensions/duration). Template formats accept parameters in format_id while concrete formats have fixed dimensions in their definition. Parameterized format IDs create unique, specific format variants.
|
|
@@ -179,13 +203,13 @@ export interface FormatID {
|
|
|
179
203
|
* Duration in milliseconds for time-based formats (video, audio). When specified, creates a parameterized format ID. Omit to reference a template format without parameters.
|
|
180
204
|
*/
|
|
181
205
|
duration_ms?: number;
|
|
182
|
-
[k: string]: unknown;
|
|
206
|
+
[k: string]: unknown | undefined;
|
|
183
207
|
}
|
|
184
208
|
/**
|
|
185
209
|
* Extension object for platform-specific, vendor-namespaced parameters. Extensions are always optional and must be namespaced under a vendor/platform key (e.g., ext.gam, ext.roku). Used for custom capabilities, partner-specific configuration, and features being proposed for standardization.
|
|
186
210
|
*/
|
|
187
211
|
export interface ExtensionObject {
|
|
188
|
-
[k: string]: unknown;
|
|
212
|
+
[k: string]: unknown | undefined;
|
|
189
213
|
}
|
|
190
214
|
/**
|
|
191
215
|
* JavaScript module type
|
|
@@ -216,7 +240,7 @@ export type VASTAsset = {
|
|
|
216
240
|
* Tracking events supported by this VAST tag
|
|
217
241
|
*/
|
|
218
242
|
tracking_events?: VASTTrackingEvent[];
|
|
219
|
-
[k: string]: unknown;
|
|
243
|
+
[k: string]: unknown | undefined;
|
|
220
244
|
} | {
|
|
221
245
|
/**
|
|
222
246
|
* Discriminator indicating VAST is delivered as inline XML content
|
|
@@ -239,7 +263,7 @@ export type VASTAsset = {
|
|
|
239
263
|
* Tracking events supported by this VAST tag
|
|
240
264
|
*/
|
|
241
265
|
tracking_events?: VASTTrackingEvent[];
|
|
242
|
-
[k: string]: unknown;
|
|
266
|
+
[k: string]: unknown | undefined;
|
|
243
267
|
};
|
|
244
268
|
/**
|
|
245
269
|
* VAST specification version
|
|
@@ -278,7 +302,7 @@ export type DAASTAsset = {
|
|
|
278
302
|
* Whether companion display ads are included
|
|
279
303
|
*/
|
|
280
304
|
companion_ads?: boolean;
|
|
281
|
-
[k: string]: unknown;
|
|
305
|
+
[k: string]: unknown | undefined;
|
|
282
306
|
} | {
|
|
283
307
|
/**
|
|
284
308
|
* Discriminator indicating DAAST is delivered as inline XML content
|
|
@@ -301,7 +325,7 @@ export type DAASTAsset = {
|
|
|
301
325
|
* Whether companion display ads are included
|
|
302
326
|
*/
|
|
303
327
|
companion_ads?: boolean;
|
|
304
|
-
[k: string]: unknown;
|
|
328
|
+
[k: string]: unknown | undefined;
|
|
305
329
|
};
|
|
306
330
|
/**
|
|
307
331
|
* DAAST specification version
|
|
@@ -327,6 +351,10 @@ export type AssetContentType = 'image' | 'video' | 'audio' | 'text' | 'markdown'
|
|
|
327
351
|
* Type of URL asset: 'clickthrough' for user click destination (landing page), 'tracker_pixel' for impression/event tracking via HTTP request (fires GET, expects pixel/204 response), 'tracker_script' for measurement SDKs that must load as <script> tag (OMID verification, native event trackers using method:2)
|
|
328
352
|
*/
|
|
329
353
|
export type URLAssetType = 'clickthrough' | 'tracker_pixel' | 'tracker_script';
|
|
354
|
+
/**
|
|
355
|
+
* For generative creatives: set to 'approved' to finalize, 'rejected' to request regeneration with updated assets/message. Omit for non-generative creatives (system will set based on processing state).
|
|
356
|
+
*/
|
|
357
|
+
export type CreativeStatus = 'processing' | 'approved' | 'rejected' | 'pending_review' | 'archived';
|
|
330
358
|
/**
|
|
331
359
|
* Creative asset for upload to library - supports static assets, generative formats, and third-party snippets
|
|
332
360
|
*/
|
|
@@ -362,7 +390,7 @@ export interface CreativeAsset {
|
|
|
362
390
|
* Macro values to apply for this preview
|
|
363
391
|
*/
|
|
364
392
|
macros?: {
|
|
365
|
-
[k: string]: string;
|
|
393
|
+
[k: string]: string | undefined;
|
|
366
394
|
};
|
|
367
395
|
/**
|
|
368
396
|
* Natural language description of the context for AI-generated content
|
|
@@ -373,10 +401,7 @@ export interface CreativeAsset {
|
|
|
373
401
|
* User-defined tags for organization and searchability
|
|
374
402
|
*/
|
|
375
403
|
tags?: string[];
|
|
376
|
-
|
|
377
|
-
* For generative creatives: set to true to approve and finalize, false to request regeneration with updated assets/message. Omit for non-generative creatives.
|
|
378
|
-
*/
|
|
379
|
-
approved?: boolean;
|
|
404
|
+
status?: CreativeStatus;
|
|
380
405
|
/**
|
|
381
406
|
* Optional delivery weight for creative rotation when uploading via create_media_buy or update_media_buy (0-100). If omitted, platform determines rotation. Only used during upload to media buy - not stored in creative library.
|
|
382
407
|
*/
|
|
@@ -410,7 +435,7 @@ export interface ImageAsset {
|
|
|
410
435
|
* Alternative text for accessibility
|
|
411
436
|
*/
|
|
412
437
|
alt_text?: string;
|
|
413
|
-
[k: string]: unknown;
|
|
438
|
+
[k: string]: unknown | undefined;
|
|
414
439
|
}
|
|
415
440
|
/**
|
|
416
441
|
* Video asset with URL and specifications
|
|
@@ -440,7 +465,7 @@ export interface VideoAsset {
|
|
|
440
465
|
* Video bitrate in kilobits per second
|
|
441
466
|
*/
|
|
442
467
|
bitrate_kbps?: number;
|
|
443
|
-
[k: string]: unknown;
|
|
468
|
+
[k: string]: unknown | undefined;
|
|
444
469
|
}
|
|
445
470
|
/**
|
|
446
471
|
* Audio asset with URL and specifications
|
|
@@ -462,7 +487,7 @@ export interface AudioAsset {
|
|
|
462
487
|
* Audio bitrate in kilobits per second
|
|
463
488
|
*/
|
|
464
489
|
bitrate_kbps?: number;
|
|
465
|
-
[k: string]: unknown;
|
|
490
|
+
[k: string]: unknown | undefined;
|
|
466
491
|
}
|
|
467
492
|
/**
|
|
468
493
|
* Text content asset
|
|
@@ -476,7 +501,7 @@ export interface TextAsset {
|
|
|
476
501
|
* Language code (e.g., 'en', 'es', 'fr')
|
|
477
502
|
*/
|
|
478
503
|
language?: string;
|
|
479
|
-
[k: string]: unknown;
|
|
504
|
+
[k: string]: unknown | undefined;
|
|
480
505
|
}
|
|
481
506
|
/**
|
|
482
507
|
* HTML content asset
|
|
@@ -490,7 +515,7 @@ export interface HTMLAsset {
|
|
|
490
515
|
* HTML version (e.g., 'HTML5')
|
|
491
516
|
*/
|
|
492
517
|
version?: string;
|
|
493
|
-
[k: string]: unknown;
|
|
518
|
+
[k: string]: unknown | undefined;
|
|
494
519
|
}
|
|
495
520
|
/**
|
|
496
521
|
* CSS stylesheet asset
|
|
@@ -504,7 +529,7 @@ export interface CSSAsset {
|
|
|
504
529
|
* CSS media query context (e.g., 'screen', 'print')
|
|
505
530
|
*/
|
|
506
531
|
media?: string;
|
|
507
|
-
[k: string]: unknown;
|
|
532
|
+
[k: string]: unknown | undefined;
|
|
508
533
|
}
|
|
509
534
|
/**
|
|
510
535
|
* JavaScript code asset
|
|
@@ -515,34 +540,22 @@ export interface JavaScriptAsset {
|
|
|
515
540
|
*/
|
|
516
541
|
content: string;
|
|
517
542
|
module_type?: JavaScriptModuleType;
|
|
518
|
-
[k: string]: unknown;
|
|
543
|
+
[k: string]: unknown | undefined;
|
|
519
544
|
}
|
|
520
545
|
/**
|
|
521
|
-
* Complete offering specification combining brand manifest, product selectors, and
|
|
546
|
+
* Complete offering specification combining brand manifest, product selectors, and optional SI agent endpoint. Provides all context needed for creative generation and/or conversational experiences about what is being promoted. When si_agent_url is present, hosts can connect users to conversational experiences about any of the offerings.
|
|
522
547
|
*/
|
|
523
548
|
export interface PromotedOfferings {
|
|
524
549
|
brand_manifest: BrandManifestReference;
|
|
550
|
+
/**
|
|
551
|
+
* MCP endpoint URL for the brand's SI agent. When present, hosts can connect users to conversational experiences about any of the offerings. The agent handles si_get_offering lookups and full conversations.
|
|
552
|
+
*/
|
|
553
|
+
si_agent_url?: string;
|
|
525
554
|
product_selectors?: PromotedProducts;
|
|
526
555
|
/**
|
|
527
|
-
*
|
|
556
|
+
* Offerings available for promotion. Each offering can include creative assets (via portfolio_ref or inline assets) for traditional ads. When si_agent_url is set at the parent level, hosts can offer conversational experiences about any of these offerings.
|
|
528
557
|
*/
|
|
529
|
-
offerings?:
|
|
530
|
-
/**
|
|
531
|
-
* Offering name (e.g., 'Winter Sale', 'New Product Launch')
|
|
532
|
-
*/
|
|
533
|
-
name: string;
|
|
534
|
-
/**
|
|
535
|
-
* Description of what's being offered
|
|
536
|
-
*/
|
|
537
|
-
description?: string;
|
|
538
|
-
/**
|
|
539
|
-
* Assets specific to this offering
|
|
540
|
-
*/
|
|
541
|
-
assets?: {
|
|
542
|
-
[k: string]: unknown;
|
|
543
|
-
}[];
|
|
544
|
-
[k: string]: unknown;
|
|
545
|
-
}[];
|
|
558
|
+
offerings?: Offering[];
|
|
546
559
|
/**
|
|
547
560
|
* Selectors to choose specific assets from the brand manifest
|
|
548
561
|
*/
|
|
@@ -559,9 +572,9 @@ export interface PromotedOfferings {
|
|
|
559
572
|
* Exclude assets with these tags
|
|
560
573
|
*/
|
|
561
574
|
exclude_tags?: string[];
|
|
562
|
-
[k: string]: unknown;
|
|
575
|
+
[k: string]: unknown | undefined;
|
|
563
576
|
};
|
|
564
|
-
[k: string]: unknown;
|
|
577
|
+
[k: string]: unknown | undefined;
|
|
565
578
|
}
|
|
566
579
|
/**
|
|
567
580
|
* Inline brand manifest object
|
|
@@ -571,6 +584,10 @@ export interface BrandManifest {
|
|
|
571
584
|
* Primary brand URL for context and asset discovery. Creative agents can infer brand information from this URL.
|
|
572
585
|
*/
|
|
573
586
|
url?: string;
|
|
587
|
+
/**
|
|
588
|
+
* URL to the brand's privacy policy. Used for consumer consent flows when personal data may be shared with the advertiser. AI platforms can use this to present explicit privacy choices to users before data handoff.
|
|
589
|
+
*/
|
|
590
|
+
privacy_policy_url?: string;
|
|
574
591
|
/**
|
|
575
592
|
* Brand or business name
|
|
576
593
|
*/
|
|
@@ -642,6 +659,44 @@ export interface BrandManifest {
|
|
|
642
659
|
* Brand voice and messaging tone (e.g., 'professional', 'casual', 'humorous', 'trustworthy', 'innovative')
|
|
643
660
|
*/
|
|
644
661
|
tone?: string;
|
|
662
|
+
/**
|
|
663
|
+
* Brand voice configuration for audio/conversational experiences
|
|
664
|
+
*/
|
|
665
|
+
voice?: {
|
|
666
|
+
/**
|
|
667
|
+
* TTS provider (e.g., 'elevenlabs', 'openai', 'amazon_polly')
|
|
668
|
+
*/
|
|
669
|
+
provider?: string;
|
|
670
|
+
/**
|
|
671
|
+
* Provider-specific voice identifier
|
|
672
|
+
*/
|
|
673
|
+
voice_id?: string;
|
|
674
|
+
/**
|
|
675
|
+
* Provider-specific voice settings (speed, pitch, etc.)
|
|
676
|
+
*/
|
|
677
|
+
settings?: {
|
|
678
|
+
[k: string]: unknown | undefined;
|
|
679
|
+
};
|
|
680
|
+
};
|
|
681
|
+
/**
|
|
682
|
+
* Brand avatar configuration for visual conversational experiences
|
|
683
|
+
*/
|
|
684
|
+
avatar?: {
|
|
685
|
+
/**
|
|
686
|
+
* Avatar provider (e.g., 'd-id', 'heygen', 'synthesia')
|
|
687
|
+
*/
|
|
688
|
+
provider?: string;
|
|
689
|
+
/**
|
|
690
|
+
* Provider-specific avatar identifier
|
|
691
|
+
*/
|
|
692
|
+
avatar_id?: string;
|
|
693
|
+
/**
|
|
694
|
+
* Provider-specific avatar settings
|
|
695
|
+
*/
|
|
696
|
+
settings?: {
|
|
697
|
+
[k: string]: unknown | undefined;
|
|
698
|
+
};
|
|
699
|
+
};
|
|
645
700
|
/**
|
|
646
701
|
* Brand tagline or slogan
|
|
647
702
|
*/
|
|
@@ -695,9 +750,9 @@ export interface BrandManifest {
|
|
|
695
750
|
* Additional asset-specific metadata
|
|
696
751
|
*/
|
|
697
752
|
metadata?: {
|
|
698
|
-
[k: string]: unknown;
|
|
753
|
+
[k: string]: unknown | undefined;
|
|
699
754
|
};
|
|
700
|
-
[k: string]: unknown;
|
|
755
|
+
[k: string]: unknown | undefined;
|
|
701
756
|
}[];
|
|
702
757
|
/**
|
|
703
758
|
* Product catalog information for e-commerce advertisers. Enables SKU-level creative generation and product selection.
|
|
@@ -708,9 +763,9 @@ export interface BrandManifest {
|
|
|
708
763
|
*/
|
|
709
764
|
feed_url: string;
|
|
710
765
|
/**
|
|
711
|
-
* Format of the product feed
|
|
766
|
+
* Format of the product feed. Use 'openai_product_feed' for feeds conforming to the OpenAI Commerce Product Feed specification.
|
|
712
767
|
*/
|
|
713
|
-
feed_format?: 'google_merchant_center' | 'facebook_catalog' | 'custom';
|
|
768
|
+
feed_format?: 'google_merchant_center' | 'facebook_catalog' | 'openai_product_feed' | 'custom';
|
|
714
769
|
/**
|
|
715
770
|
* Product categories available in the catalog (for filtering)
|
|
716
771
|
*/
|
|
@@ -723,7 +778,24 @@ export interface BrandManifest {
|
|
|
723
778
|
* How frequently the product catalog is updated
|
|
724
779
|
*/
|
|
725
780
|
update_frequency?: 'realtime' | 'hourly' | 'daily' | 'weekly';
|
|
726
|
-
|
|
781
|
+
/**
|
|
782
|
+
* Agentic checkout endpoint configuration. Enables AI agents to complete purchases on behalf of users through a structured checkout API.
|
|
783
|
+
*/
|
|
784
|
+
agentic_checkout?: {
|
|
785
|
+
/**
|
|
786
|
+
* Base URL for checkout session API (e.g., https://merchant.com/api/checkout_sessions)
|
|
787
|
+
*/
|
|
788
|
+
endpoint: string;
|
|
789
|
+
/**
|
|
790
|
+
* Checkout API specification implemented by the endpoint
|
|
791
|
+
*/
|
|
792
|
+
spec: 'openai_agentic_checkout_v1';
|
|
793
|
+
/**
|
|
794
|
+
* Payment providers supported by this checkout endpoint
|
|
795
|
+
*/
|
|
796
|
+
supported_payment_providers?: string[];
|
|
797
|
+
};
|
|
798
|
+
[k: string]: unknown | undefined;
|
|
727
799
|
};
|
|
728
800
|
/**
|
|
729
801
|
* Legal disclaimers or required text that must appear in creatives
|
|
@@ -780,7 +852,7 @@ export interface BrandManifest {
|
|
|
780
852
|
*/
|
|
781
853
|
version?: string;
|
|
782
854
|
};
|
|
783
|
-
[k: string]: unknown;
|
|
855
|
+
[k: string]: unknown | undefined;
|
|
784
856
|
}
|
|
785
857
|
/**
|
|
786
858
|
* Selectors to choose which products/offerings from the brand manifest product catalog to promote
|
|
@@ -802,10 +874,67 @@ export interface PromotedProducts {
|
|
|
802
874
|
* Natural language query to select products from the brand manifest (e.g., 'all Kraft Heinz pasta sauces', 'organic products under $20')
|
|
803
875
|
*/
|
|
804
876
|
manifest_query?: string;
|
|
805
|
-
[k: string]: unknown;
|
|
877
|
+
[k: string]: unknown | undefined;
|
|
878
|
+
}
|
|
879
|
+
/**
|
|
880
|
+
* A promotable offering from a brand. Can represent a campaign, product promotion, service, or any other thing the brand wants to make available. Offerings can be promoted via traditional creatives (using portfolio_ref or assets) or conversational SI experiences (via si_agent_url at the promoted-offerings level).
|
|
881
|
+
*/
|
|
882
|
+
export interface Offering {
|
|
883
|
+
/**
|
|
884
|
+
* Unique identifier for this offering. Used by hosts to reference specific offerings in si_get_offering calls.
|
|
885
|
+
*/
|
|
886
|
+
offering_id: string;
|
|
887
|
+
/**
|
|
888
|
+
* Human-readable offering name (e.g., 'Winter Sale', 'Free Trial', 'Enterprise Platform')
|
|
889
|
+
*/
|
|
890
|
+
name: string;
|
|
891
|
+
/**
|
|
892
|
+
* Description of what's being offered
|
|
893
|
+
*/
|
|
894
|
+
description?: string;
|
|
895
|
+
/**
|
|
896
|
+
* Short promotional tagline for the offering
|
|
897
|
+
*/
|
|
898
|
+
tagline?: string;
|
|
899
|
+
/**
|
|
900
|
+
* When the offering becomes available. If not specified, offering is immediately available.
|
|
901
|
+
*/
|
|
902
|
+
valid_from?: string;
|
|
903
|
+
/**
|
|
904
|
+
* When the offering expires. If not specified, offering has no expiration.
|
|
905
|
+
*/
|
|
906
|
+
valid_to?: string;
|
|
907
|
+
/**
|
|
908
|
+
* URL for checkout/purchase flow when the brand doesn't support agentic checkout.
|
|
909
|
+
*/
|
|
910
|
+
checkout_url?: string;
|
|
911
|
+
/**
|
|
912
|
+
* Landing page URL for this offering.
|
|
913
|
+
*/
|
|
914
|
+
landing_url?: string;
|
|
915
|
+
/**
|
|
916
|
+
* Assets specific to this offering (images, videos, copy)
|
|
917
|
+
*/
|
|
918
|
+
assets?: {
|
|
919
|
+
[k: string]: unknown | undefined;
|
|
920
|
+
}[];
|
|
921
|
+
/**
|
|
922
|
+
* Reference to a creative portfolio for this offering. Portfolios contain organized creative assets across formats, enabling consistent ad delivery for this specific offering.
|
|
923
|
+
*/
|
|
924
|
+
portfolio_ref?: string;
|
|
925
|
+
/**
|
|
926
|
+
* Keywords for matching this offering to user intent. Hosts use these for retrieval/relevance scoring.
|
|
927
|
+
*/
|
|
928
|
+
keywords?: string[];
|
|
929
|
+
/**
|
|
930
|
+
* Categories this offering belongs to (e.g., 'measurement', 'identity', 'programmatic')
|
|
931
|
+
*/
|
|
932
|
+
categories?: string[];
|
|
933
|
+
ext?: ExtensionObject;
|
|
934
|
+
[k: string]: unknown | undefined;
|
|
806
935
|
}
|
|
807
936
|
/**
|
|
808
|
-
*
|
|
937
|
+
* Extension object for platform-specific, vendor-namespaced parameters. Extensions are always optional and must be namespaced under a vendor/platform key (e.g., ext.gam, ext.roku). Used for custom capabilities, partner-specific configuration, and features being proposed for standardization.
|
|
809
938
|
*/
|
|
810
939
|
export interface URLAsset {
|
|
811
940
|
/**
|
|
@@ -817,7 +946,7 @@ export interface URLAsset {
|
|
|
817
946
|
* Description of what this URL points to
|
|
818
947
|
*/
|
|
819
948
|
description?: string;
|
|
820
|
-
[k: string]: unknown;
|
|
949
|
+
[k: string]: unknown | undefined;
|
|
821
950
|
}
|
|
822
951
|
/**
|
|
823
952
|
* Selects properties from a publisher's adagents.json. Used for both product definitions and agent authorization. Supports three selection patterns: all properties, specific IDs, or by tags.
|
|
@@ -831,7 +960,7 @@ export type PublisherPropertySelector = {
|
|
|
831
960
|
* Discriminator indicating all properties from this publisher are included
|
|
832
961
|
*/
|
|
833
962
|
selection_type: 'all';
|
|
834
|
-
[k: string]: unknown;
|
|
963
|
+
[k: string]: unknown | undefined;
|
|
835
964
|
} | {
|
|
836
965
|
/**
|
|
837
966
|
* Domain where publisher's adagents.json is hosted (e.g., 'cnn.com')
|
|
@@ -847,7 +976,7 @@ export type PublisherPropertySelector = {
|
|
|
847
976
|
* @minItems 1
|
|
848
977
|
*/
|
|
849
978
|
property_ids: [PropertyID, ...PropertyID[]];
|
|
850
|
-
[k: string]: unknown;
|
|
979
|
+
[k: string]: unknown | undefined;
|
|
851
980
|
} | {
|
|
852
981
|
/**
|
|
853
982
|
* Domain where publisher's adagents.json is hosted (e.g., 'cnn.com')
|
|
@@ -863,7 +992,7 @@ export type PublisherPropertySelector = {
|
|
|
863
992
|
* @minItems 1
|
|
864
993
|
*/
|
|
865
994
|
property_tags: [PropertyTag, ...PropertyTag[]];
|
|
866
|
-
[k: string]: unknown;
|
|
995
|
+
[k: string]: unknown | undefined;
|
|
867
996
|
};
|
|
868
997
|
/**
|
|
869
998
|
* Identifier for a publisher property. Must be lowercase alphanumeric with underscores only.
|
|
@@ -878,9 +1007,9 @@ export type PropertyTag = string;
|
|
|
878
1007
|
*/
|
|
879
1008
|
export type DeliveryType = 'guaranteed' | 'non_guaranteed';
|
|
880
1009
|
/**
|
|
881
|
-
* A pricing model option offered by a publisher for a product.
|
|
1010
|
+
* A pricing model option offered by a publisher for a product. Discriminated by pricing_model field. If fixed_price is present, it's fixed pricing. If absent, it's auction-based (floor_price and price_guidance optional).
|
|
882
1011
|
*/
|
|
883
|
-
export type PricingOption =
|
|
1012
|
+
export type PricingOption = CPMPricingOption | VCPMPricingOption | CPCPricingOption | CPCVPricingOption | CPVPricingOption | CPPPricingOption | FlatRatePricingOption;
|
|
884
1013
|
/**
|
|
885
1014
|
* Available frequencies for delivery reports and metrics updates
|
|
886
1015
|
*/
|
|
@@ -1006,66 +1135,36 @@ export interface Placement {
|
|
|
1006
1135
|
* @minItems 1
|
|
1007
1136
|
*/
|
|
1008
1137
|
format_ids?: [FormatID, ...FormatID[]];
|
|
1009
|
-
[k: string]: unknown;
|
|
1138
|
+
[k: string]: unknown | undefined;
|
|
1010
1139
|
}
|
|
1011
1140
|
/**
|
|
1012
|
-
* Cost Per Mille (cost per 1,000 impressions)
|
|
1141
|
+
* Cost Per Mille (cost per 1,000 impressions) pricing. If fixed_price is present, it's fixed pricing. If absent, it's auction-based.
|
|
1013
1142
|
*/
|
|
1014
|
-
export interface
|
|
1143
|
+
export interface CPMPricingOption {
|
|
1015
1144
|
/**
|
|
1016
|
-
* Unique identifier for this pricing option within the product
|
|
1145
|
+
* Unique identifier for this pricing option within the product
|
|
1017
1146
|
*/
|
|
1018
1147
|
pricing_option_id: string;
|
|
1019
1148
|
/**
|
|
1020
1149
|
* Cost per 1,000 impressions
|
|
1021
1150
|
*/
|
|
1022
1151
|
pricing_model: 'cpm';
|
|
1023
|
-
/**
|
|
1024
|
-
* Fixed CPM rate (cost per 1,000 impressions)
|
|
1025
|
-
*/
|
|
1026
|
-
rate: number;
|
|
1027
1152
|
/**
|
|
1028
1153
|
* ISO 4217 currency code
|
|
1029
1154
|
*/
|
|
1030
1155
|
currency: string;
|
|
1031
1156
|
/**
|
|
1032
|
-
*
|
|
1033
|
-
*/
|
|
1034
|
-
is_fixed: true;
|
|
1035
|
-
/**
|
|
1036
|
-
* Minimum spend requirement per package using this pricing option, in the specified currency
|
|
1037
|
-
*/
|
|
1038
|
-
min_spend_per_package?: number;
|
|
1039
|
-
[k: string]: unknown;
|
|
1040
|
-
}
|
|
1041
|
-
/**
|
|
1042
|
-
* Cost Per Mille (cost per 1,000 impressions) with auction-based pricing - common for programmatic/non-guaranteed inventory
|
|
1043
|
-
*/
|
|
1044
|
-
export interface CPMAuctionPricingOption {
|
|
1045
|
-
/**
|
|
1046
|
-
* Unique identifier for this pricing option within the product (e.g., 'cpm_usd_auction')
|
|
1157
|
+
* Fixed price per unit. If present, this is fixed pricing. If absent, auction-based.
|
|
1047
1158
|
*/
|
|
1048
|
-
|
|
1159
|
+
fixed_price?: number;
|
|
1049
1160
|
/**
|
|
1050
|
-
*
|
|
1161
|
+
* Minimum acceptable bid for auction pricing (mutually exclusive with fixed_price). Bids below this value will be rejected.
|
|
1051
1162
|
*/
|
|
1052
|
-
|
|
1163
|
+
floor_price?: number;
|
|
1053
1164
|
/**
|
|
1054
|
-
*
|
|
1165
|
+
* Optional pricing guidance for auction-based bidding. Helps buyers calibrate bids with historical percentiles.
|
|
1055
1166
|
*/
|
|
1056
|
-
|
|
1057
|
-
/**
|
|
1058
|
-
* Whether this is a fixed rate (true) or auction-based (false)
|
|
1059
|
-
*/
|
|
1060
|
-
is_fixed: false;
|
|
1061
|
-
/**
|
|
1062
|
-
* Pricing guidance for auction-based CPM bidding
|
|
1063
|
-
*/
|
|
1064
|
-
price_guidance: {
|
|
1065
|
-
/**
|
|
1066
|
-
* Minimum bid price - publisher will reject bids under this value
|
|
1067
|
-
*/
|
|
1068
|
-
floor: number;
|
|
1167
|
+
price_guidance?: {
|
|
1069
1168
|
/**
|
|
1070
1169
|
* 25th percentile winning price
|
|
1071
1170
|
*/
|
|
@@ -1087,66 +1186,36 @@ export interface CPMAuctionPricingOption {
|
|
|
1087
1186
|
* Minimum spend requirement per package using this pricing option, in the specified currency
|
|
1088
1187
|
*/
|
|
1089
1188
|
min_spend_per_package?: number;
|
|
1090
|
-
[k: string]: unknown;
|
|
1189
|
+
[k: string]: unknown | undefined;
|
|
1091
1190
|
}
|
|
1092
1191
|
/**
|
|
1093
|
-
* Viewable Cost Per Mille (cost per 1,000 viewable impressions)
|
|
1192
|
+
* Viewable Cost Per Mille (cost per 1,000 viewable impressions) pricing - MRC viewability standard. If fixed_price is present, it's fixed pricing. If absent, it's auction-based.
|
|
1094
1193
|
*/
|
|
1095
|
-
export interface
|
|
1194
|
+
export interface VCPMPricingOption {
|
|
1096
1195
|
/**
|
|
1097
|
-
* Unique identifier for this pricing option within the product
|
|
1196
|
+
* Unique identifier for this pricing option within the product
|
|
1098
1197
|
*/
|
|
1099
1198
|
pricing_option_id: string;
|
|
1100
1199
|
/**
|
|
1101
1200
|
* Cost per 1,000 viewable impressions (MRC standard)
|
|
1102
1201
|
*/
|
|
1103
1202
|
pricing_model: 'vcpm';
|
|
1104
|
-
/**
|
|
1105
|
-
* Fixed vCPM rate (cost per 1,000 viewable impressions)
|
|
1106
|
-
*/
|
|
1107
|
-
rate: number;
|
|
1108
1203
|
/**
|
|
1109
1204
|
* ISO 4217 currency code
|
|
1110
1205
|
*/
|
|
1111
1206
|
currency: string;
|
|
1112
1207
|
/**
|
|
1113
|
-
*
|
|
1208
|
+
* Fixed price per unit. If present, this is fixed pricing. If absent, auction-based.
|
|
1114
1209
|
*/
|
|
1115
|
-
|
|
1210
|
+
fixed_price?: number;
|
|
1116
1211
|
/**
|
|
1117
|
-
* Minimum
|
|
1118
|
-
*/
|
|
1119
|
-
min_spend_per_package?: number;
|
|
1120
|
-
[k: string]: unknown;
|
|
1121
|
-
}
|
|
1122
|
-
/**
|
|
1123
|
-
* Viewable Cost Per Mille (cost per 1,000 viewable impressions) with auction-based pricing - impressions meeting MRC viewability standard (50% pixels in-view for 1 second for display, 2 seconds for video)
|
|
1124
|
-
*/
|
|
1125
|
-
export interface VCPMAuctionPricingOption {
|
|
1126
|
-
/**
|
|
1127
|
-
* Unique identifier for this pricing option within the product (e.g., 'vcpm_usd_auction')
|
|
1212
|
+
* Minimum acceptable bid for auction pricing (mutually exclusive with fixed_price). Bids below this value will be rejected.
|
|
1128
1213
|
*/
|
|
1129
|
-
|
|
1214
|
+
floor_price?: number;
|
|
1130
1215
|
/**
|
|
1131
|
-
*
|
|
1216
|
+
* Optional pricing guidance for auction-based bidding. Helps buyers calibrate bids with historical percentiles.
|
|
1132
1217
|
*/
|
|
1133
|
-
|
|
1134
|
-
/**
|
|
1135
|
-
* ISO 4217 currency code
|
|
1136
|
-
*/
|
|
1137
|
-
currency: string;
|
|
1138
|
-
/**
|
|
1139
|
-
* Whether this is a fixed rate (true) or auction-based (false)
|
|
1140
|
-
*/
|
|
1141
|
-
is_fixed: false;
|
|
1142
|
-
/**
|
|
1143
|
-
* Statistical guidance for auction pricing
|
|
1144
|
-
*/
|
|
1145
|
-
price_guidance: {
|
|
1146
|
-
/**
|
|
1147
|
-
* Minimum acceptable bid price
|
|
1148
|
-
*/
|
|
1149
|
-
floor: number;
|
|
1218
|
+
price_guidance?: {
|
|
1150
1219
|
/**
|
|
1151
1220
|
* 25th percentile of recent winning bids
|
|
1152
1221
|
*/
|
|
@@ -1168,218 +1237,323 @@ export interface VCPMAuctionPricingOption {
|
|
|
1168
1237
|
* Minimum spend requirement per package using this pricing option, in the specified currency
|
|
1169
1238
|
*/
|
|
1170
1239
|
min_spend_per_package?: number;
|
|
1171
|
-
[k: string]: unknown;
|
|
1240
|
+
[k: string]: unknown | undefined;
|
|
1172
1241
|
}
|
|
1173
1242
|
/**
|
|
1174
|
-
* Cost Per Click fixed
|
|
1243
|
+
* Cost Per Click pricing. If fixed_price is present, it's fixed pricing. If absent, it's auction-based.
|
|
1175
1244
|
*/
|
|
1176
1245
|
export interface CPCPricingOption {
|
|
1177
1246
|
/**
|
|
1178
|
-
* Unique identifier for this pricing option within the product
|
|
1247
|
+
* Unique identifier for this pricing option within the product
|
|
1179
1248
|
*/
|
|
1180
1249
|
pricing_option_id: string;
|
|
1181
1250
|
/**
|
|
1182
1251
|
* Cost per click
|
|
1183
1252
|
*/
|
|
1184
1253
|
pricing_model: 'cpc';
|
|
1185
|
-
/**
|
|
1186
|
-
* Fixed CPC rate (cost per click)
|
|
1187
|
-
*/
|
|
1188
|
-
rate: number;
|
|
1189
1254
|
/**
|
|
1190
1255
|
* ISO 4217 currency code
|
|
1191
1256
|
*/
|
|
1192
1257
|
currency: string;
|
|
1193
1258
|
/**
|
|
1194
|
-
*
|
|
1259
|
+
* Fixed price per click. If present, this is fixed pricing. If absent, auction-based.
|
|
1260
|
+
*/
|
|
1261
|
+
fixed_price?: number;
|
|
1262
|
+
/**
|
|
1263
|
+
* Minimum acceptable bid for auction pricing (mutually exclusive with fixed_price). Bids below this value will be rejected.
|
|
1195
1264
|
*/
|
|
1196
|
-
|
|
1265
|
+
floor_price?: number;
|
|
1266
|
+
/**
|
|
1267
|
+
* Optional pricing guidance for auction-based bidding. Helps buyers calibrate bids with historical percentiles.
|
|
1268
|
+
*/
|
|
1269
|
+
price_guidance?: {
|
|
1270
|
+
/**
|
|
1271
|
+
* 25th percentile of recent winning bids
|
|
1272
|
+
*/
|
|
1273
|
+
p25?: number;
|
|
1274
|
+
/**
|
|
1275
|
+
* Median of recent winning bids
|
|
1276
|
+
*/
|
|
1277
|
+
p50?: number;
|
|
1278
|
+
/**
|
|
1279
|
+
* 75th percentile of recent winning bids
|
|
1280
|
+
*/
|
|
1281
|
+
p75?: number;
|
|
1282
|
+
/**
|
|
1283
|
+
* 90th percentile of recent winning bids
|
|
1284
|
+
*/
|
|
1285
|
+
p90?: number;
|
|
1286
|
+
};
|
|
1197
1287
|
/**
|
|
1198
1288
|
* Minimum spend requirement per package using this pricing option, in the specified currency
|
|
1199
1289
|
*/
|
|
1200
1290
|
min_spend_per_package?: number;
|
|
1201
|
-
[k: string]: unknown;
|
|
1291
|
+
[k: string]: unknown | undefined;
|
|
1202
1292
|
}
|
|
1203
1293
|
/**
|
|
1204
|
-
* Cost Per Completed View (100% video/audio completion) fixed
|
|
1294
|
+
* Cost Per Completed View (100% video/audio completion) pricing. If fixed_price is present, it's fixed pricing. If absent, it's auction-based.
|
|
1205
1295
|
*/
|
|
1206
1296
|
export interface CPCVPricingOption {
|
|
1207
1297
|
/**
|
|
1208
|
-
* Unique identifier for this pricing option within the product
|
|
1298
|
+
* Unique identifier for this pricing option within the product
|
|
1209
1299
|
*/
|
|
1210
1300
|
pricing_option_id: string;
|
|
1211
1301
|
/**
|
|
1212
1302
|
* Cost per completed view (100% completion)
|
|
1213
1303
|
*/
|
|
1214
1304
|
pricing_model: 'cpcv';
|
|
1215
|
-
/**
|
|
1216
|
-
* Fixed CPCV rate (cost per 100% completion)
|
|
1217
|
-
*/
|
|
1218
|
-
rate: number;
|
|
1219
1305
|
/**
|
|
1220
1306
|
* ISO 4217 currency code
|
|
1221
1307
|
*/
|
|
1222
1308
|
currency: string;
|
|
1223
1309
|
/**
|
|
1224
|
-
*
|
|
1310
|
+
* Fixed price per completed view. If present, this is fixed pricing. If absent, auction-based.
|
|
1225
1311
|
*/
|
|
1226
|
-
|
|
1312
|
+
fixed_price?: number;
|
|
1313
|
+
/**
|
|
1314
|
+
* Minimum acceptable bid for auction pricing (mutually exclusive with fixed_price). Bids below this value will be rejected.
|
|
1315
|
+
*/
|
|
1316
|
+
floor_price?: number;
|
|
1317
|
+
/**
|
|
1318
|
+
* Optional pricing guidance for auction-based bidding. Helps buyers calibrate bids with historical percentiles.
|
|
1319
|
+
*/
|
|
1320
|
+
price_guidance?: {
|
|
1321
|
+
/**
|
|
1322
|
+
* 25th percentile of recent winning bids
|
|
1323
|
+
*/
|
|
1324
|
+
p25?: number;
|
|
1325
|
+
/**
|
|
1326
|
+
* Median of recent winning bids
|
|
1327
|
+
*/
|
|
1328
|
+
p50?: number;
|
|
1329
|
+
/**
|
|
1330
|
+
* 75th percentile of recent winning bids
|
|
1331
|
+
*/
|
|
1332
|
+
p75?: number;
|
|
1333
|
+
/**
|
|
1334
|
+
* 90th percentile of recent winning bids
|
|
1335
|
+
*/
|
|
1336
|
+
p90?: number;
|
|
1337
|
+
};
|
|
1227
1338
|
/**
|
|
1228
1339
|
* Minimum spend requirement per package using this pricing option, in the specified currency
|
|
1229
1340
|
*/
|
|
1230
1341
|
min_spend_per_package?: number;
|
|
1231
|
-
[k: string]: unknown;
|
|
1342
|
+
[k: string]: unknown | undefined;
|
|
1232
1343
|
}
|
|
1233
1344
|
/**
|
|
1234
|
-
* Cost Per View (at publisher-defined threshold)
|
|
1345
|
+
* Cost Per View (at publisher-defined threshold) pricing for video/audio. If fixed_price is present, it's fixed pricing. If absent, it's auction-based.
|
|
1235
1346
|
*/
|
|
1236
1347
|
export interface CPVPricingOption {
|
|
1237
1348
|
/**
|
|
1238
|
-
* Unique identifier for this pricing option within the product
|
|
1349
|
+
* Unique identifier for this pricing option within the product
|
|
1239
1350
|
*/
|
|
1240
1351
|
pricing_option_id: string;
|
|
1241
1352
|
/**
|
|
1242
1353
|
* Cost per view at threshold
|
|
1243
1354
|
*/
|
|
1244
1355
|
pricing_model: 'cpv';
|
|
1245
|
-
/**
|
|
1246
|
-
* Fixed CPV rate (cost per view)
|
|
1247
|
-
*/
|
|
1248
|
-
rate: number;
|
|
1249
1356
|
/**
|
|
1250
1357
|
* ISO 4217 currency code
|
|
1251
1358
|
*/
|
|
1252
1359
|
currency: string;
|
|
1253
1360
|
/**
|
|
1254
|
-
*
|
|
1361
|
+
* Fixed price per view. If present, this is fixed pricing. If absent, auction-based.
|
|
1362
|
+
*/
|
|
1363
|
+
fixed_price?: number;
|
|
1364
|
+
/**
|
|
1365
|
+
* Minimum acceptable bid for auction pricing (mutually exclusive with fixed_price). Bids below this value will be rejected.
|
|
1366
|
+
*/
|
|
1367
|
+
floor_price?: number;
|
|
1368
|
+
/**
|
|
1369
|
+
* Optional pricing guidance for auction-based bidding. Helps buyers calibrate bids with historical percentiles.
|
|
1255
1370
|
*/
|
|
1256
|
-
|
|
1371
|
+
price_guidance?: {
|
|
1372
|
+
/**
|
|
1373
|
+
* 25th percentile of recent winning bids
|
|
1374
|
+
*/
|
|
1375
|
+
p25?: number;
|
|
1376
|
+
/**
|
|
1377
|
+
* Median of recent winning bids
|
|
1378
|
+
*/
|
|
1379
|
+
p50?: number;
|
|
1380
|
+
/**
|
|
1381
|
+
* 75th percentile of recent winning bids
|
|
1382
|
+
*/
|
|
1383
|
+
p75?: number;
|
|
1384
|
+
/**
|
|
1385
|
+
* 90th percentile of recent winning bids
|
|
1386
|
+
*/
|
|
1387
|
+
p90?: number;
|
|
1388
|
+
};
|
|
1257
1389
|
/**
|
|
1258
1390
|
* CPV-specific parameters defining the view threshold
|
|
1259
1391
|
*/
|
|
1260
1392
|
parameters: {
|
|
1261
1393
|
view_threshold: number | {
|
|
1262
1394
|
/**
|
|
1263
|
-
* Seconds of viewing required
|
|
1395
|
+
* Seconds of viewing required
|
|
1264
1396
|
*/
|
|
1265
1397
|
duration_seconds: number;
|
|
1266
|
-
[k: string]: unknown;
|
|
1398
|
+
[k: string]: unknown | undefined;
|
|
1267
1399
|
};
|
|
1268
|
-
[k: string]: unknown;
|
|
1400
|
+
[k: string]: unknown | undefined;
|
|
1269
1401
|
};
|
|
1270
1402
|
/**
|
|
1271
1403
|
* Minimum spend requirement per package using this pricing option, in the specified currency
|
|
1272
1404
|
*/
|
|
1273
1405
|
min_spend_per_package?: number;
|
|
1274
|
-
[k: string]: unknown;
|
|
1406
|
+
[k: string]: unknown | undefined;
|
|
1275
1407
|
}
|
|
1276
1408
|
/**
|
|
1277
|
-
* Cost Per Point (Gross Rating Point)
|
|
1409
|
+
* Cost Per Point (Gross Rating Point) pricing for TV and audio campaigns. If fixed_price is present, it's fixed pricing. If absent, it's auction-based.
|
|
1278
1410
|
*/
|
|
1279
1411
|
export interface CPPPricingOption {
|
|
1280
1412
|
/**
|
|
1281
|
-
* Unique identifier for this pricing option within the product
|
|
1413
|
+
* Unique identifier for this pricing option within the product
|
|
1282
1414
|
*/
|
|
1283
1415
|
pricing_option_id: string;
|
|
1284
1416
|
/**
|
|
1285
1417
|
* Cost per Gross Rating Point
|
|
1286
1418
|
*/
|
|
1287
1419
|
pricing_model: 'cpp';
|
|
1288
|
-
/**
|
|
1289
|
-
* Fixed CPP rate (cost per rating point)
|
|
1290
|
-
*/
|
|
1291
|
-
rate: number;
|
|
1292
1420
|
/**
|
|
1293
1421
|
* ISO 4217 currency code
|
|
1294
1422
|
*/
|
|
1295
1423
|
currency: string;
|
|
1296
1424
|
/**
|
|
1297
|
-
*
|
|
1425
|
+
* Fixed price per rating point. If present, this is fixed pricing. If absent, auction-based.
|
|
1426
|
+
*/
|
|
1427
|
+
fixed_price?: number;
|
|
1428
|
+
/**
|
|
1429
|
+
* Minimum acceptable bid for auction pricing (mutually exclusive with fixed_price). Bids below this value will be rejected.
|
|
1430
|
+
*/
|
|
1431
|
+
floor_price?: number;
|
|
1432
|
+
/**
|
|
1433
|
+
* Optional pricing guidance for auction-based bidding. Helps buyers calibrate bids with historical percentiles.
|
|
1298
1434
|
*/
|
|
1299
|
-
|
|
1435
|
+
price_guidance?: {
|
|
1436
|
+
/**
|
|
1437
|
+
* 25th percentile of recent winning bids
|
|
1438
|
+
*/
|
|
1439
|
+
p25?: number;
|
|
1440
|
+
/**
|
|
1441
|
+
* Median of recent winning bids
|
|
1442
|
+
*/
|
|
1443
|
+
p50?: number;
|
|
1444
|
+
/**
|
|
1445
|
+
* 75th percentile of recent winning bids
|
|
1446
|
+
*/
|
|
1447
|
+
p75?: number;
|
|
1448
|
+
/**
|
|
1449
|
+
* 90th percentile of recent winning bids
|
|
1450
|
+
*/
|
|
1451
|
+
p90?: number;
|
|
1452
|
+
};
|
|
1300
1453
|
/**
|
|
1301
|
-
* CPP-specific parameters for demographic targeting
|
|
1454
|
+
* CPP-specific parameters for demographic targeting
|
|
1302
1455
|
*/
|
|
1303
1456
|
parameters: {
|
|
1304
1457
|
/**
|
|
1305
|
-
* Target demographic in Nielsen format
|
|
1458
|
+
* Target demographic in Nielsen format (P18-49, M25-54, W35+, etc.)
|
|
1306
1459
|
*/
|
|
1307
1460
|
demographic: string;
|
|
1308
1461
|
/**
|
|
1309
|
-
* Minimum GRPs/TRPs required
|
|
1462
|
+
* Minimum GRPs/TRPs required
|
|
1310
1463
|
*/
|
|
1311
1464
|
min_points?: number;
|
|
1312
|
-
[k: string]: unknown;
|
|
1465
|
+
[k: string]: unknown | undefined;
|
|
1313
1466
|
};
|
|
1314
1467
|
/**
|
|
1315
1468
|
* Minimum spend requirement per package using this pricing option, in the specified currency
|
|
1316
1469
|
*/
|
|
1317
1470
|
min_spend_per_package?: number;
|
|
1318
|
-
[k: string]: unknown;
|
|
1471
|
+
[k: string]: unknown | undefined;
|
|
1319
1472
|
}
|
|
1320
1473
|
/**
|
|
1321
|
-
* Flat rate pricing for DOOH, sponsorships, and time-based campaigns
|
|
1474
|
+
* Flat rate pricing for DOOH, sponsorships, and time-based campaigns. If fixed_price is present, it's fixed pricing. If absent, it's auction-based.
|
|
1322
1475
|
*/
|
|
1323
1476
|
export interface FlatRatePricingOption {
|
|
1324
1477
|
/**
|
|
1325
|
-
* Unique identifier for this pricing option within the product
|
|
1478
|
+
* Unique identifier for this pricing option within the product
|
|
1326
1479
|
*/
|
|
1327
1480
|
pricing_option_id: string;
|
|
1328
1481
|
/**
|
|
1329
1482
|
* Fixed cost regardless of delivery volume
|
|
1330
1483
|
*/
|
|
1331
1484
|
pricing_model: 'flat_rate';
|
|
1332
|
-
/**
|
|
1333
|
-
* Flat rate cost
|
|
1334
|
-
*/
|
|
1335
|
-
rate: number;
|
|
1336
1485
|
/**
|
|
1337
1486
|
* ISO 4217 currency code
|
|
1338
1487
|
*/
|
|
1339
1488
|
currency: string;
|
|
1340
1489
|
/**
|
|
1341
|
-
*
|
|
1490
|
+
* Flat rate cost. If present, this is fixed pricing. If absent, auction-based.
|
|
1342
1491
|
*/
|
|
1343
|
-
|
|
1492
|
+
fixed_price?: number;
|
|
1493
|
+
/**
|
|
1494
|
+
* Minimum acceptable bid for auction pricing (mutually exclusive with fixed_price). Bids below this value will be rejected.
|
|
1495
|
+
*/
|
|
1496
|
+
floor_price?: number;
|
|
1497
|
+
/**
|
|
1498
|
+
* Optional pricing guidance for auction-based bidding. Helps buyers calibrate bids with historical percentiles.
|
|
1499
|
+
*/
|
|
1500
|
+
price_guidance?: {
|
|
1501
|
+
/**
|
|
1502
|
+
* 25th percentile of recent winning bids
|
|
1503
|
+
*/
|
|
1504
|
+
p25?: number;
|
|
1505
|
+
/**
|
|
1506
|
+
* Median of recent winning bids
|
|
1507
|
+
*/
|
|
1508
|
+
p50?: number;
|
|
1509
|
+
/**
|
|
1510
|
+
* 75th percentile of recent winning bids
|
|
1511
|
+
*/
|
|
1512
|
+
p75?: number;
|
|
1513
|
+
/**
|
|
1514
|
+
* 90th percentile of recent winning bids
|
|
1515
|
+
*/
|
|
1516
|
+
p90?: number;
|
|
1517
|
+
};
|
|
1344
1518
|
/**
|
|
1345
1519
|
* Flat rate parameters for DOOH and time-based campaigns
|
|
1346
1520
|
*/
|
|
1347
1521
|
parameters?: {
|
|
1348
1522
|
/**
|
|
1349
|
-
* Duration in hours for time-based
|
|
1523
|
+
* Duration in hours for time-based pricing
|
|
1350
1524
|
*/
|
|
1351
1525
|
duration_hours?: number;
|
|
1352
1526
|
/**
|
|
1353
|
-
* Guaranteed share of voice
|
|
1527
|
+
* Guaranteed share of voice (0-100)
|
|
1354
1528
|
*/
|
|
1355
1529
|
sov_percentage?: number;
|
|
1356
1530
|
/**
|
|
1357
|
-
* Duration of ad loop rotation in seconds
|
|
1531
|
+
* Duration of ad loop rotation in seconds
|
|
1358
1532
|
*/
|
|
1359
1533
|
loop_duration_seconds?: number;
|
|
1360
1534
|
/**
|
|
1361
|
-
* Minimum
|
|
1535
|
+
* Minimum plays per hour
|
|
1362
1536
|
*/
|
|
1363
1537
|
min_plays_per_hour?: number;
|
|
1364
1538
|
/**
|
|
1365
|
-
* Named venue package identifier
|
|
1539
|
+
* Named venue package identifier
|
|
1366
1540
|
*/
|
|
1367
1541
|
venue_package?: string;
|
|
1368
1542
|
/**
|
|
1369
|
-
* Estimated impressions
|
|
1543
|
+
* Estimated impressions (informational)
|
|
1370
1544
|
*/
|
|
1371
1545
|
estimated_impressions?: number;
|
|
1372
1546
|
/**
|
|
1373
|
-
* Specific daypart for time-based pricing
|
|
1547
|
+
* Specific daypart for time-based pricing
|
|
1374
1548
|
*/
|
|
1375
1549
|
daypart?: string;
|
|
1376
|
-
[k: string]: unknown;
|
|
1550
|
+
[k: string]: unknown | undefined;
|
|
1377
1551
|
};
|
|
1378
1552
|
/**
|
|
1379
1553
|
* Minimum spend requirement per package using this pricing option, in the specified currency
|
|
1380
1554
|
*/
|
|
1381
1555
|
min_spend_per_package?: number;
|
|
1382
|
-
[k: string]: unknown;
|
|
1556
|
+
[k: string]: unknown | undefined;
|
|
1383
1557
|
}
|
|
1384
1558
|
/**
|
|
1385
1559
|
* Measurement capabilities included with a product
|
|
@@ -1401,7 +1575,7 @@ export interface Measurement {
|
|
|
1401
1575
|
* Reporting frequency and format
|
|
1402
1576
|
*/
|
|
1403
1577
|
reporting: string;
|
|
1404
|
-
[k: string]: unknown;
|
|
1578
|
+
[k: string]: unknown | undefined;
|
|
1405
1579
|
}
|
|
1406
1580
|
/**
|
|
1407
1581
|
* Reporting capabilities available for a product
|
|
@@ -1429,7 +1603,7 @@ export interface ReportingCapabilities {
|
|
|
1429
1603
|
* Metrics available in reporting. Impressions and spend are always implicitly included.
|
|
1430
1604
|
*/
|
|
1431
1605
|
available_metrics: AvailableMetric[];
|
|
1432
|
-
[k: string]: unknown;
|
|
1606
|
+
[k: string]: unknown | undefined;
|
|
1433
1607
|
}
|
|
1434
1608
|
/**
|
|
1435
1609
|
* Creative requirements and restrictions for a product
|
|
@@ -1441,7 +1615,7 @@ export interface CreativePolicy {
|
|
|
1441
1615
|
* Whether creative templates are provided
|
|
1442
1616
|
*/
|
|
1443
1617
|
templates_available: boolean;
|
|
1444
|
-
[k: string]: unknown;
|
|
1618
|
+
[k: string]: unknown | undefined;
|
|
1445
1619
|
}
|
|
1446
1620
|
/**
|
|
1447
1621
|
* Structured format identifier with agent URL and format name. Can reference: (1) a concrete format with fixed dimensions (id only), (2) a template format without parameters (id only), or (3) a template format with parameters (id + dimensions/duration). Template formats accept parameters in format_id while concrete formats have fixed dimensions in their definition. Parameterized format IDs create unique, specific format variants.
|
|
@@ -1467,7 +1641,7 @@ export interface FormatID1 {
|
|
|
1467
1641
|
* Duration in milliseconds for time-based formats (video, audio). When specified, creates a parameterized format ID. Omit to reference a template format without parameters.
|
|
1468
1642
|
*/
|
|
1469
1643
|
duration_ms?: number;
|
|
1470
|
-
[k: string]: unknown;
|
|
1644
|
+
[k: string]: unknown | undefined;
|
|
1471
1645
|
}
|
|
1472
1646
|
/**
|
|
1473
1647
|
* Structured format identifier with agent URL and format name. Can reference: (1) a concrete format with fixed dimensions (id only), (2) a template format without parameters (id only), or (3) a template format with parameters (id + dimensions/duration). Template formats accept parameters in format_id while concrete formats have fixed dimensions in their definition. Parameterized format IDs create unique, specific format variants.
|
|
@@ -1493,18 +1667,18 @@ export interface FormatID2 {
|
|
|
1493
1667
|
* Duration in milliseconds for time-based formats (video, audio). When specified, creates a parameterized format ID. Omit to reference a template format without parameters.
|
|
1494
1668
|
*/
|
|
1495
1669
|
duration_ms?: number;
|
|
1496
|
-
[k: string]: unknown;
|
|
1670
|
+
[k: string]: unknown | undefined;
|
|
1497
1671
|
}
|
|
1498
1672
|
/**
|
|
1499
1673
|
* Extension object for platform-specific, vendor-namespaced parameters. Extensions are always optional and must be namespaced under a vendor/platform key (e.g., ext.gam, ext.roku). Used for custom capabilities, partner-specific configuration, and features being proposed for standardization.
|
|
1500
1674
|
*/
|
|
1501
1675
|
/**
|
|
1502
|
-
*
|
|
1676
|
+
* Metro area classification system (e.g., 'nielsen_dma', 'uk_itl2')
|
|
1503
1677
|
*/
|
|
1504
1678
|
/**
|
|
1505
1679
|
* Unique identifier for this property (optional). Enables referencing properties by ID instead of repeating full objects.
|
|
1506
1680
|
*/
|
|
1507
|
-
export type PropertyType = 'website' | 'mobile_app' | 'ctv_app' | 'dooh' | 'podcast' | 'radio' | 'streaming_audio';
|
|
1681
|
+
export type PropertyType = 'website' | 'mobile_app' | 'ctv_app' | 'desktop_app' | 'dooh' | 'podcast' | 'radio' | 'streaming_audio';
|
|
1508
1682
|
/**
|
|
1509
1683
|
* Type of identifier for this property
|
|
1510
1684
|
*/
|
|
@@ -1541,7 +1715,7 @@ export interface Property {
|
|
|
1541
1715
|
/**
|
|
1542
1716
|
* Type of AdCP operation that triggered this webhook. Enables webhook handlers to route to appropriate processing logic.
|
|
1543
1717
|
*/
|
|
1544
|
-
export type TaskType = 'create_media_buy' | 'update_media_buy' | 'sync_creatives' | 'activate_signal' | 'get_signals' | '
|
|
1718
|
+
export type TaskType = 'create_media_buy' | 'update_media_buy' | 'sync_creatives' | 'activate_signal' | 'get_signals' | 'create_property_list' | 'update_property_list' | 'get_property_list' | 'list_property_lists' | 'delete_property_list';
|
|
1545
1719
|
/**
|
|
1546
1720
|
* AdCP domain this task belongs to. Helps classify the operation type at a high level.
|
|
1547
1721
|
*/
|
|
@@ -1607,6 +1781,10 @@ export interface GetProductsResponse {
|
|
|
1607
1781
|
* Array of matching products
|
|
1608
1782
|
*/
|
|
1609
1783
|
products: Product[];
|
|
1784
|
+
/**
|
|
1785
|
+
* Optional array of proposed media plans with budget allocations across products. Publishers include proposals when they can provide strategic guidance based on the brief. Proposals are actionable - buyers can refine them via subsequent get_products calls or execute them directly via create_media_buy.
|
|
1786
|
+
*/
|
|
1787
|
+
proposals?: Proposal[];
|
|
1610
1788
|
/**
|
|
1611
1789
|
* Task-specific errors and warnings (e.g., product filtering issues)
|
|
1612
1790
|
*/
|
|
@@ -1617,11 +1795,97 @@ export interface GetProductsResponse {
|
|
|
1617
1795
|
property_list_applied?: boolean;
|
|
1618
1796
|
context?: ContextObject;
|
|
1619
1797
|
ext?: ExtensionObject;
|
|
1620
|
-
[k: string]: unknown;
|
|
1798
|
+
[k: string]: unknown | undefined;
|
|
1621
1799
|
}
|
|
1622
1800
|
/**
|
|
1623
1801
|
* Represents available advertising inventory
|
|
1624
1802
|
*/
|
|
1803
|
+
export interface Proposal {
|
|
1804
|
+
/**
|
|
1805
|
+
* Unique identifier for this proposal. Used to refine the proposal in subsequent get_products calls or to execute it via create_media_buy.
|
|
1806
|
+
*/
|
|
1807
|
+
proposal_id: string;
|
|
1808
|
+
/**
|
|
1809
|
+
* Human-readable name for this media plan proposal
|
|
1810
|
+
*/
|
|
1811
|
+
name: string;
|
|
1812
|
+
/**
|
|
1813
|
+
* Explanation of the proposal strategy and what it achieves
|
|
1814
|
+
*/
|
|
1815
|
+
description?: string;
|
|
1816
|
+
/**
|
|
1817
|
+
* Budget allocations across products. Allocation percentages MUST sum to 100. Publishers are responsible for ensuring the sum equals 100; buyers SHOULD validate this before execution.
|
|
1818
|
+
*
|
|
1819
|
+
* @minItems 1
|
|
1820
|
+
*/
|
|
1821
|
+
allocations: [ProductAllocation, ...ProductAllocation[]];
|
|
1822
|
+
/**
|
|
1823
|
+
* When this proposal expires and can no longer be executed. After expiration, referenced products or pricing may no longer be available.
|
|
1824
|
+
*/
|
|
1825
|
+
expires_at?: string;
|
|
1826
|
+
/**
|
|
1827
|
+
* Optional budget guidance for this proposal
|
|
1828
|
+
*/
|
|
1829
|
+
total_budget_guidance?: {
|
|
1830
|
+
/**
|
|
1831
|
+
* Minimum recommended budget
|
|
1832
|
+
*/
|
|
1833
|
+
min?: number;
|
|
1834
|
+
/**
|
|
1835
|
+
* Recommended budget for optimal performance
|
|
1836
|
+
*/
|
|
1837
|
+
recommended?: number;
|
|
1838
|
+
/**
|
|
1839
|
+
* Maximum budget before diminishing returns
|
|
1840
|
+
*/
|
|
1841
|
+
max?: number;
|
|
1842
|
+
/**
|
|
1843
|
+
* ISO 4217 currency code
|
|
1844
|
+
*/
|
|
1845
|
+
currency?: string;
|
|
1846
|
+
[k: string]: unknown | undefined;
|
|
1847
|
+
};
|
|
1848
|
+
/**
|
|
1849
|
+
* Explanation of how this proposal aligns with the campaign brief
|
|
1850
|
+
*/
|
|
1851
|
+
brief_alignment?: string;
|
|
1852
|
+
ext?: ExtensionObject;
|
|
1853
|
+
[k: string]: unknown | undefined;
|
|
1854
|
+
}
|
|
1855
|
+
/**
|
|
1856
|
+
* A budget allocation for a specific product within a proposal. Percentages across all allocations in a proposal should sum to 100.
|
|
1857
|
+
*/
|
|
1858
|
+
export interface ProductAllocation {
|
|
1859
|
+
/**
|
|
1860
|
+
* ID of the product (must reference a product in the products array)
|
|
1861
|
+
*/
|
|
1862
|
+
product_id: string;
|
|
1863
|
+
/**
|
|
1864
|
+
* Percentage of total budget allocated to this product (0-100)
|
|
1865
|
+
*/
|
|
1866
|
+
allocation_percentage: number;
|
|
1867
|
+
/**
|
|
1868
|
+
* Recommended pricing option ID from the product's pricing_options array
|
|
1869
|
+
*/
|
|
1870
|
+
pricing_option_id?: string;
|
|
1871
|
+
/**
|
|
1872
|
+
* Explanation of why this product and allocation are recommended
|
|
1873
|
+
*/
|
|
1874
|
+
rationale?: string;
|
|
1875
|
+
/**
|
|
1876
|
+
* Optional ordering hint for multi-line-item plans (1-based)
|
|
1877
|
+
*/
|
|
1878
|
+
sequence?: number;
|
|
1879
|
+
/**
|
|
1880
|
+
* Categorical tags for this allocation (e.g., 'desktop', 'german', 'mobile') - useful for grouping/filtering allocations by dimension
|
|
1881
|
+
*/
|
|
1882
|
+
tags?: string[];
|
|
1883
|
+
ext?: ExtensionObject;
|
|
1884
|
+
[k: string]: unknown | undefined;
|
|
1885
|
+
}
|
|
1886
|
+
/**
|
|
1887
|
+
* Standard error structure for task-specific errors and warnings
|
|
1888
|
+
*/
|
|
1625
1889
|
export interface Error {
|
|
1626
1890
|
/**
|
|
1627
1891
|
* Error code for programmatic handling
|
|
@@ -1647,15 +1911,15 @@ export interface Error {
|
|
|
1647
1911
|
* Additional task-specific error details
|
|
1648
1912
|
*/
|
|
1649
1913
|
details?: {
|
|
1650
|
-
[k: string]: unknown;
|
|
1914
|
+
[k: string]: unknown | undefined;
|
|
1651
1915
|
};
|
|
1652
|
-
[k: string]: unknown;
|
|
1916
|
+
[k: string]: unknown | undefined;
|
|
1653
1917
|
}
|
|
1654
1918
|
/**
|
|
1655
1919
|
* Opaque correlation data that is echoed unchanged in responses. Used for internal tracking, UI session IDs, trace IDs, and other caller-specific identifiers that don't affect protocol behavior. Context data is never parsed by AdCP agents - it's simply preserved and returned.
|
|
1656
1920
|
*/
|
|
1657
1921
|
export interface ContextObject {
|
|
1658
|
-
[k: string]: unknown;
|
|
1922
|
+
[k: string]: unknown | undefined;
|
|
1659
1923
|
}
|
|
1660
1924
|
/**
|
|
1661
1925
|
* Progress data for working get_products
|
|
@@ -1679,7 +1943,7 @@ export interface GetProductsAsyncWorking {
|
|
|
1679
1943
|
step_number?: number;
|
|
1680
1944
|
context?: ContextObject;
|
|
1681
1945
|
ext?: ExtensionObject;
|
|
1682
|
-
[k: string]: unknown;
|
|
1946
|
+
[k: string]: unknown | undefined;
|
|
1683
1947
|
}
|
|
1684
1948
|
/**
|
|
1685
1949
|
* Input requirements for get_products needing clarification
|
|
@@ -1699,7 +1963,7 @@ export interface GetProductsAsyncInputRequired {
|
|
|
1699
1963
|
suggestions?: string[];
|
|
1700
1964
|
context?: ContextObject;
|
|
1701
1965
|
ext?: ExtensionObject;
|
|
1702
|
-
[k: string]: unknown;
|
|
1966
|
+
[k: string]: unknown | undefined;
|
|
1703
1967
|
}
|
|
1704
1968
|
/**
|
|
1705
1969
|
* Acknowledgment for submitted get_products (custom curation)
|
|
@@ -1711,7 +1975,7 @@ export interface GetProductsAsyncSubmitted {
|
|
|
1711
1975
|
estimated_completion?: string;
|
|
1712
1976
|
context?: ContextObject;
|
|
1713
1977
|
ext?: ExtensionObject;
|
|
1714
|
-
[k: string]: unknown;
|
|
1978
|
+
[k: string]: unknown | undefined;
|
|
1715
1979
|
}
|
|
1716
1980
|
/**
|
|
1717
1981
|
* Success response - media buy created successfully
|
|
@@ -1735,7 +1999,7 @@ export interface CreateMediaBuySuccess {
|
|
|
1735
1999
|
packages: Package[];
|
|
1736
2000
|
context?: ContextObject;
|
|
1737
2001
|
ext?: ExtensionObject;
|
|
1738
|
-
[k: string]: unknown;
|
|
2002
|
+
[k: string]: unknown | undefined;
|
|
1739
2003
|
}
|
|
1740
2004
|
/**
|
|
1741
2005
|
* A specific product within a media buy (line item)
|
|
@@ -1749,7 +2013,7 @@ export interface CreateMediaBuyError {
|
|
|
1749
2013
|
errors: [Error, ...Error[]];
|
|
1750
2014
|
context?: ContextObject;
|
|
1751
2015
|
ext?: ExtensionObject;
|
|
1752
|
-
[k: string]: unknown;
|
|
2016
|
+
[k: string]: unknown | undefined;
|
|
1753
2017
|
}
|
|
1754
2018
|
/**
|
|
1755
2019
|
* Progress data for working create_media_buy
|
|
@@ -1773,7 +2037,7 @@ export interface CreateMediaBuyAsyncWorking {
|
|
|
1773
2037
|
step_number?: number;
|
|
1774
2038
|
context?: ContextObject;
|
|
1775
2039
|
ext?: ExtensionObject;
|
|
1776
|
-
[k: string]: unknown;
|
|
2040
|
+
[k: string]: unknown | undefined;
|
|
1777
2041
|
}
|
|
1778
2042
|
/**
|
|
1779
2043
|
* Input requirements for create_media_buy needing user input
|
|
@@ -1789,7 +2053,7 @@ export interface CreateMediaBuyAsyncInputRequired {
|
|
|
1789
2053
|
errors?: Error[];
|
|
1790
2054
|
context?: ContextObject;
|
|
1791
2055
|
ext?: ExtensionObject;
|
|
1792
|
-
[k: string]: unknown;
|
|
2056
|
+
[k: string]: unknown | undefined;
|
|
1793
2057
|
}
|
|
1794
2058
|
/**
|
|
1795
2059
|
* Acknowledgment for submitted create_media_buy
|
|
@@ -1797,7 +2061,7 @@ export interface CreateMediaBuyAsyncInputRequired {
|
|
|
1797
2061
|
export interface CreateMediaBuyAsyncSubmitted {
|
|
1798
2062
|
context?: ContextObject;
|
|
1799
2063
|
ext?: ExtensionObject;
|
|
1800
|
-
[k: string]: unknown;
|
|
2064
|
+
[k: string]: unknown | undefined;
|
|
1801
2065
|
}
|
|
1802
2066
|
/**
|
|
1803
2067
|
* Success response - media buy updated successfully
|
|
@@ -1821,7 +2085,7 @@ export interface UpdateMediaBuySuccess {
|
|
|
1821
2085
|
affected_packages?: Package[];
|
|
1822
2086
|
context?: ContextObject;
|
|
1823
2087
|
ext?: ExtensionObject;
|
|
1824
|
-
[k: string]: unknown;
|
|
2088
|
+
[k: string]: unknown | undefined;
|
|
1825
2089
|
}
|
|
1826
2090
|
/**
|
|
1827
2091
|
* Error response - operation failed, no changes applied
|
|
@@ -1835,7 +2099,7 @@ export interface UpdateMediaBuyError {
|
|
|
1835
2099
|
errors: [Error, ...Error[]];
|
|
1836
2100
|
context?: ContextObject;
|
|
1837
2101
|
ext?: ExtensionObject;
|
|
1838
|
-
[k: string]: unknown;
|
|
2102
|
+
[k: string]: unknown | undefined;
|
|
1839
2103
|
}
|
|
1840
2104
|
/**
|
|
1841
2105
|
* Progress data for working update_media_buy
|
|
@@ -1859,7 +2123,7 @@ export interface UpdateMediaBuyAsyncWorking {
|
|
|
1859
2123
|
step_number?: number;
|
|
1860
2124
|
context?: ContextObject;
|
|
1861
2125
|
ext?: ExtensionObject;
|
|
1862
|
-
[k: string]: unknown;
|
|
2126
|
+
[k: string]: unknown | undefined;
|
|
1863
2127
|
}
|
|
1864
2128
|
/**
|
|
1865
2129
|
* Input requirements for update_media_buy needing user input
|
|
@@ -1871,7 +2135,7 @@ export interface UpdateMediaBuyAsyncInputRequired {
|
|
|
1871
2135
|
reason?: 'APPROVAL_REQUIRED' | 'CHANGE_CONFIRMATION';
|
|
1872
2136
|
context?: ContextObject;
|
|
1873
2137
|
ext?: ExtensionObject;
|
|
1874
|
-
[k: string]: unknown;
|
|
2138
|
+
[k: string]: unknown | undefined;
|
|
1875
2139
|
}
|
|
1876
2140
|
/**
|
|
1877
2141
|
* Acknowledgment for submitted update_media_buy
|
|
@@ -1879,7 +2143,7 @@ export interface UpdateMediaBuyAsyncInputRequired {
|
|
|
1879
2143
|
export interface UpdateMediaBuyAsyncSubmitted {
|
|
1880
2144
|
context?: ContextObject;
|
|
1881
2145
|
ext?: ExtensionObject;
|
|
1882
|
-
[k: string]: unknown;
|
|
2146
|
+
[k: string]: unknown | undefined;
|
|
1883
2147
|
}
|
|
1884
2148
|
/**
|
|
1885
2149
|
* Success response - sync operation processed creatives (may include per-item failures)
|
|
@@ -1930,13 +2194,13 @@ export interface SyncCreativesSuccess {
|
|
|
1930
2194
|
* Assignment errors by package ID (only present when assignment failures occurred)
|
|
1931
2195
|
*/
|
|
1932
2196
|
assignment_errors?: {
|
|
1933
|
-
[k: string]: unknown;
|
|
2197
|
+
[k: string]: unknown | undefined;
|
|
1934
2198
|
};
|
|
1935
|
-
[k: string]: unknown;
|
|
2199
|
+
[k: string]: unknown | undefined;
|
|
1936
2200
|
}[];
|
|
1937
2201
|
context?: ContextObject;
|
|
1938
2202
|
ext?: ExtensionObject;
|
|
1939
|
-
[k: string]: unknown;
|
|
2203
|
+
[k: string]: unknown | undefined;
|
|
1940
2204
|
}
|
|
1941
2205
|
/**
|
|
1942
2206
|
* Error response - operation failed completely, no creatives were processed
|
|
@@ -1950,7 +2214,7 @@ export interface SyncCreativesError {
|
|
|
1950
2214
|
errors: [Error, ...Error[]];
|
|
1951
2215
|
context?: ContextObject;
|
|
1952
2216
|
ext?: ExtensionObject;
|
|
1953
|
-
[k: string]: unknown;
|
|
2217
|
+
[k: string]: unknown | undefined;
|
|
1954
2218
|
}
|
|
1955
2219
|
/**
|
|
1956
2220
|
* Progress data for working sync_creatives
|
|
@@ -1982,7 +2246,7 @@ export interface SyncCreativesAsyncWorking {
|
|
|
1982
2246
|
creatives_total?: number;
|
|
1983
2247
|
context?: ContextObject;
|
|
1984
2248
|
ext?: ExtensionObject;
|
|
1985
|
-
[k: string]: unknown;
|
|
2249
|
+
[k: string]: unknown | undefined;
|
|
1986
2250
|
}
|
|
1987
2251
|
/**
|
|
1988
2252
|
* Input requirements for sync_creatives needing user input
|
|
@@ -1994,7 +2258,7 @@ export interface SyncCreativesAsyncInputRequired {
|
|
|
1994
2258
|
reason?: 'APPROVAL_REQUIRED' | 'ASSET_CONFIRMATION' | 'FORMAT_CLARIFICATION';
|
|
1995
2259
|
context?: ContextObject;
|
|
1996
2260
|
ext?: ExtensionObject;
|
|
1997
|
-
[k: string]: unknown;
|
|
2261
|
+
[k: string]: unknown | undefined;
|
|
1998
2262
|
}
|
|
1999
2263
|
/**
|
|
2000
2264
|
* Acknowledgment for submitted sync_creatives
|
|
@@ -2002,6 +2266,6 @@ export interface SyncCreativesAsyncInputRequired {
|
|
|
2002
2266
|
export interface SyncCreativesAsyncSubmitted {
|
|
2003
2267
|
context?: ContextObject;
|
|
2004
2268
|
ext?: ExtensionObject;
|
|
2005
|
-
[k: string]: unknown;
|
|
2269
|
+
[k: string]: unknown | undefined;
|
|
2006
2270
|
}
|
|
2007
2271
|
//# sourceMappingURL=core.generated.d.ts.map
|