@adcp/client 4.3.0 → 4.4.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.
@@ -70,6 +70,10 @@ export type GetProductsRequest = {
70
70
  * Specific product fields to include in the response. When omitted, all fields are returned. Use for lightweight discovery calls where only a subset of product data is needed (e.g., just IDs and pricing for comparison). Required fields (product_id, name) are always included regardless of selection.
71
71
  */
72
72
  fields?: ('product_id' | 'name' | 'description' | 'publisher_properties' | 'channels' | 'format_ids' | 'placements' | 'delivery_type' | 'pricing_options' | 'forecast' | 'outcome_measurement' | 'delivery_measurement' | 'reporting_capabilities' | 'creative_policy' | 'catalog_types' | 'metric_optimization' | 'conversion_tracking' | 'data_provider_signals' | 'max_optimization_goals' | 'catalog_match' | 'brief_relevance' | 'expires_at' | 'product_card' | 'product_card_detailed')[];
73
+ /**
74
+ * Maximum time the buyer will commit to this request. The seller returns the best results achievable within this budget and does not start processes (human approvals, expensive external queries) that cannot complete in time. When omitted, the seller decides timing.
75
+ */
76
+ time_budget?: Duration;
73
77
  pagination?: PaginationRequest;
74
78
  context?: ContextObject;
75
79
  ext?: ExtensionObject;
@@ -486,6 +490,19 @@ export interface PropertyListReference {
486
490
  */
487
491
  auth_token?: string;
488
492
  }
493
+ /**
494
+ * A time duration expressed as an interval and unit. Used for frequency cap windows, attribution windows, reach optimization windows, time budgets, and other time-based settings. When unit is 'campaign', interval must be 1 — the window spans the full campaign flight.
495
+ */
496
+ export interface Duration {
497
+ /**
498
+ * Number of time units. Must be 1 when unit is 'campaign'.
499
+ */
500
+ interval: number;
501
+ /**
502
+ * Time unit. 'seconds' for sub-minute precision. 'campaign' spans the full campaign flight.
503
+ */
504
+ unit: 'seconds' | 'minutes' | 'hours' | 'days' | 'campaign';
505
+ }
489
506
  /**
490
507
  * Standard cursor-based pagination parameters for list operations
491
508
  */
@@ -679,6 +696,23 @@ export interface GetProductsResponse {
679
696
  */
680
697
  notes?: string;
681
698
  }[];
699
+ /**
700
+ * Declares what the seller could not finish within the buyer's time_budget or due to internal limits. Each entry identifies a scope that is missing or partial. Absent when the response is fully complete.
701
+ */
702
+ incomplete?: {
703
+ /**
704
+ * 'products': not all inventory sources were searched. 'pricing': products returned but pricing is absent or unconfirmed. 'forecast': products returned but forecast data is absent. 'proposals': proposals were not generated or are incomplete.
705
+ */
706
+ scope: 'products' | 'pricing' | 'forecast' | 'proposals';
707
+ /**
708
+ * Human-readable explanation of what is missing and why.
709
+ */
710
+ description: string;
711
+ /**
712
+ * How much additional time would resolve this scope. Allows the buyer to decide whether to retry with a larger time_budget.
713
+ */
714
+ estimated_wait?: Duration;
715
+ }[];
682
716
  pagination?: PaginationResponse;
683
717
  /**
684
718
  * When true, this response contains simulated data from sandbox mode.
@@ -1364,19 +1398,6 @@ export interface OutcomeMeasurement {
1364
1398
  */
1365
1399
  reporting: string;
1366
1400
  }
1367
- /**
1368
- * A time duration expressed as an interval and unit. Used for frequency cap windows, attribution windows, reach optimization windows, and other time-based settings. When unit is 'campaign', interval must be 1 — the window spans the full campaign flight.
1369
- */
1370
- export interface Duration {
1371
- /**
1372
- * Number of time units. Must be 1 when unit is 'campaign'.
1373
- */
1374
- interval: number;
1375
- /**
1376
- * Time unit. 'campaign' spans the full campaign flight.
1377
- */
1378
- unit: 'minutes' | 'hours' | 'days' | 'campaign';
1379
- }
1380
1401
  /**
1381
1402
  * Reporting capabilities available for a product
1382
1403
  */