@adcp/client 4.22.1 → 4.23.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.
Files changed (65) hide show
  1. package/dist/lib/index.d.ts +1 -1
  2. package/dist/lib/index.d.ts.map +1 -1
  3. package/dist/lib/index.js.map +1 -1
  4. package/dist/lib/testing/compliance/comply.d.ts +22 -5
  5. package/dist/lib/testing/compliance/comply.d.ts.map +1 -1
  6. package/dist/lib/testing/compliance/comply.js +242 -276
  7. package/dist/lib/testing/compliance/comply.js.map +1 -1
  8. package/dist/lib/testing/compliance/index.d.ts +1 -0
  9. package/dist/lib/testing/compliance/index.d.ts.map +1 -1
  10. package/dist/lib/testing/compliance/index.js +6 -1
  11. package/dist/lib/testing/compliance/index.js.map +1 -1
  12. package/dist/lib/testing/compliance/platform-storyboards.d.ts +44 -0
  13. package/dist/lib/testing/compliance/platform-storyboards.d.ts.map +1 -0
  14. package/dist/lib/testing/compliance/platform-storyboards.js +230 -0
  15. package/dist/lib/testing/compliance/platform-storyboards.js.map +1 -0
  16. package/dist/lib/testing/compliance/storyboard-tracks.d.ts +2 -9
  17. package/dist/lib/testing/compliance/storyboard-tracks.d.ts.map +1 -1
  18. package/dist/lib/testing/compliance/storyboard-tracks.js +4 -44
  19. package/dist/lib/testing/compliance/storyboard-tracks.js.map +1 -1
  20. package/dist/lib/testing/index.d.ts +1 -1
  21. package/dist/lib/testing/index.d.ts.map +1 -1
  22. package/dist/lib/testing/index.js +6 -1
  23. package/dist/lib/testing/index.js.map +1 -1
  24. package/dist/lib/types/core.generated.d.ts +241 -2
  25. package/dist/lib/types/core.generated.d.ts.map +1 -1
  26. package/dist/lib/types/core.generated.js +1 -1
  27. package/dist/lib/types/schemas.generated.d.ts +3380 -3154
  28. package/dist/lib/types/schemas.generated.d.ts.map +1 -1
  29. package/dist/lib/types/schemas.generated.js +220 -115
  30. package/dist/lib/types/schemas.generated.js.map +1 -1
  31. package/dist/lib/types/tools.generated.d.ts +267 -74
  32. package/dist/lib/types/tools.generated.d.ts.map +1 -1
  33. package/dist/lib/version.d.ts +3 -3
  34. package/dist/lib/version.js +3 -3
  35. package/docs/llms.txt +46 -30
  36. package/package.json +1 -1
  37. package/storyboards/audience_sync.yaml +18 -29
  38. package/storyboards/behavioral_analysis.yaml +40 -72
  39. package/storyboards/brand_rights.yaml +172 -75
  40. package/storyboards/campaign_governance_conditions.yaml +187 -0
  41. package/storyboards/campaign_governance_delivery.yaml +231 -0
  42. package/storyboards/campaign_governance_denied.yaml +135 -0
  43. package/storyboards/capability_discovery.yaml +106 -0
  44. package/storyboards/content_standards.yaml +251 -0
  45. package/storyboards/creative_ad_server.yaml +108 -16
  46. package/storyboards/creative_lifecycle.yaml +284 -0
  47. package/storyboards/creative_sales_agent.yaml +2 -6
  48. package/storyboards/creative_template.yaml +1 -5
  49. package/storyboards/error_compliance.yaml +105 -108
  50. package/storyboards/media_buy_catalog_creative.yaml +6 -4
  51. package/storyboards/media_buy_governance_escalation.yaml +9 -5
  52. package/storyboards/media_buy_guaranteed_approval.yaml +9 -7
  53. package/storyboards/media_buy_non_guaranteed.yaml +7 -6
  54. package/storyboards/media_buy_proposal_mode.yaml +9 -8
  55. package/storyboards/media_buy_seller.yaml +153 -165
  56. package/storyboards/media_buy_state_machine.yaml +100 -99
  57. package/storyboards/property_governance.yaml +239 -0
  58. package/storyboards/schema.yaml +2 -2
  59. package/storyboards/schema_validation.yaml +58 -51
  60. package/storyboards/si_session.yaml +99 -317
  61. package/storyboards/signal_marketplace.yaml +6 -5
  62. package/storyboards/signal_owned.yaml +5 -5
  63. package/storyboards/social_platform.yaml +274 -0
  64. package/storyboards/governance_content_standards.yaml +0 -213
  65. package/storyboards/governance_property_lists.yaml +0 -372
@@ -137,6 +137,14 @@ export type SignalID = {
137
137
  * Postal code system (e.g., 'us_zip', 'gb_outward')
138
138
  */
139
139
  export type PostalCodeSystem = 'us_zip' | 'us_zip_plus_four' | 'gb_outward' | 'gb_full' | 'ca_fsa' | 'ca_full' | 'de_plz' | 'fr_code_postal' | 'au_postcode' | 'ch_plz' | 'at_plz';
140
+ /**
141
+ * The performance metric this standard applies to.
142
+ */
143
+ export type PerformanceStandardMetric = 'viewability' | 'ivt' | 'completion_rate' | 'brand_safety' | 'attention_score';
144
+ /**
145
+ * Measurement standard. Required when metric is 'viewability' (MRC and GroupM define materially different thresholds). Omit for other metrics.
146
+ */
147
+ export type ViewabilityStandard = 'mrc' | 'groupm';
140
148
  /**
141
149
  * Request parameters for discovering or refining advertising products. buying_mode declares the buyer's intent: 'brief' for curated discovery, 'wholesale' for raw catalog access, or 'refine' to iterate on known products and proposals.
142
150
  */
@@ -463,6 +471,10 @@ export interface ProductFilters {
463
471
  geo_proximity?: {
464
472
  [k: string]: unknown | undefined;
465
473
  }[];
474
+ /**
475
+ * Filter to products that can meet the buyer's performance standard requirements. Each entry specifies a metric, minimum threshold, and optionally a required vendor and standard. Products that cannot meet these thresholds or do not support the specified vendors are excluded. Use this to tell the seller upfront: 'I need DoubleVerify for viewability at 70% MRC.'
476
+ */
477
+ required_performance_standards?: PerformanceStandard[];
466
478
  /**
467
479
  * Filter by keyword relevance for search and retail media platforms. Returns products that support keyword targeting for these terms. Allows the sell-side agent to assess keyword availability and recommend appropriate products. Use match_type to indicate the desired precision.
468
480
  */
@@ -532,6 +544,18 @@ export interface MediaBuyFeatures {
532
544
  catalog_management?: boolean;
533
545
  [k: string]: boolean | undefined;
534
546
  }
547
+ /**
548
+ * A rate threshold for a performance metric, measured by a specified vendor. The threshold is a floor or ceiling depending on the metric: viewability, completion_rate, brand_safety, and attention_score are floors (must exceed); ivt is a ceiling (must not exceed).
549
+ */
550
+ export interface PerformanceStandard {
551
+ metric: PerformanceStandardMetric;
552
+ /**
553
+ * Rate threshold as a decimal (e.g., 0.70 for 70%). Whether this is a floor or ceiling depends on the metric: for viewability, completion_rate, brand_safety, attention_score the actual rate must be >= threshold; for ivt the actual rate must be <= threshold.
554
+ */
555
+ threshold: number;
556
+ standard?: ViewabilityStandard;
557
+ vendor: BrandReference;
558
+ }
535
559
  /**
536
560
  * [AdCP 3.0] Reference to an externally managed property list. When provided, the sales agent should filter products to only those available on properties in the list.
537
561
  */
@@ -670,6 +694,10 @@ export type ForecastMethod = 'estimate' | 'modeled' | 'guaranteed';
670
694
  * Unit of measurement for reach and audience_size metrics in this forecast. Required for cross-channel forecast comparison.
671
695
  */
672
696
  export type ReachUnit = 'individuals' | 'households' | 'devices' | 'accounts' | 'cookies' | 'custom';
697
+ /**
698
+ * Remedy types available when a performance standard or billing measurement threshold is breached.
699
+ */
700
+ export type MakegoodRemedy = 'additional_delivery' | 'credit' | 'invoice_adjustment';
673
701
  /**
674
702
  * Available frequencies for delivery reports and metrics updates
675
703
  */
@@ -884,6 +912,12 @@ export interface Product {
884
912
  */
885
913
  notes?: string;
886
914
  };
915
+ measurement_terms?: MeasurementTerms;
916
+ /**
917
+ * Seller's default performance standards for this product: viewability, IVT, completion rate, brand safety, attention score. Buyers may propose different standards at media buy creation. When absent, no structured performance standards apply.
918
+ */
919
+ performance_standards?: PerformanceStandard[];
920
+ cancellation_policy?: CancellationPolicy;
887
921
  reporting_capabilities?: ReportingCapabilities;
888
922
  creative_policy?: CreativePolicy;
889
923
  /**
@@ -1645,6 +1679,53 @@ export interface OutcomeMeasurement {
1645
1679
  */
1646
1680
  reporting: string;
1647
1681
  }
1682
+ /**
1683
+ * Seller's default billing measurement and makegood terms. Declares who counts the billing metric and what remedies apply when thresholds are breached. Buyers may propose different terms at media buy creation — sellers accept, reject (TERMS_REJECTED), or adjust per their policy.
1684
+ */
1685
+ export interface MeasurementTerms {
1686
+ /**
1687
+ * Which vendor's count of the billing metric governs invoicing. The billing metric is determined by the pricing_model on the selected pricing_option (e.g., impressions for CPM, completed views for CPCV).
1688
+ */
1689
+ billing_measurement?: {
1690
+ vendor: BrandReference;
1691
+ /**
1692
+ * Maximum acceptable variance between the billing vendor's count and the other party's count before resolution is triggered (e.g., 10 means a 10% divergence triggers review).
1693
+ */
1694
+ max_variance_percent?: number;
1695
+ };
1696
+ /**
1697
+ * Remedies available when a performance standard or billing measurement variance is breached. Seller declares which remedy types they support. When a breach occurs, the seller proposes a remedy from this menu; the buyer accepts or disputes.
1698
+ */
1699
+ makegood_policy?: {
1700
+ /**
1701
+ * Remedy types the seller supports. Ordered by seller preference (first = preferred). Seller proposes from this list when a breach occurs; buyer accepts or disputes.
1702
+ */
1703
+ available_remedies: MakegoodRemedy[];
1704
+ };
1705
+ }
1706
+ /**
1707
+ * Cancellation terms for this product. Declares the minimum notice period required before cancellation takes effect and any penalties for insufficient notice. Relevant for guaranteed delivery products. Buyers accept these terms by creating a media buy against the product.
1708
+ */
1709
+ export interface CancellationPolicy {
1710
+ notice_period: Duration;
1711
+ /**
1712
+ * Fee applied when the notice period is not met.
1713
+ */
1714
+ cancellation_fee: {
1715
+ /**
1716
+ * Fee calculation method. 'percent_remaining': percentage of remaining uncommitted spend. 'full_commitment': buyer owes the full committed budget regardless of delivery. 'fixed_fee': flat monetary amount. 'none': no financial fee (cancellation with notice is free).
1717
+ */
1718
+ type: 'percent_remaining' | 'full_commitment' | 'fixed_fee' | 'none';
1719
+ /**
1720
+ * Fee rate as a decimal proportion of remaining committed spend. Required when type is 'percent_remaining' (e.g., 0.5 means 50% of remaining spend).
1721
+ */
1722
+ rate?: number;
1723
+ /**
1724
+ * Fixed fee amount in the buy's currency. Required when type is 'fixed_fee'.
1725
+ */
1726
+ amount?: number;
1727
+ };
1728
+ }
1648
1729
  /**
1649
1730
  * Reporting capabilities available for a product
1650
1731
  */
@@ -2080,7 +2161,7 @@ export interface InsertionOrder {
2080
2161
  */
2081
2162
  io_id: string;
2082
2163
  /**
2083
- * Structured terms for agent validation. Agents can programmatically verify these match the proposal and campaign requirements.
2164
+ * Summary fields echoed from the committed proposal for agent verification. Buyer agents use these to confirm the IO matches what was negotiated before a human signs. These are read-only summaries, not negotiation surfaces — deal terms live on products and packages.
2084
2165
  */
2085
2166
  terms?: {
2086
2167
  /**
@@ -2262,6 +2343,19 @@ export type FormatIDParameter = 'dimensions' | 'duration';
2262
2343
  * Standardized macro placeholders for dynamic value substitution in creative tracking URLs. Macros are replaced with actual values at impression time. See docs/creative/universal-macros.mdx for detailed documentation.
2263
2344
  */
2264
2345
  export type UniversalMacro = 'MEDIA_BUY_ID' | 'PACKAGE_ID' | 'CREATIVE_ID' | 'CACHEBUSTER' | 'TIMESTAMP' | 'CLICK_URL' | 'GDPR' | 'GDPR_CONSENT' | 'US_PRIVACY' | 'GPP_STRING' | 'GPP_SID' | 'IP_ADDRESS' | 'LIMIT_AD_TRACKING' | 'DEVICE_TYPE' | 'OS' | 'OS_VERSION' | 'DEVICE_MAKE' | 'DEVICE_MODEL' | 'USER_AGENT' | 'APP_BUNDLE' | 'APP_NAME' | 'COUNTRY' | 'REGION' | 'CITY' | 'ZIP' | 'DMA' | 'LAT' | 'LONG' | 'DEVICE_ID' | 'DEVICE_ID_TYPE' | 'DOMAIN' | 'PAGE_URL' | 'REFERRER' | 'KEYWORDS' | 'PLACEMENT_ID' | 'FOLD_POSITION' | 'AD_WIDTH' | 'AD_HEIGHT' | 'VIDEO_ID' | 'VIDEO_TITLE' | 'VIDEO_DURATION' | 'VIDEO_CATEGORY' | 'CONTENT_GENRE' | 'CONTENT_RATING' | 'PLAYER_WIDTH' | 'PLAYER_HEIGHT' | 'POD_POSITION' | 'POD_SIZE' | 'AD_BREAK_ID' | 'STATION_ID' | 'COLLECTION_NAME' | 'INSTALLMENT_ID' | 'AUDIO_DURATION' | 'AXEM' | 'CATALOG_ID' | 'SKU' | 'GTIN' | 'OFFERING_ID' | 'JOB_ID' | 'HOTEL_ID' | 'FLIGHT_ID' | 'VEHICLE_ID' | 'LISTING_ID' | 'STORE_ID' | 'PROGRAM_ID' | 'DESTINATION_ID' | 'CREATIVE_VARIANT_ID' | 'APP_ITEM_ID';
2346
+ /**
2347
+ * A pricing option offered by a vendor agent (signals, creative, governance). Combines pricing_option_id with the pricing model fields. Pass pricing_option_id in report_usage for billing verification. All vendor discovery responses return pricing_options as an array — vendors may offer multiple options (volume tiers, context-specific rates, different models per product line).
2348
+ */
2349
+ export type VendorPricingOption = {
2350
+ /**
2351
+ * Opaque identifier for this pricing option, unique within the vendor agent. Pass this in report_usage to identify which pricing option was applied.
2352
+ */
2353
+ pricing_option_id: string;
2354
+ } & VendorPricing;
2355
+ /**
2356
+ * Pricing model for a vendor service. Discriminated by model: 'cpm' (fixed CPM), 'percent_of_media' (percentage of spend with optional CPM cap), 'flat_fee' (fixed charge per reporting period), or 'per_unit' (fixed price per unit of work).
2357
+ */
2358
+ export type VendorPricing = CpmPricing | PercentOfMediaPricing | FlatFeePricing | PerUnitPricing;
2265
2359
  /**
2266
2360
  * Capabilities supported by creative agents for format handling
2267
2361
  */
@@ -2429,6 +2523,10 @@ export interface Format {
2429
2523
  * Metrics this format can produce in delivery reporting. Buyers receive the intersection of format reported_metrics and product available_metrics. If omitted, the format defers entirely to product-level metric declarations.
2430
2524
  */
2431
2525
  reported_metrics?: AvailableMetric[];
2526
+ /**
2527
+ * Pricing options for this format. Used by transformation and generation agents that charge per format adapted, per image generated, or per unit of work. Present when the request included include_pricing=true and account. Ad servers and library-based agents expose pricing on list_creatives instead.
2528
+ */
2529
+ pricing_options?: VendorPricingOption[];
2432
2530
  }
2433
2531
  export interface BaseIndividualAsset {
2434
2532
  /**
@@ -2525,6 +2623,78 @@ export interface BaseGroupAsset {
2525
2623
  */
2526
2624
  overlays?: Overlay[];
2527
2625
  }
2626
+ /**
2627
+ * Fixed cost per thousand impressions
2628
+ */
2629
+ export interface CpmPricing {
2630
+ model: 'cpm';
2631
+ /**
2632
+ * Cost per thousand impressions
2633
+ */
2634
+ cpm: number;
2635
+ /**
2636
+ * ISO 4217 currency code
2637
+ */
2638
+ currency: string;
2639
+ ext?: ExtensionObject;
2640
+ }
2641
+ /**
2642
+ * Percentage of media spend charged for this signal. When max_cpm is set, the effective rate is capped at that CPM — useful for platforms like The Trade Desk that use percent-of-media pricing with a CPM ceiling.
2643
+ */
2644
+ export interface PercentOfMediaPricing {
2645
+ model: 'percent_of_media';
2646
+ /**
2647
+ * Percentage of media spend, e.g. 15 = 15%
2648
+ */
2649
+ percent: number;
2650
+ /**
2651
+ * Optional CPM cap. When set, the effective charge is min(percent × media_spend_per_mille, max_cpm).
2652
+ */
2653
+ max_cpm?: number;
2654
+ /**
2655
+ * ISO 4217 currency code for the resulting charge
2656
+ */
2657
+ currency: string;
2658
+ ext?: ExtensionObject;
2659
+ }
2660
+ /**
2661
+ * Fixed charge per billing period, regardless of impressions or spend. Used for licensed data bundles and audience subscriptions.
2662
+ */
2663
+ export interface FlatFeePricing {
2664
+ model: 'flat_fee';
2665
+ /**
2666
+ * Fixed charge for the billing period
2667
+ */
2668
+ amount: number;
2669
+ /**
2670
+ * Billing period for the flat fee.
2671
+ */
2672
+ period: 'monthly' | 'quarterly' | 'annual' | 'campaign';
2673
+ /**
2674
+ * ISO 4217 currency code
2675
+ */
2676
+ currency: string;
2677
+ ext?: ExtensionObject;
2678
+ }
2679
+ /**
2680
+ * Fixed price per unit of work. Used for creative transformation (per format), AI generation (per image, per token), and rendering (per variant). The unit field describes what is counted; unit_price is the cost per one unit.
2681
+ */
2682
+ export interface PerUnitPricing {
2683
+ model: 'per_unit';
2684
+ /**
2685
+ * What is counted — e.g. 'format', 'image', 'token', 'variant', 'render', 'evaluation'.
2686
+ */
2687
+ unit: string;
2688
+ /**
2689
+ * Cost per one unit
2690
+ */
2691
+ unit_price: number;
2692
+ /**
2693
+ * ISO 4217 currency code
2694
+ */
2695
+ currency: string;
2696
+ ext?: ExtensionObject;
2697
+ }
2528
2698
  /**
2529
2699
  * Budget pacing strategy
2530
2700
  */
@@ -3031,6 +3201,11 @@ export interface PackageRequest {
3031
3201
  */
3032
3202
  optimization_goals?: OptimizationGoal[];
3033
3203
  targeting_overlay?: TargetingOverlay;
3204
+ measurement_terms?: MeasurementTerms;
3205
+ /**
3206
+ * Buyer's proposed performance standards for this package. Overrides product defaults. Seller accepts, rejects with TERMS_REJECTED, or adjusts. When absent, product's performance_standards apply.
3207
+ */
3208
+ performance_standards?: PerformanceStandard[];
3034
3209
  /**
3035
3210
  * Assign existing library creatives to this package with optional weights and placement targeting
3036
3211
  */
@@ -4270,6 +4445,11 @@ export interface Package {
4270
4445
  */
4271
4446
  format_ids?: FormatID[];
4272
4447
  targeting_overlay?: TargetingOverlay;
4448
+ measurement_terms?: MeasurementTerms;
4449
+ /**
4450
+ * Agreed performance standards for this package. When any entry specifies a vendor, creatives assigned to this package MUST include corresponding tracker_script or tracker_pixel assets from that vendor.
4451
+ */
4452
+ performance_standards?: PerformanceStandard[];
4273
4453
  /**
4274
4454
  * Creative assets assigned to this package
4275
4455
  */
@@ -5548,10 +5728,7 @@ export interface DeliveryMetrics {
5548
5728
  * Viewable impression rate (viewable_impressions / measurable_impressions). Range 0.0 to 1.0.
5549
5729
  */
5550
5730
  viewable_rate?: number;
5551
- /**
5552
- * Viewability measurement standard. 'mrc': 50% of pixels in view for 1 second (display) or 2 seconds (video), per MRC/IAB guidelines. 'groupm': 100% of pixels in view for the same durations. These are materially different thresholds and should not be compared across standards.
5553
- */
5554
- standard?: 'mrc' | 'groupm';
5731
+ standard?: ViewabilityStandard;
5555
5732
  };
5556
5733
  /**
5557
5734
  * Total engagements — direct interactions with the ad beyond viewing. Includes social reactions/comments/shares, story/unit opens, interactive overlay taps on CTV, companion banner interactions on audio. Platform-specific; corresponds to the 'engagements' optimization metric.
@@ -6435,6 +6612,7 @@ export interface BuildCreativeRequest {
6435
6612
  * Array of format IDs to generate in a single call. Mutually exclusive with target_format_id. The creative agent produces one manifest per format. Each format definition specifies its own required input assets and output structure.
6436
6613
  */
6437
6614
  target_format_ids?: FormatID[];
6615
+ account?: AccountReference;
6438
6616
  brand?: BrandReference;
6439
6617
  quality?: CreativeQuality;
6440
6618
  /**
@@ -6765,9 +6943,43 @@ export interface BuildCreativeSuccess {
6765
6943
  expires_at: string;
6766
6944
  };
6767
6945
  preview_error?: Error;
6946
+ /**
6947
+ * Which rate card pricing option was applied for this build. Present when the creative agent charges for its services. Pass this in report_usage to identify which pricing option was applied.
6948
+ */
6949
+ pricing_option_id?: string;
6950
+ /**
6951
+ * Cost incurred for this build, denominated in currency. May be 0 for CPM-priced creatives where cost accrues at serve time rather than build time.
6952
+ */
6953
+ vendor_cost?: number;
6954
+ /**
6955
+ * ISO 4217 currency code for vendor_cost.
6956
+ */
6957
+ currency?: string;
6958
+ consumption?: CreativeConsumption;
6768
6959
  context?: ContextObject;
6769
6960
  ext?: ExtensionObject;
6770
6961
  }
6962
+ /**
6963
+ * Structured consumption details for this build. Informational — lets the buyer verify that vendor_cost is consistent with the rate card. vendor_cost is the billing source of truth.
6964
+ */
6965
+ export interface CreativeConsumption {
6966
+ /**
6967
+ * LLM or generation tokens consumed during creative generation.
6968
+ */
6969
+ tokens?: number;
6970
+ /**
6971
+ * Number of images produced during generation.
6972
+ */
6973
+ images_generated?: number;
6974
+ /**
6975
+ * Number of render passes performed (video, animation).
6976
+ */
6977
+ renders?: number;
6978
+ /**
6979
+ * Processing time billed, in seconds. For compute-time pricing models.
6980
+ */
6981
+ duration_seconds?: number;
6982
+ }
6771
6983
  /**
6772
6984
  * Multi-format success response. Returned when the request used target_format_ids. Contains one manifest per requested format. Multi-format requests are atomic — all formats must succeed or the entire request fails with an error response. Array order corresponds to the target_format_ids request order.
6773
6985
  */
@@ -6831,6 +7043,19 @@ export interface BuildCreativeMultiSuccess {
6831
7043
  expires_at: string;
6832
7044
  };
6833
7045
  preview_error?: Error;
7046
+ /**
7047
+ * Which rate card pricing option was applied for this build. Represents the total cost of the entire multi-format build call. Present when the creative agent charges for its services.
7048
+ */
7049
+ pricing_option_id?: string;
7050
+ /**
7051
+ * Total cost incurred for this multi-format build, denominated in currency. May be 0 for CPM-priced creatives where cost accrues at serve time.
7052
+ */
7053
+ vendor_cost?: number;
7054
+ /**
7055
+ * ISO 4217 currency code for vendor_cost.
7056
+ */
7057
+ currency?: string;
7058
+ consumption?: CreativeConsumption;
6834
7059
  context?: ContextObject;
6835
7060
  ext?: ExtensionObject;
6836
7061
  }
@@ -7283,10 +7508,15 @@ export interface ListCreativesRequest {
7283
7508
  * Include dynamic content variable definitions (DCO slots) for each creative
7284
7509
  */
7285
7510
  include_variables?: boolean;
7511
+ /**
7512
+ * Include pricing_options on each creative. Requires account to be provided. When false or omitted, pricing is not computed.
7513
+ */
7514
+ include_pricing?: boolean;
7515
+ account?: AccountReference;
7286
7516
  /**
7287
7517
  * Specific fields to include in response (omit for all fields). The 'concept' value returns both concept_id and concept_name.
7288
7518
  */
7289
- fields?: ('creative_id' | 'name' | 'format_id' | 'status' | 'created_date' | 'updated_date' | 'tags' | 'assignments' | 'snapshot' | 'items' | 'variables' | 'concept')[];
7519
+ fields?: ('creative_id' | 'name' | 'format_id' | 'status' | 'created_date' | 'updated_date' | 'tags' | 'assignments' | 'snapshot' | 'items' | 'variables' | 'concept' | 'pricing_options')[];
7290
7520
  context?: ContextObject;
7291
7521
  ext?: ExtensionObject;
7292
7522
  }
@@ -7530,6 +7760,10 @@ export interface ListCreativesResponse {
7530
7760
  * Items for multi-asset formats like carousels and native ads (included when include_items=true)
7531
7761
  */
7532
7762
  items?: CreativeItem[];
7763
+ /**
7764
+ * Pricing options for using this creative (serving, delivery). Used by ad servers and library agents. Transformation agents expose format-level pricing on list_creative_formats instead. Present when include_pricing=true and account provided. The buyer passes the applied pricing_option_id in report_usage.
7765
+ */
7766
+ pricing_options?: VendorPricingOption[];
7533
7767
  }[];
7534
7768
  /**
7535
7769
  * Breakdown of creatives by format. Keys are agent-defined format identifiers, optionally including dimensions (e.g., 'display_static_300x250', 'video_30s_vast'). Key construction is platform-specific — there is no required format.
@@ -7925,19 +8159,6 @@ export type ActivationKey = {
7925
8159
  */
7926
8160
  value: string;
7927
8161
  };
7928
- /**
7929
- * A pricing option offered by a signals agent. Combines pricing_option_id with the signal pricing model fields at the same level — pass pricing_option_id in report_usage for billing verification.
7930
- */
7931
- export type SignalPricingOption = {
7932
- /**
7933
- * Opaque identifier for this pricing option, unique within the signals agent. Pass this in report_usage to identify which pricing option was applied.
7934
- */
7935
- pricing_option_id: string;
7936
- } & SignalPricing;
7937
- /**
7938
- * Pricing model for a signal. Discriminated by model: 'cpm' (fixed CPM), 'percent_of_media' (percentage of spend with optional CPM cap), or 'flat_fee' (fixed charge per reporting period, e.g. monthly licensed segments).
7939
- */
7940
- export type SignalPricing = CpmPricing | PercentOfMediaPricing | FlatFeePricing;
7941
8162
  /**
7942
8163
  * Response payload for get_signals task
7943
8164
  */
@@ -7993,7 +8214,7 @@ export interface GetSignalsResponse {
7993
8214
  /**
7994
8215
  * Pricing options available for this signal. The buyer selects one and passes its pricing_option_id in report_usage for billing verification.
7995
8216
  */
7996
- pricing_options: SignalPricingOption[];
8217
+ pricing_options: VendorPricingOption[];
7997
8218
  }[];
7998
8219
  /**
7999
8220
  * Task-specific errors and warnings (e.g., signal discovery or pricing issues)
@@ -8007,59 +8228,6 @@ export interface GetSignalsResponse {
8007
8228
  context?: ContextObject;
8008
8229
  ext?: ExtensionObject;
8009
8230
  }
8010
- /**
8011
- * Fixed cost per thousand impressions
8012
- */
8013
- export interface CpmPricing {
8014
- model: 'cpm';
8015
- /**
8016
- * Cost per thousand impressions
8017
- */
8018
- cpm: number;
8019
- /**
8020
- * ISO 4217 currency code
8021
- */
8022
- currency: string;
8023
- ext?: ExtensionObject;
8024
- }
8025
- /**
8026
- * Percentage of media spend charged for this signal. When max_cpm is set, the effective rate is capped at that CPM — useful for platforms like The Trade Desk that use percent-of-media pricing with a CPM ceiling.
8027
- */
8028
- export interface PercentOfMediaPricing {
8029
- model: 'percent_of_media';
8030
- /**
8031
- * Percentage of media spend, e.g. 15 = 15%
8032
- */
8033
- percent: number;
8034
- /**
8035
- * Optional CPM cap. When set, the effective charge is min(percent × media_spend_per_mille, max_cpm).
8036
- */
8037
- max_cpm?: number;
8038
- /**
8039
- * ISO 4217 currency code for the resulting charge
8040
- */
8041
- currency: string;
8042
- ext?: ExtensionObject;
8043
- }
8044
- /**
8045
- * Fixed charge per billing period, regardless of impressions or spend. Used for licensed data bundles and audience subscriptions.
8046
- */
8047
- export interface FlatFeePricing {
8048
- model: 'flat_fee';
8049
- /**
8050
- * Fixed charge for the billing period
8051
- */
8052
- amount: number;
8053
- /**
8054
- * Billing period for the flat fee.
8055
- */
8056
- period: 'monthly' | 'quarterly' | 'annual' | 'campaign';
8057
- /**
8058
- * ISO 4217 currency code
8059
- */
8060
- currency: string;
8061
- ext?: ExtensionObject;
8062
- }
8063
8231
  /**
8064
8232
  * Request parameters for activating or deactivating a signal on deployment targets
8065
8233
  */
@@ -8313,6 +8481,10 @@ export interface PropertyList {
8313
8481
  * Number of properties in the resolved list (at time of last resolution)
8314
8482
  */
8315
8483
  property_count?: number;
8484
+ /**
8485
+ * Pricing options for this property list. Present when the requesting account has a billing relationship with the list provider. The buyer passes the selected pricing_option_id in report_usage.
8486
+ */
8487
+ pricing_options?: VendorPricingOption[];
8316
8488
  }
8317
8489
  /**
8318
8490
  * Request parameters for updating an existing property list
@@ -8586,7 +8758,7 @@ export interface ContentStandards {
8586
8758
  /**
8587
8759
  * Pricing options for this content standards service. The buyer passes the selected pricing_option_id in report_usage for billing verification.
8588
8760
  */
8589
- pricing_options?: PricingOption[];
8761
+ pricing_options?: VendorPricingOption[];
8590
8762
  ext?: ExtensionObject;
8591
8763
  }
8592
8764
  /**
@@ -9345,6 +9517,19 @@ export type GetCreativeFeaturesResponse = {
9345
9517
  * URL to the vendor's full assessment report. The vendor controls what information is disclosed and access control.
9346
9518
  */
9347
9519
  detail_url?: string;
9520
+ /**
9521
+ * Which rate card pricing option was applied for this evaluation. Present when the governance agent charges for evaluations and account was provided in the request.
9522
+ */
9523
+ pricing_option_id?: string;
9524
+ /**
9525
+ * Cost incurred for this evaluation, denominated in currency.
9526
+ */
9527
+ vendor_cost?: number;
9528
+ /**
9529
+ * ISO 4217 currency code for vendor_cost.
9530
+ */
9531
+ currency?: string;
9532
+ consumption?: CreativeConsumption;
9348
9533
  context?: ContextObject;
9349
9534
  ext?: ExtensionObject;
9350
9535
  } | {
@@ -11811,6 +11996,14 @@ export interface ReportUsageRequest {
11811
11996
  * Rights grant identifier from acquire_rights. Required for brand/rights agents. Links usage records to specific rights grants for cap tracking, billing verification, and overage calculation.
11812
11997
  */
11813
11998
  rights_id?: string;
11999
+ /**
12000
+ * Creative identifier from build_creative or list_creatives. Required for creative agents. Links usage records to specific creatives for billing verification.
12001
+ */
12002
+ creative_id?: string;
12003
+ /**
12004
+ * Property list identifier from list_property_lists. Required for property list agents. Links usage records to specific property lists for billing verification.
12005
+ */
12006
+ property_list_id?: string;
11814
12007
  }[];
11815
12008
  context?: ContextObject;
11816
12009
  ext?: ExtensionObject;