@apostra/sdk 0.40.0 → 0.41.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.
@@ -264,7 +264,7 @@ export type DownloadV3PublicDocumentRevisionResponses = {
264
264
  200: Blob | File;
265
265
  };
266
266
  export type GenerateVariantsData = {
267
- body: (GenerateVariantsRequestGenerateVariantsCampaignGenerateInput | GenerateVariantsRequestGenerateVariantsAdvertiserGenerateInput | GenerateVariantsRequestGenerateVariantsCampaignFeedbackInput | GenerateVariantsRequestGenerateVariantsAdvertiserFeedbackInput) & {
267
+ body: (GenerateVariantsRequestGenerateVariantsCampaignGenerateInput | GenerateVariantsRequestGenerateVariantsAdvertiserGenerateInput | GenerateVariantsRequestGenerateVariantsCampaignFeedbackInput | GenerateVariantsRequestGenerateVariantsAdvertiserFeedbackInput | GenerateVariantsRequestGenerateVariantsCampaignCopyInput | GenerateVariantsRequestGenerateVariantsAdvertiserCopyInput) & {
268
268
  /**
269
269
  * Apostra accountId you are working in (from get_status). The write fails if the account has changed.
270
270
  */
@@ -343,6 +343,51 @@ export type GenerateVariantsErrors = {
343
343
  */
344
344
  503: V3ToolErrorResponse;
345
345
  };
346
+ export type GenerateVariantsRequestGenerateVariantsAdvertiserCopyInput = {
347
+ kind: 'advertiser_copy';
348
+ scope: GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputScope;
349
+ variantAction: GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputVariantAction;
350
+ advertiserId: GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputAdvertiserId;
351
+ sessionId: GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputSessionId;
352
+ actionKey: GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputActionKey;
353
+ expectedRevision: GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputExpectedRevision;
354
+ sessionGeneration: GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputSessionGeneration;
355
+ /**
356
+ * Composer copy slots to explicitly regenerate. Omit to fill only empty copy slots.
357
+ */
358
+ slotIds?: GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputSlotIds;
359
+ expectedAccountId?: number | string;
360
+ accountId?: number | string;
361
+ };
362
+ /**
363
+ * Action key; reuse only for an identical retry.
364
+ */
365
+ export type GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputActionKey = string;
366
+ /**
367
+ * Advertiser library scope.
368
+ */
369
+ export type GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputAdvertiserId = string;
370
+ /**
371
+ * Saved revision to generate from.
372
+ */
373
+ export type GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputExpectedRevision = number;
374
+ /**
375
+ * Advertiser-library session.
376
+ */
377
+ export type GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputScope = 'advertiser';
378
+ /**
379
+ * Current session lifecycle ID.
380
+ */
381
+ export type GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputSessionGeneration = string;
382
+ /**
383
+ * Saved session ID.
384
+ */
385
+ export type GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputSessionId = string;
386
+ export type GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputSlotIds = Array<string>;
387
+ /**
388
+ * Generate copy for every empty composer slot, or explicitly regenerate the named copy slots.
389
+ */
390
+ export type GenerateVariantsRequestGenerateVariantsAdvertiserCopyInputVariantAction = 'copy';
346
391
  export type GenerateVariantsRequestGenerateVariantsAdvertiserFeedbackInput = {
347
392
  kind: 'advertiser_feedback';
348
393
  scope: GenerateVariantsRequestGenerateVariantsAdvertiserFeedbackInputScope;
@@ -433,6 +478,51 @@ export type GenerateVariantsRequestGenerateVariantsAdvertiserGenerateInputSessio
433
478
  * Start a generation.
434
479
  */
435
480
  export type GenerateVariantsRequestGenerateVariantsAdvertiserGenerateInputVariantAction = 'generate';
481
+ export type GenerateVariantsRequestGenerateVariantsCampaignCopyInput = {
482
+ kind: 'campaign_copy';
483
+ scope: GenerateVariantsRequestGenerateVariantsCampaignCopyInputScope;
484
+ variantAction: GenerateVariantsRequestGenerateVariantsCampaignCopyInputVariantAction;
485
+ campaignId: GenerateVariantsRequestGenerateVariantsCampaignCopyInputCampaignId;
486
+ sessionId: GenerateVariantsRequestGenerateVariantsCampaignCopyInputSessionId;
487
+ actionKey: GenerateVariantsRequestGenerateVariantsCampaignCopyInputActionKey;
488
+ expectedRevision: GenerateVariantsRequestGenerateVariantsCampaignCopyInputExpectedRevision;
489
+ sessionGeneration: GenerateVariantsRequestGenerateVariantsCampaignCopyInputSessionGeneration;
490
+ /**
491
+ * Composer copy slots to explicitly regenerate. Omit to fill only empty copy slots.
492
+ */
493
+ slotIds?: GenerateVariantsRequestGenerateVariantsCampaignCopyInputSlotIds;
494
+ expectedAccountId?: number | string;
495
+ accountId?: number | string;
496
+ };
497
+ /**
498
+ * Action key; reuse only for an identical retry.
499
+ */
500
+ export type GenerateVariantsRequestGenerateVariantsCampaignCopyInputActionKey = string;
501
+ /**
502
+ * Campaign scope.
503
+ */
504
+ export type GenerateVariantsRequestGenerateVariantsCampaignCopyInputCampaignId = string;
505
+ /**
506
+ * Saved revision to generate from.
507
+ */
508
+ export type GenerateVariantsRequestGenerateVariantsCampaignCopyInputExpectedRevision = number;
509
+ /**
510
+ * Campaign session.
511
+ */
512
+ export type GenerateVariantsRequestGenerateVariantsCampaignCopyInputScope = 'campaign';
513
+ /**
514
+ * Current session lifecycle ID.
515
+ */
516
+ export type GenerateVariantsRequestGenerateVariantsCampaignCopyInputSessionGeneration = string;
517
+ /**
518
+ * Saved session ID.
519
+ */
520
+ export type GenerateVariantsRequestGenerateVariantsCampaignCopyInputSessionId = string;
521
+ export type GenerateVariantsRequestGenerateVariantsCampaignCopyInputSlotIds = Array<string>;
522
+ /**
523
+ * Generate copy for every empty composer slot, or explicitly regenerate the named copy slots.
524
+ */
525
+ export type GenerateVariantsRequestGenerateVariantsCampaignCopyInputVariantAction = 'copy';
436
526
  export type GenerateVariantsRequestGenerateVariantsCampaignFeedbackInput = {
437
527
  kind: 'campaign_feedback';
438
528
  scope: GenerateVariantsRequestGenerateVariantsCampaignFeedbackInputScope;
@@ -5115,6 +5205,10 @@ export type GetDeliveryResponses = {
5115
5205
  * Present only for campaign_delivery: campaign goal progress without V2-only pace or denominator fields.
5116
5206
  */
5117
5207
  goalProgress?: GetDeliverySuccessCampaignGoalProgress;
5208
+ /**
5209
+ * Present only for an account-wide campaign_delivery read over a bounded range: the in-flight campaigns that have no stored rows, each with the live read to call next.
5210
+ */
5211
+ coverage?: GetDeliverySuccessCampaignDeliveryCoverage;
5118
5212
  /**
5119
5213
  * Present only for the Apostra-owned synthetic Demo Storefront scenario. This data is unsuitable for commercial decisions.
5120
5214
  */
@@ -5135,6 +5229,10 @@ export type GetDeliveryResponses = {
5135
5229
  * Present only for campaign_delivery: campaign goal progress without V2-only pace or denominator fields.
5136
5230
  */
5137
5231
  goalProgress?: GetDeliverySuccessCampaignGoalProgress;
5232
+ /**
5233
+ * Present only for an account-wide campaign_delivery read over a bounded range: the in-flight campaigns that have no stored rows, each with the live read to call next.
5234
+ */
5235
+ coverage?: GetDeliverySuccessCampaignDeliveryCoverage;
5138
5236
  /**
5139
5237
  * Present only for the Apostra-owned synthetic Demo Storefront scenario. This data is unsuitable for commercial decisions.
5140
5238
  */
@@ -5155,6 +5253,10 @@ export type GetDeliveryResponses = {
5155
5253
  * Present only for campaign_delivery: campaign goal progress without V2-only pace or denominator fields.
5156
5254
  */
5157
5255
  goalProgress?: GetDeliverySuccessCampaignGoalProgress;
5256
+ /**
5257
+ * Present only for an account-wide campaign_delivery read over a bounded range: the in-flight campaigns that have no stored rows, each with the live read to call next.
5258
+ */
5259
+ coverage?: GetDeliverySuccessCampaignDeliveryCoverage;
5158
5260
  /**
5159
5261
  * Present only for the Apostra-owned synthetic Demo Storefront scenario. This data is unsuitable for commercial decisions.
5160
5262
  */
@@ -5224,7 +5326,7 @@ export type GetDeliveryResponses = {
5224
5326
  media_buy_count: number;
5225
5327
  metric_aggregates?: Array<{
5226
5328
  scope: 'standard';
5227
- metric_id: 'impressions' | 'spend' | 'clicks' | 'ctr' | 'views' | 'completed_views' | 'completion_rate' | 'conversions' | 'conversion_value' | 'commissionable_value' | 'roas' | 'cost_per_acquisition' | 'new_to_brand_rate' | 'leads' | 'reach' | 'frequency' | 'grps' | 'engagements' | 'engagement_rate' | 'follows' | 'saves' | 'profile_visits' | 'viewability' | 'viewable_rate' | 'viewable_impressions' | 'measurable_impressions' | 'viewed_seconds' | 'viewed_seconds_percentiles' | 'viewed_seconds_histogram' | 'quartile_data' | 'quartile_25' | 'quartile_50' | 'quartile_75' | 'quartile_100' | 'time_based_views' | 'dooh_metrics' | 'ooh_metrics' | 'cost_per_click' | 'cost_per_completed_view' | 'cpm' | 'downloads' | 'units_sold' | 'new_to_brand_units' | 'plays' | 'incremental_sales_lift' | 'brand_lift' | 'foot_traffic' | 'conversion_lift' | 'brand_search_lift';
5329
+ metric_id: 'impressions' | 'spend' | 'clicks' | 'ctr' | 'views' | 'completed_views' | 'completion_rate' | 'conversions' | 'conversion_value' | 'commissionable_value' | 'roas' | 'cost_per_acquisition' | 'new_to_brand_rate' | 'leads' | 'reach' | 'frequency' | 'grps' | 'engagements' | 'engagement_rate' | 'follows' | 'saves' | 'profile_visits' | 'viewability' | 'viewable_rate' | 'viewable_impressions' | 'measurable_impressions' | 'viewed_seconds' | 'viewed_seconds_percentiles' | 'viewed_seconds_histogram' | 'quartile_data' | 'quartile_25' | 'quartile_50' | 'quartile_75' | 'quartile_100' | 'time_based_views' | 'dooh_metrics' | 'ooh_metrics' | 'print_metrics' | 'publication' | 'cost_per_click' | 'cost_per_completed_view' | 'cpm' | 'downloads' | 'units_sold' | 'new_to_brand_units' | 'plays' | 'incremental_sales_lift' | 'brand_lift' | 'foot_traffic' | 'conversion_lift' | 'brand_search_lift';
5228
5330
  qualifier?: GetDeliverySuccessDeliverySummaryAggregatedTotalsMetricAggregatesItemQualifier;
5229
5331
  value: number;
5230
5332
  measurable_impressions?: number;
@@ -5404,11 +5506,45 @@ export type GetDeliveryResponses = {
5404
5506
  totals?: never;
5405
5507
  page?: never;
5406
5508
  goalProgress?: never;
5509
+ coverage?: never;
5407
5510
  synthetic?: never;
5408
5511
  };
5409
5512
  error: null;
5410
5513
  };
5411
5514
  };
5515
+ export type GetDeliverySuccessCampaignDeliveryCoverage = {
5516
+ /**
5517
+ * Campaigns in scope with a current media buy that was booked or running during the range.
5518
+ */
5519
+ inFlightCampaigns: number;
5520
+ withoutStoredRows: {
5521
+ /**
5522
+ * In-flight campaigns with no stored delivery row for the range. Absence is not zero delivery.
5523
+ */
5524
+ count: number;
5525
+ /**
5526
+ * True when `campaigns` lists fewer than `count`.
5527
+ */
5528
+ truncated: boolean;
5529
+ campaigns: Array<{
5530
+ campaignId: string;
5531
+ campaignName: string;
5532
+ nextAction: {
5533
+ tool: 'get_delivery';
5534
+ arguments: {
5535
+ report: 'live_campaign_delivery';
5536
+ range: {
5537
+ startDate: string;
5538
+ endDate: string;
5539
+ };
5540
+ filters: {
5541
+ campaignId: string;
5542
+ };
5543
+ };
5544
+ };
5545
+ }>;
5546
+ };
5547
+ };
5412
5548
  export type GetDeliverySuccessCampaignGoalProgress = {
5413
5549
  campaigns: Array<GetDeliverySuccessCampaignGoalProgressCampaign>;
5414
5550
  mediaBuys: Array<GetDeliverySuccessCampaignGoalProgressMediaBuy>;
@@ -6330,6 +6466,7 @@ export type GetResponses = {
6330
6466
  blocked: number;
6331
6467
  failed: number;
6332
6468
  done: number;
6469
+ closed: number;
6333
6470
  };
6334
6471
  }>;
6335
6472
  truncated?: true;
@@ -6352,7 +6489,7 @@ export type GetResponses = {
6352
6489
  operationDetails?: Array<{
6353
6490
  operationId: string;
6354
6491
  kind: string;
6355
- state: 'pending' | 'blocked' | 'failed' | 'done';
6492
+ state: 'pending' | 'blocked' | 'failed' | 'done' | 'closed';
6356
6493
  since: string;
6357
6494
  attempts: number;
6358
6495
  destination: {
@@ -6363,6 +6500,7 @@ export type GetResponses = {
6363
6500
  };
6364
6501
  nextAction?: 'retry' | 'correct' | 'contactSupport';
6365
6502
  blockedReason?: string;
6503
+ closedReason?: string;
6366
6504
  }>;
6367
6505
  operationDetailsTruncated?: true;
6368
6506
  messages?: Array<unknown>;
@@ -6913,6 +7051,10 @@ export type GetSellerReportingReceiptsSuccessReceiptsItemReceivedTotalsVideoComp
6913
7051
  export type GetSellerReportingReceiptsSuccessReceiptsItemReceivedTotalsViews = string | null;
6914
7052
  export type GetStatusData = {
6915
7053
  body: {
7054
+ /**
7055
+ * accounts.nextCursor
7056
+ */
7057
+ cursor?: string;
6916
7058
  /**
6917
7059
  * Apostra accountId this call runs in, from get_status.
6918
7060
  */
@@ -7095,9 +7237,26 @@ export type GetStatusResponses = {
7095
7237
  customerId: number;
7096
7238
  company: string;
7097
7239
  kind: 'buyer' | 'seller' | 'org' | 'developer';
7240
+ nameWith?: 'advertiserId';
7241
+ advertiserIds?: Array<number>;
7242
+ advertiserCount?: number;
7243
+ access?: 'read' | 'read_write';
7098
7244
  [key: string]: unknown;
7099
7245
  }>;
7100
7246
  reachableAccountsTruncated?: boolean;
7247
+ accounts?: {
7248
+ total: number;
7249
+ returned: number;
7250
+ truncated: boolean;
7251
+ nextCursor?: string;
7252
+ results: Array<{
7253
+ accountId: number;
7254
+ kind?: 'buyer' | 'seller' | 'org' | 'developer';
7255
+ name: string;
7256
+ needsYou?: boolean;
7257
+ [key: string]: unknown;
7258
+ }>;
7259
+ };
7101
7260
  agents?: {
7102
7261
  total: number;
7103
7262
  returned: number;
@@ -8197,94 +8356,16 @@ export type OpenAdvertisersPageResponses = {
8197
8356
  error: null;
8198
8357
  };
8199
8358
  };
8200
- export type OpenAgentCertificationPageData = {
8201
- body: {
8202
- /**
8203
- * The agent whose tests and certification to open, from search or get.
8204
- */
8205
- agentId: string;
8206
- /**
8207
- * Apostra accountId this call runs in, from get_status.
8208
- */
8209
- accountId?: number | string;
8210
- };
8211
- headers?: {
8212
- /**
8213
- * Select an accessible customer account for this request. An explicit value must be a positive integer and must equal the account resolved by authentication.
8214
- */
8215
- 'X-SCOPE3-CUSTOMER-ID'?: string;
8216
- };
8217
- path?: never;
8218
- query?: never;
8219
- url: '/tools/open_agent_certification_page';
8220
- };
8221
- export type OpenAgentCertificationPageError = OpenAgentCertificationPageErrors[keyof OpenAgentCertificationPageErrors];
8222
- export type OpenAgentCertificationPageErrors = {
8223
- /**
8224
- * Invalid operation input
8225
- */
8226
- 400: V3ToolErrorResponse;
8227
- /**
8228
- * Missing or invalid API credential
8229
- */
8230
- 401: V3ToolErrorResponse;
8231
- /**
8232
- * Account credit limit exceeded
8233
- */
8234
- 402: V3ToolErrorResponse;
8235
- /**
8236
- * The credential or account cannot perform this operation
8237
- */
8238
- 403: V3ToolErrorResponse;
8239
- /**
8240
- * Requested resource not found
8241
- */
8242
- 404: V3ToolErrorResponse;
8243
- /**
8244
- * Operation conflicts with current resource state
8245
- */
8246
- 409: V3ToolErrorResponse;
8247
- /**
8248
- * Request body exceeds the accepted size
8249
- */
8250
- 413: V3ToolErrorResponse;
8251
- /**
8252
- * Request body encoding or character set is unsupported
8253
- */
8254
- 415: V3ToolErrorResponse;
8255
- /**
8256
- * Operation cannot process the supplied input
8257
- */
8258
- 422: V3ToolErrorResponse;
8259
- /**
8260
- * Request rate limit exceeded
8261
- */
8262
- 429: V3ToolErrorResponse;
8263
- /**
8264
- * Unexpected operation failure
8265
- */
8266
- 500: V3ToolErrorResponse;
8267
- /**
8268
- * Recognised operation behaviour is not implemented
8269
- */
8270
- 501: V3ToolErrorResponse;
8271
- /**
8272
- * A required service is unavailable
8273
- */
8274
- 503: V3ToolErrorResponse;
8275
- };
8276
- export type OpenAgentCertificationPageResponse = OpenAgentCertificationPageResponses[keyof OpenAgentCertificationPageResponses];
8277
- export type OpenAgentCertificationPageResponses = {
8278
- /**
8279
- * Typed operation result
8280
- */
8281
- 200: {
8282
- data: {
8283
- agentId: string;
8284
- };
8285
- error: null;
8286
- };
8287
- };
8359
+ /** @deprecated use OpenAgentPageData */
8360
+ export type OpenAgentCertificationPageData = OpenAgentPageData;
8361
+ /** @deprecated use OpenAgentPageError */
8362
+ export type OpenAgentCertificationPageError = OpenAgentPageError;
8363
+ /** @deprecated use OpenAgentPageErrors */
8364
+ export type OpenAgentCertificationPageErrors = OpenAgentPageErrors;
8365
+ /** @deprecated use OpenAgentPageResponse */
8366
+ export type OpenAgentCertificationPageResponse = OpenAgentPageResponse;
8367
+ /** @deprecated use OpenAgentPageResponses */
8368
+ export type OpenAgentCertificationPageResponses = OpenAgentPageResponses;
8288
8369
  export type OpenAgentPageData = {
8289
8370
  body: {
8290
8371
  /**
@@ -9178,7 +9259,7 @@ export type OpenCampaignsPageSuccessPageHumanHandoffRequired = {
9178
9259
  instruction: 'Show the account and action. Open only at the user’s request; otherwise return the URL. Do not log or post this link publicly.';
9179
9260
  };
9180
9261
  page: {
9181
- resourceUri: 'ui://agentic-api/conversation-history/mcp-app.html' | 'ui://agentic-api/agent-v2/mcp-app.html' | 'ui://agentic-api/developer-home/mcp-app.html' | 'ui://agentic-api/agents/mcp-app.html' | 'ui://agentic-api/create-agent/mcp-app.html' | 'ui://agentic-api/claim-agent/mcp-app.html' | 'ui://agentic-api/configure-agent-connection/mcp-app.html' | 'ui://agentic-api/register-agent-observed-revision/mcp-app.html' | 'ui://agentic-api/buyer-account-admission/mcp-app.html' | 'ui://agentic-api/tars-org-supply-asks/mcp-app.html' | 'ui://agentic-api/tars-run-rate/mcp-app.html' | 'ui://agentic-api/tars-marketing-email-library/mcp-app.html' | 'ui://agentic-api/tars-approved-deck-modules/mcp-app.html' | 'ui://agentic-api/tars-marketing-email-operations/mcp-app.html' | 'ui://agentic-api/business-rules/mcp-app.html' | 'ui://agentic-api/demo-storefront/mcp-app.html' | 'ui://agentic-api/agent-source-credentials/mcp-app.html' | 'ui://agentic-api/property-roster/mcp-app.html' | 'ui://agentic-api/seller-account-feed/mcp-app.html' | 'ui://agentic-api/media-buy-retry/mcp-app.html' | 'ui://agentic-api/modular-inventory-source/mcp-app.html' | 'ui://agentic-api/modular-connect/mcp-app.html' | 'ui://agentic-api/source-discovery-preview/mcp-app.html' | 'ui://agentic-api/partner-connection/mcp-app.html' | 'ui://agentic-api/agent-certification/mcp-app.html' | 'ui://agentic-api/agent-sources/mcp-app.html' | 'ui://agentic-api/agent-overview/mcp-app.html' | 'ui://agentic-api/agent-webhooks/mcp-app.html' | 'ui://agentic-api/modular-avails-commit/mcp-app.html' | 'ui://agentic-api/plan-billing/mcp-app.html' | 'ui://agentic-api/connections/mcp-app.html' | 'ui://agentic-api/creative-engines/mcp-app.html' | 'ui://agentic-api/all-advertisers-home/mcp-app.html' | 'ui://agentic-api/add-advertiser/mcp-app.html' | 'ui://agentic-api/campaigns/mcp-app.html' | 'ui://agentic-api/creative-library-v3-assets-v1/mcp-app.html' | 'ui://agentic-api/creative-library-v3/mcp-app.html' | 'ui://agentic-api/upload-creative-asset/mcp-app.html' | 'ui://agentic-api/creative-composer-task/mcp-app.html' | 'ui://agentic-api/variant-gallery/mcp-app.html' | 'ui://agentic-api/seller-setup/mcp-app.html' | 'ui://agentic-api/approvals/mcp-app.html' | 'ui://agentic-api/notifications/mcp-app.html' | 'ui://agentic-api/buyer-notifications/mcp-app.html' | 'ui://agentic-api/buyer-webhooks/mcp-app.html' | 'ui://agentic-api/proposal-pass-v3/mcp-app.html' | 'ui://agentic-api/sessions/mcp-app.html' | 'ui://agentic-api/seller-dashboard/mcp-app.html' | 'ui://agentic-api/seller-dashboard-v3/mcp-app.html' | 'ui://agentic-api/product-marketing-v3/mcp-app.html' | 'ui://agentic-api/library/mcp-app.html' | 'ui://agentic-api/integrations/mcp-app.html' | 'ui://agentic-api/release-notes/mcp-app.html' | 'ui://agentic-api/playbook/mcp-app.html' | 'ui://agentic-api/media-kit/mcp-app.html' | 'ui://agentic-api/business-profile/mcp-app.html' | 'ui://agentic-api/buyer-discounts/mcp-app.html' | 'ui://agentic-api/sponsored-buyers/mcp-app.html' | 'ui://agentic-api/pending-operations/mcp-app.html' | 'ui://agentic-api/storefront-briefs/mcp-app.html' | 'ui://agentic-api/activity-log/mcp-app.html' | 'ui://agentic-api/merchandising-simulator/mcp-app.html' | 'ui://agentic-api/media-buys/mcp-app.html' | 'ui://agentic-api/media-buy-timeline/mcp-app.html' | 'ui://agentic-api/components/mcp-app.html' | 'ui://agentic-api/seller-accounts/mcp-app.html';
9262
+ resourceUri: 'ui://agentic-api/conversation-history/mcp-app.html' | 'ui://agentic-api/agent-v2/mcp-app.html' | 'ui://agentic-api/developer-home/mcp-app.html' | 'ui://agentic-api/agents/mcp-app.html' | 'ui://agentic-api/create-agent/mcp-app.html' | 'ui://agentic-api/claim-agent/mcp-app.html' | 'ui://agentic-api/configure-agent-connection/mcp-app.html' | 'ui://agentic-api/register-agent-observed-revision/mcp-app.html' | 'ui://agentic-api/buyer-account-admission/mcp-app.html' | 'ui://agentic-api/tars-org-supply-asks/mcp-app.html' | 'ui://agentic-api/tars-run-rate/mcp-app.html' | 'ui://agentic-api/tars-marketing-email-library/mcp-app.html' | 'ui://agentic-api/tars-approved-deck-modules/mcp-app.html' | 'ui://agentic-api/tars-marketing-email-operations/mcp-app.html' | 'ui://agentic-api/business-rules/mcp-app.html' | 'ui://agentic-api/demo-storefront/mcp-app.html' | 'ui://agentic-api/agent-source-credentials/mcp-app.html' | 'ui://agentic-api/property-roster/mcp-app.html' | 'ui://agentic-api/seller-account-feed/mcp-app.html' | 'ui://agentic-api/esa-signals/mcp-app.html' | 'ui://agentic-api/media-buy-retry/mcp-app.html' | 'ui://agentic-api/inventory-selector/mcp-app.html' | 'ui://agentic-api/modular-inventory-source/mcp-app.html' | 'ui://agentic-api/modular-connect/mcp-app.html' | 'ui://agentic-api/source-discovery-preview/mcp-app.html' | 'ui://agentic-api/partner-connection/mcp-app.html' | 'ui://agentic-api/agent-sources/mcp-app.html' | 'ui://agentic-api/agent-overview/mcp-app.html' | 'ui://agentic-api/agent-webhooks/mcp-app.html' | 'ui://agentic-api/modular-avails-commit/mcp-app.html' | 'ui://agentic-api/plan-billing/mcp-app.html' | 'ui://agentic-api/connections/mcp-app.html' | 'ui://agentic-api/creative-engines/mcp-app.html' | 'ui://agentic-api/all-advertisers-home/mcp-app.html' | 'ui://agentic-api/add-advertiser/mcp-app.html' | 'ui://agentic-api/campaigns/mcp-app.html' | 'ui://agentic-api/creative-library-v3-assets-v1/mcp-app.html' | 'ui://agentic-api/creative-library-v3/mcp-app.html' | 'ui://agentic-api/upload-creative-asset/mcp-app.html' | 'ui://agentic-api/creative-composer-task/mcp-app.html' | 'ui://agentic-api/variant-gallery/mcp-app.html' | 'ui://agentic-api/seller-setup/mcp-app.html' | 'ui://agentic-api/approvals/mcp-app.html' | 'ui://agentic-api/notifications/mcp-app.html' | 'ui://agentic-api/buyer-notifications/mcp-app.html' | 'ui://agentic-api/buyer-webhooks/mcp-app.html' | 'ui://agentic-api/proposal-pass-v3/mcp-app.html' | 'ui://agentic-api/sessions/mcp-app.html' | 'ui://agentic-api/seller-dashboard/mcp-app.html' | 'ui://agentic-api/seller-dashboard-v3/mcp-app.html' | 'ui://agentic-api/product-marketing-v3/mcp-app.html' | 'ui://agentic-api/library/mcp-app.html' | 'ui://agentic-api/integrations/mcp-app.html' | 'ui://agentic-api/release-notes/mcp-app.html' | 'ui://agentic-api/playbook/mcp-app.html' | 'ui://agentic-api/media-kit/mcp-app.html' | 'ui://agentic-api/business-profile/mcp-app.html' | 'ui://agentic-api/buyer-discounts/mcp-app.html' | 'ui://agentic-api/esa-sync-diagnostics/mcp-app.html' | 'ui://agentic-api/esa-inventory-source/mcp-app.html' | 'ui://agentic-api/source-diagnostics/mcp-app.html' | 'ui://agentic-api/sponsored-buyers/mcp-app.html' | 'ui://agentic-api/pending-operations/mcp-app.html' | 'ui://agentic-api/storefront-briefs/mcp-app.html' | 'ui://agentic-api/activity-log/mcp-app.html' | 'ui://agentic-api/merchandising-simulator/mcp-app.html' | 'ui://agentic-api/media-buys/mcp-app.html' | 'ui://agentic-api/media-buy-timeline/mcp-app.html' | 'ui://agentic-api/components/mcp-app.html' | 'ui://agentic-api/seller-accounts/mcp-app.html';
9182
9263
  advertiserId?: string;
9183
9264
  campaignId?: string;
9184
9265
  capability: 'reauthenticate_in_browser' | 'manage_webhooks';
@@ -9462,7 +9543,7 @@ export type OpenCreativeLibraryData = {
9462
9543
  */
9463
9544
  view?: 'all' | 'shelf';
9464
9545
  /**
9465
- * Browse Creatives, assets, or open the campaign composer.
9546
+ * Browse Creatives, assets, or open the composer.
9466
9547
  */
9467
9548
  lens?: 'creatives' | 'assets' | 'composer';
9468
9549
  /**
@@ -9577,6 +9658,7 @@ export type OpenCreativeLibraryResponses = {
9577
9658
  creativeId?: string;
9578
9659
  initialAction?: 'upload' | 'compose';
9579
9660
  sessionId?: string;
9661
+ creativeEnginesEligible?: boolean;
9580
9662
  };
9581
9663
  openInBrowserUrl?: string;
9582
9664
  } | {
@@ -9589,6 +9671,7 @@ export type OpenCreativeLibraryResponses = {
9589
9671
  assetId: string;
9590
9672
  assetState?: 'active' | 'draft';
9591
9673
  initialAction: 'focus_asset';
9674
+ creativeEnginesEligible?: boolean;
9592
9675
  };
9593
9676
  openInBrowserUrl?: string;
9594
9677
  };
@@ -9956,7 +10039,7 @@ export type OpenPageData = {
9956
10039
  /**
9957
10040
  * Page to open. Owners repair a missing Agent relationship in source_diagnostics.
9958
10041
  */
9959
- page: 'connect_ad_server' | 'ad_server_source' | 'ad_server_diagnostics' | 'source_diagnostics' | 'seller_setup' | 'demo_seller' | 'connect_sales_agent' | 'modular_inventory_source' | 'modular_source_setup' | 'modular_inventory_feed' | 'listing' | 'discovery_card' | 'media_kit' | 'business_profile' | 'playbook' | 'library' | 'integrations' | 'product_marketing' | 'business_rules' | 'buyer_account_mapping' | 'property_roster' | 'plan_and_billing' | 'buyer_setup' | 'sellers' | 'creative_engines' | 'advertisers' | 'campaigns' | 'campaign_receipt' | 'approvals' | 'release_notes' | 'customer_requests' | 'notifications' | 'webhooks' | 'buyer_proposal_version';
10042
+ page: 'connect_ad_server' | 'ad_server_source' | 'ad_server_diagnostics' | 'source_diagnostics' | 'seller_setup' | 'demo_seller' | 'connect_sales_agent' | 'modular_inventory_source' | 'modular_source_setup' | 'modular_inventory_feed' | 'listing' | 'discovery_card' | 'media_kit' | 'business_profile' | 'playbook' | 'library' | 'integrations' | 'product_marketing' | 'business_rules' | 'buyer_account_mapping' | 'property_roster' | 'plan_and_billing' | 'buyer_setup' | 'sellers' | 'creative_engines' | 'advertisers' | 'campaigns' | 'campaign_receipt' | 'approvals' | 'release_notes' | 'customer_requests' | 'notifications' | 'webhooks' | 'buyer_proposal_version' | 'sessions';
9960
10043
  /**
9961
10044
  * Focus diagnostics, modular source, or modular feed pages on an inventory source returned by search.
9962
10045
  */
@@ -10426,6 +10509,10 @@ export type RefreshInventorySourceHealthData = {
10426
10509
  * Exact external sales-agent source. Managed and modular sources have dedicated diagnostics.
10427
10510
  */
10428
10511
  sourceId: string;
10512
+ /**
10513
+ * health (default) rechecks the source. accounts asks the source to list its accounts again, for sources that take account mappings.
10514
+ */
10515
+ scope?: 'health' | 'accounts';
10429
10516
  /**
10430
10517
  * Apostra accountId you are working in (from get_status). The write fails if the account has changed.
10431
10518
  */
@@ -10510,34 +10597,7 @@ export type RefreshInventorySourceHealthResponses = {
10510
10597
  * Typed operation result
10511
10598
  */
10512
10599
  200: {
10513
- data: {
10514
- sourceId: string;
10515
- outcome: 'passed' | 'empty' | 'failed' | 'not_reached';
10516
- checkedAt: string;
10517
- operation: 'get_products';
10518
- checks: Array<{
10519
- check: 'get_products' | 'catalog_warm';
10520
- outcome: 'passed' | 'empty' | 'failed' | 'not_reached' | 'not_applicable';
10521
- message: string;
10522
- }>;
10523
- openFindings: Array<{
10524
- check: string;
10525
- status: 'degraded' | 'unhealthy';
10526
- cause: string | null;
10527
- observedAt: string;
10528
- }>;
10529
- evidence: {
10530
- runId: string | null;
10531
- taskId: string | null;
10532
- operationId: string | null;
10533
- debugId: string | null;
10534
- correlationId: string | null;
10535
- };
10536
- readiness: {
10537
- status: string;
10538
- canTransact: boolean;
10539
- };
10540
- };
10600
+ data: RefreshInventorySourceHealthSuccessRefreshInventorySourceHealthChecked | RefreshInventorySourceHealthSuccessRefreshInventorySourceHealthAccountsListed;
10541
10601
  error: null;
10542
10602
  };
10543
10603
  /**
@@ -10557,6 +10617,47 @@ export type RefreshInventorySourceHealthResponses = {
10557
10617
  error: null;
10558
10618
  };
10559
10619
  };
10620
+ export type RefreshInventorySourceHealthSuccessRefreshInventorySourceHealthAccountsListed = {
10621
+ sourceId: string;
10622
+ scope: 'accounts';
10623
+ accounts: {
10624
+ reconciliationState: 'complete' | 'incomplete';
10625
+ listed: number;
10626
+ observed: number;
10627
+ archived: number;
10628
+ authoritative: boolean;
10629
+ truncated: boolean;
10630
+ diagnosticCode: string | null;
10631
+ };
10632
+ };
10633
+ export type RefreshInventorySourceHealthSuccessRefreshInventorySourceHealthChecked = {
10634
+ sourceId: string;
10635
+ outcome: 'passed' | 'empty' | 'failed' | 'not_reached';
10636
+ checkedAt: string;
10637
+ operation: 'get_products';
10638
+ checks: Array<{
10639
+ check: 'get_products' | 'catalog_warm';
10640
+ outcome: 'passed' | 'empty' | 'failed' | 'not_reached' | 'not_applicable';
10641
+ message: string;
10642
+ }>;
10643
+ openFindings: Array<{
10644
+ check: string;
10645
+ status: 'degraded' | 'unhealthy';
10646
+ cause: string | null;
10647
+ observedAt: string;
10648
+ }>;
10649
+ evidence: {
10650
+ runId: string | null;
10651
+ taskId: string | null;
10652
+ operationId: string | null;
10653
+ debugId: string | null;
10654
+ correlationId: string | null;
10655
+ };
10656
+ readiness: {
10657
+ status: string;
10658
+ canTransact: boolean;
10659
+ };
10660
+ };
10560
10661
  export type RepresentationLocale = string;
10561
10662
  export type RequestBuyerChildAccountData = {
10562
10663
  body: {
@@ -11237,7 +11338,7 @@ export type RequestProposalsResponses = {
11237
11338
  */
11238
11339
  sellerAccountId?: RequestProposalsSuccessSkippedSellersSellersItemSellerAccountId;
11239
11340
  sellerName?: string;
11240
- reason: 'channel_mismatch' | 'not_transactable';
11341
+ reason: 'channel_mismatch' | 'not_transactable' | 'wholesale_only';
11241
11342
  sellerChannels: Array<string>;
11242
11343
  skipCode?: 'account_requests_blocked' | 'go_live_blocked' | 'advertiser_not_accessible' | 'seller_unavailable_to_buyers';
11243
11344
  }>;
@@ -11609,7 +11710,7 @@ export type SaveAccountData = {
11609
11710
  */
11610
11711
  id?: number;
11611
11712
  /**
11612
- * With id: the Apostra accountId this call runs in, from get_status. Without id: deprecated, read as id.
11713
+ * Apostra accountId this call runs in, from get_status. Without id or accountType: deprecated, read as id.
11613
11714
  */
11614
11715
  accountId?: number;
11615
11716
  /**
@@ -12052,6 +12153,227 @@ export type SaveAdvertiserData = {
12052
12153
  labels?: {
12053
12154
  [key: string]: Array<string>;
12054
12155
  };
12156
+ /**
12157
+ * Advertiser-stated brand kit, voice rules, banned terms, disclaimers and pages. Save brandProfile in its own save_advertiser call with advertiserId. Available only in the V3 beta with Creative Engines access. `stated: null` clears stated values; `stated.statedAbsence` records that the advertiser confirmed it has no kit, voice or disclaimers.
12158
+ */
12159
+ brandProfile?: {
12160
+ /**
12161
+ * Stated profile; null clears it.
12162
+ */
12163
+ stated?: {
12164
+ /**
12165
+ * AdCP-validated brand-kit details.
12166
+ */
12167
+ brandKit?: {
12168
+ logo?: {
12169
+ asset_type: 'image';
12170
+ url: string;
12171
+ width: number;
12172
+ height: number;
12173
+ file_size_bytes?: number;
12174
+ pixel_ratio?: number;
12175
+ state_id?: string;
12176
+ breakpoint_id?: string;
12177
+ focal_point?: [
12178
+ number,
12179
+ number,
12180
+ never
12181
+ ];
12182
+ format?: string;
12183
+ alt_text?: string;
12184
+ provenance?: {
12185
+ digital_source_type?: 'digital_capture' | 'digital_creation' | 'trained_algorithmic_media' | 'composite_with_trained_algorithmic_media' | 'algorithmic_media' | 'composite_capture' | 'composite_synthetic' | 'human_edits' | 'data_driven_media';
12186
+ synthetic_depiction?: boolean;
12187
+ ai_tool?: {
12188
+ name: string;
12189
+ version?: string;
12190
+ provider?: string;
12191
+ [key: string]: unknown;
12192
+ };
12193
+ human_oversight?: 'none' | 'prompt_only' | 'selected' | 'edited' | 'directed';
12194
+ declared_by?: {
12195
+ agent_url?: string;
12196
+ role: 'creator' | 'advertiser' | 'agency' | 'platform' | 'tool';
12197
+ [key: string]: unknown;
12198
+ };
12199
+ declared_at?: string;
12200
+ created_time?: string;
12201
+ c2pa?: {
12202
+ manifest_url: string;
12203
+ [key: string]: unknown;
12204
+ };
12205
+ embedded_provenance?: Array<{
12206
+ method: 'manifest_wrapper' | 'provenance_markers';
12207
+ standard?: string;
12208
+ provider: string;
12209
+ verify_agent?: {
12210
+ agent_url: string;
12211
+ feature_id?: string;
12212
+ [key: string]: unknown;
12213
+ };
12214
+ embedded_at?: string;
12215
+ [key: string]: unknown;
12216
+ }>;
12217
+ watermarks?: Array<{
12218
+ media_type: 'audio' | 'image' | 'video' | 'text';
12219
+ provider: string;
12220
+ verify_agent?: {
12221
+ agent_url: string;
12222
+ feature_id?: string;
12223
+ [key: string]: unknown;
12224
+ };
12225
+ c2pa_action?: 'c2pa.watermarked.bound' | 'c2pa.watermarked.unbound';
12226
+ embedded_at?: string;
12227
+ [key: string]: unknown;
12228
+ }>;
12229
+ disclosure?: {
12230
+ required: boolean;
12231
+ jurisdictions?: Array<{
12232
+ country: string;
12233
+ region?: string;
12234
+ regulation: string;
12235
+ label_text?: string;
12236
+ render_guidance?: {
12237
+ persistence?: 'continuous' | 'initial' | 'flexible';
12238
+ min_duration_ms?: number;
12239
+ positions?: Array<'prominent' | 'footer' | 'audio' | 'subtitle' | 'overlay' | 'end_card' | 'pre_roll' | 'companion'>;
12240
+ ext?: SaveAdvertiserRequestBrandProfileStatedBrandKitLogoProvenanceDisclosureJurisdictionsItemRenderGuidanceExt;
12241
+ [key: string]: unknown;
12242
+ };
12243
+ [key: string]: unknown;
12244
+ }>;
12245
+ [key: string]: unknown;
12246
+ };
12247
+ verification?: Array<{
12248
+ verified_by: string;
12249
+ verified_time?: string;
12250
+ result: 'authentic' | 'ai_generated' | 'ai_modified' | 'inconclusive';
12251
+ confidence?: number;
12252
+ details_url?: string;
12253
+ [key: string]: unknown;
12254
+ }>;
12255
+ ext?: SaveAdvertiserRequestBrandProfileStatedBrandKitLogoProvenanceExt;
12256
+ [key: string]: unknown;
12257
+ };
12258
+ [key: string]: unknown;
12259
+ };
12260
+ colors?: {
12261
+ primary?: string;
12262
+ secondary?: string;
12263
+ accent?: string;
12264
+ [key: string]: unknown;
12265
+ };
12266
+ voice?: string;
12267
+ tagline?: string;
12268
+ [key: string]: unknown;
12269
+ };
12270
+ /**
12271
+ * Voice guidance.
12272
+ */
12273
+ voice?: {
12274
+ /**
12275
+ * Voice attributes.
12276
+ */
12277
+ attributes?: Array<SaveAdvertiserRequestBrandProfileStatedVoiceAttributesItem>;
12278
+ /**
12279
+ * Voice rules to follow.
12280
+ */
12281
+ dos?: Array<SaveAdvertiserRequestBrandProfileStatedVoiceDosItem>;
12282
+ /**
12283
+ * Voice rules to avoid.
12284
+ */
12285
+ donts?: Array<SaveAdvertiserRequestBrandProfileStatedVoiceDontsItem>;
12286
+ };
12287
+ /**
12288
+ * Banned copy terms.
12289
+ */
12290
+ bannedTerms?: Array<string>;
12291
+ /**
12292
+ * Copy disclaimers.
12293
+ */
12294
+ disclaimers?: Array<{
12295
+ /**
12296
+ * Disclaimer text.
12297
+ */
12298
+ text: string;
12299
+ /**
12300
+ * Disclaimer context.
12301
+ */
12302
+ context?: string;
12303
+ /**
12304
+ * Required disclaimer.
12305
+ */
12306
+ required?: boolean;
12307
+ }>;
12308
+ /**
12309
+ * Official pages.
12310
+ */
12311
+ pages?: Array<{
12312
+ /**
12313
+ * Page platform.
12314
+ */
12315
+ platform: string;
12316
+ /**
12317
+ * Page URL.
12318
+ */
12319
+ url?: string;
12320
+ /**
12321
+ * Page handle.
12322
+ */
12323
+ handle?: string;
12324
+ /**
12325
+ * Page name.
12326
+ */
12327
+ name?: string;
12328
+ }>;
12329
+ /**
12330
+ * Confirmed absences.
12331
+ */
12332
+ statedAbsence?: {
12333
+ /**
12334
+ * No brand kit.
12335
+ */
12336
+ kit?: boolean;
12337
+ /**
12338
+ * No voice rules.
12339
+ */
12340
+ voice?: boolean;
12341
+ /**
12342
+ * No disclaimers.
12343
+ */
12344
+ disclaimers?: boolean;
12345
+ };
12346
+ } | null;
12347
+ /**
12348
+ * Pending differences.
12349
+ */
12350
+ pendingDifferences?: Array<{
12351
+ /**
12352
+ * Different profile field.
12353
+ */
12354
+ field: string;
12355
+ /**
12356
+ * Advertiser value.
12357
+ */
12358
+ stated: SaveAdvertiserRequestAdvertiserBrandProfilePendingDifferenceValue;
12359
+ /**
12360
+ * Published value.
12361
+ */
12362
+ published: SaveAdvertiserRequestAdvertiserBrandProfilePendingDifferenceValue;
12363
+ /**
12364
+ * Whether either value was shortened to fit the saved size limit.
12365
+ */
12366
+ truncated?: boolean;
12367
+ /**
12368
+ * Combined byte size of the values before they were shortened.
12369
+ */
12370
+ originalBytes?: number;
12371
+ }>;
12372
+ /**
12373
+ * Expected revision.
12374
+ */
12375
+ expectedRevision?: number;
12376
+ };
12055
12377
  /**
12056
12378
  * Domain to resolve to a brand card preview. Set this alone — no other fields.
12057
12379
  */
@@ -12578,7 +12900,28 @@ export type SaveAdvertiserInstructionsSuccessSaveAdvertiserInstructionsSuccessUp
12578
12900
  pair?: string;
12579
12901
  [key: string]: unknown;
12580
12902
  };
12903
+ export type SaveAdvertiserRequestAdvertiserBrandProfilePendingDifferenceObjectEntry = {
12904
+ /**
12905
+ * Field name in a flat pending-difference value.
12906
+ */
12907
+ key: string;
12908
+ /**
12909
+ * Scalar value for that field.
12910
+ */
12911
+ value: SaveAdvertiserRequestAdvertiserBrandProfilePendingDifferenceScalar;
12912
+ };
12913
+ export type SaveAdvertiserRequestAdvertiserBrandProfilePendingDifferenceScalar = string | number | boolean | null;
12914
+ export type SaveAdvertiserRequestAdvertiserBrandProfilePendingDifferenceValue = SaveAdvertiserRequestAdvertiserBrandProfilePendingDifferenceScalar | Array<SaveAdvertiserRequestAdvertiserBrandProfilePendingDifferenceScalar> | Array<SaveAdvertiserRequestAdvertiserBrandProfilePendingDifferenceObjectEntry>;
12581
12915
  export type SaveAdvertiserRequestBrandCountries = Array<string>;
12916
+ export type SaveAdvertiserRequestBrandProfileStatedBrandKitLogoProvenanceDisclosureJurisdictionsItemRenderGuidanceExt = {
12917
+ [key: string]: unknown;
12918
+ };
12919
+ export type SaveAdvertiserRequestBrandProfileStatedBrandKitLogoProvenanceExt = {
12920
+ [key: string]: unknown;
12921
+ };
12922
+ export type SaveAdvertiserRequestBrandProfileStatedVoiceAttributesItem = string;
12923
+ export type SaveAdvertiserRequestBrandProfileStatedVoiceDontsItem = string;
12924
+ export type SaveAdvertiserRequestBrandProfileStatedVoiceDosItem = string;
12582
12925
  /**
12583
12926
  * AdCP media channels this advertiser expects to use; an empty list means All channels. Channel overlap affects automatic seller qualification. These editable planning preferences do not create advertiser-owned selection edges or prove that supply is available.
12584
12927
  */
@@ -13124,11 +13467,11 @@ export type SaveAskData = {
13124
13467
  */
13125
13468
  severity?: 'low' | 'medium' | 'high' | 'urgent';
13126
13469
  /**
13127
- * Supply domain or integration vendor.
13470
+ * Supply domain or integration vendor. Not for support, product or commercial.
13128
13471
  */
13129
13472
  subject?: string;
13130
13473
  /**
13131
- * Supply channel or integration channel name.
13474
+ * Supply only: the inventory channel.
13132
13475
  */
13133
13476
  channel?: string;
13134
13477
  expectedAccountId?: number | string;
@@ -14362,6 +14705,7 @@ export type SaveBuyerAgentSuccessBuyerAgentNotificationDestination = {
14362
14705
  [key: string]: unknown;
14363
14706
  };
14364
14707
  recovery?: 'transient' | 'correctable' | 'terminal';
14708
+ mutation_outcome?: string;
14365
14709
  source?: 'producer' | 'sdk';
14366
14710
  sdk_id?: string;
14367
14711
  [key: string]: unknown;
@@ -14377,7 +14721,7 @@ export type SaveBuyerAgentSuccessBuyerAgentNotificationDestinationConfigurationP
14377
14721
  export type SaveBuyerAgentSuccessBuyerAgentNotificationSubscription = {
14378
14722
  subscriber_id: string;
14379
14723
  url: string;
14380
- event_types: Array<'scheduled' | 'final' | 'delayed' | 'adjusted' | 'window_update' | 'impairment' | 'creative.status_changed' | 'creative.assignment_changed' | 'indicators.changed' | 'creative.purged' | 'account.status_changed' | 'account.change_recorded' | 'product.created' | 'product.updated' | 'product.priced' | 'product.removed' | 'signal.created' | 'signal.updated' | 'signal.priced' | 'signal.removed' | 'wholesale_feed.bulk_change' | 'capabilities.changed' | 'reporting.delivery_ready' | 'reporting.status_changed' | 'reporting.ledger_changed' | 'principal.changed'>;
14724
+ event_types: Array<'scheduled' | 'final' | 'delayed' | 'adjusted' | 'window_update' | 'impairment' | 'creative.status_changed' | 'creative.assignment_changed' | 'indicators.changed' | 'creative.purged' | 'account.status_changed' | 'account.change_recorded' | 'product.created' | 'product.updated' | 'product.priced' | 'product.removed' | 'signal.created' | 'signal.updated' | 'signal.priced' | 'signal.removed' | 'wholesale_feed.bulk_change' | 'collection_card.updated' | 'collection_card.removed' | 'collection_catalog.bulk_change' | 'capabilities.changed' | 'reporting.delivery_ready' | 'reporting.status_changed' | 'reporting.ledger_changed' | 'principal.changed' | 'proposal.created' | 'account_request.changed'>;
14381
14725
  all_authorized_accounts?: boolean;
14382
14726
  include_future_event_types?: boolean;
14383
14727
  active?: boolean;
@@ -14892,6 +15236,10 @@ export type SaveCampaignData = {
14892
15236
  */
14893
15237
  value: string | null;
14894
15238
  }>;
15239
+ /**
15240
+ * Whether Apostra adds its own UTM tags (utm_source, utm_medium, utm_campaign, utm_content) to this campaign's click URLs. Default true. false turns all four off and leaves the parameters you set alone.
15241
+ */
15242
+ autoUtm?: boolean;
14895
15243
  };
14896
15244
  /**
14897
15245
  * AdCP campaign targeting overlay.
@@ -14996,31 +15344,6 @@ export type SaveCampaignData = {
14996
15344
  device_platform_exclude?: SaveCampaignRequestTargetingOverlayDevicePlatformExclude;
14997
15345
  browser?: SaveCampaignRequestTargetingOverlayBrowser;
14998
15346
  browser_exclude?: SaveCampaignRequestTargetingOverlayBrowserExclude;
14999
- /**
15000
- * Delivery windows.
15001
- */
15002
- daypart_targets?: Array<{
15003
- /**
15004
- * Weekdays in this window.
15005
- */
15006
- days: Array<'monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday' | 'sunday'>;
15007
- /**
15008
- * Start hour.
15009
- */
15010
- start_hour: number;
15011
- /**
15012
- * End hour.
15013
- */
15014
- end_hour: number;
15015
- /**
15016
- * IANA timezone.
15017
- */
15018
- timezone?: 'inventory_local' | unknown;
15019
- /**
15020
- * Optional display label.
15021
- */
15022
- label?: string;
15023
- }>;
15024
15347
  /**
15025
15348
  * Demographic criteria.
15026
15349
  */
@@ -15099,6 +15422,39 @@ export type SaveCampaignData = {
15099
15422
  accepted_verification_methods?: SaveCampaignRequestTargetingOverlayDemographicsAgeAcceptedVerificationMethods;
15100
15423
  };
15101
15424
  };
15425
+ /**
15426
+ * Delivery windows.
15427
+ */
15428
+ daypart_targets?: Array<{
15429
+ /**
15430
+ * Weekdays in this window.
15431
+ */
15432
+ days: Array<'monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday' | 'sunday'>;
15433
+ /**
15434
+ * Start hour.
15435
+ */
15436
+ start_hour?: number;
15437
+ /**
15438
+ * End hour.
15439
+ */
15440
+ end_hour?: number;
15441
+ /**
15442
+ * Targeting value.
15443
+ */
15444
+ start_time?: string;
15445
+ /**
15446
+ * Targeting value.
15447
+ */
15448
+ end_time?: string;
15449
+ /**
15450
+ * IANA timezone.
15451
+ */
15452
+ timezone?: 'inventory_local' | unknown;
15453
+ /**
15454
+ * Optional display label.
15455
+ */
15456
+ label?: string;
15457
+ } & unknown>;
15102
15458
  /**
15103
15459
  * Minimum audience age.
15104
15460
  */
@@ -16875,6 +17231,20 @@ export type SaveConnectionData = {
16875
17231
  */
16876
17232
  enabled: boolean;
16877
17233
  };
17234
+ /**
17235
+ * Set/clear TikTok identity; needs connectionId.
17236
+ */
17237
+ identitySelection?: {
17238
+ accountId: SaveConnectionRequestIdentitySelectionAccountId;
17239
+ /**
17240
+ * TikTok identity to use, from list_storefront_connection_account_identities; null clears the selection.
17241
+ */
17242
+ identityId: string | null;
17243
+ /**
17244
+ * Restrict the identity to ad use only; defaults to true.
17245
+ */
17246
+ onlyShowAsAds?: boolean;
17247
+ };
16878
17248
  /**
16879
17249
  * Refresh provider accounts; requires connectionId.
16880
17250
  */
@@ -17004,6 +17374,7 @@ export type SaveConnectionRequestBuyerAdvertiserStorefrontActivationPreferenceDe
17004
17374
  export type SaveConnectionRequestBuyerStorefrontSelectionDecision = 'DEFAULT' | 'ALWAYS_INCLUDE' | 'ALWAYS_EXCLUDE';
17005
17375
  export type SaveConnectionRequestConnectionId = string;
17006
17376
  export type SaveConnectionRequestEnhancedReportingAccountId = string;
17377
+ export type SaveConnectionRequestIdentitySelectionAccountId = string;
17007
17378
  export type SaveConnectionRequestSelectedAccountId = string;
17008
17379
  export type SaveConnectionRequestSellerId = string;
17009
17380
  export type SaveConnectionResponse = SaveConnectionResponses[keyof SaveConnectionResponses];
@@ -17051,6 +17422,11 @@ export type SaveConnectionResponses = {
17051
17422
  object: SaveConnectionSuccessObject;
17052
17423
  mutationReceipt?: SaveConnectionSuccessMutationReceipt;
17053
17424
  authorization?: never;
17425
+ } | {
17426
+ action: 'identity_selection_updated';
17427
+ object: SaveConnectionSuccessObject;
17428
+ mutationReceipt?: SaveConnectionSuccessMutationReceipt;
17429
+ authorization?: never;
17054
17430
  } | {
17055
17431
  action: 'accounts_refreshed';
17056
17432
  object: SaveConnectionSuccessObject;
@@ -17189,6 +17565,10 @@ export type SaveCoverageData = {
17189
17565
  */
17190
17566
  property_key: string;
17191
17567
  }>;
17568
+ /**
17569
+ * Declared domains to re-check now: re-reads each publisher's adagents.json and format catalog, and returns the refreshed states.
17570
+ */
17571
+ refresh?: SaveCoverageRequestRefresh;
17192
17572
  /**
17193
17573
  * Apostra accountId you are working in (from get_status). The write fails if the account has changed.
17194
17574
  */
@@ -17268,6 +17648,7 @@ export type SaveCoverageErrors = {
17268
17648
  503: V3ToolErrorResponse;
17269
17649
  };
17270
17650
  export type SaveCoverageRequestAdd = Array<string>;
17651
+ export type SaveCoverageRequestRefresh = Array<string>;
17271
17652
  export type SaveCoverageRequestRemove = Array<string>;
17272
17653
  export type SaveCoverageResponse = SaveCoverageResponses[keyof SaveCoverageResponses];
17273
17654
  export type SaveCoverageResponses = {
@@ -17300,6 +17681,7 @@ export type SaveCoverageSuccessSaveCoverageSuccessDeclared = {
17300
17681
  changed: boolean;
17301
17682
  declared: SaveCoverageSuccessSaveCoverageSuccessDeclaredDeclared;
17302
17683
  removed: SaveCoverageSuccessSaveCoverageSuccessDeclaredRemoved;
17684
+ refreshed: SaveCoverageSuccessSaveCoverageSuccessDeclaredRefreshed;
17303
17685
  failures: SaveCoverageSuccessSaveCoverageSuccessDeclaredFailures;
17304
17686
  [key: string]: unknown;
17305
17687
  };
@@ -17315,6 +17697,12 @@ export type SaveCoverageSuccessSaveCoverageSuccessDeclaredFailures = {
17315
17697
  truncated: boolean;
17316
17698
  [key: string]: unknown;
17317
17699
  };
17700
+ export type SaveCoverageSuccessSaveCoverageSuccessDeclaredRefreshed = {
17701
+ items: Array<unknown>;
17702
+ count: number;
17703
+ truncated: boolean;
17704
+ [key: string]: unknown;
17705
+ };
17318
17706
  export type SaveCoverageSuccessSaveCoverageSuccessDeclaredRemoved = {
17319
17707
  items: Array<unknown>;
17320
17708
  count: number;
@@ -17979,6 +18367,20 @@ export type SaveCreativeData = {
17979
18367
  url?: SaveCreativeRequestSocialComponentsItemUrl;
17980
18368
  }>;
17981
18369
  };
18370
+ /**
18371
+ * AdCP industry IDs broadcast sellers require. Replaces the list.
18372
+ */
18373
+ industry_identifiers?: Array<{
18374
+ /**
18375
+ * Identifier scheme.
18376
+ */
18377
+ type: 'ad_id' | 'isci' | 'clearcast_clock' | 'idcrea';
18378
+ /**
18379
+ * The code.
18380
+ */
18381
+ value: string;
18382
+ [key: string]: unknown;
18383
+ }>;
17982
18384
  /**
17983
18385
  * Dimension values; [] clears.
17984
18386
  */
@@ -18153,6 +18555,10 @@ export type SaveCreativeResponses = {
18153
18555
  clickUrlAttached?: SaveCreativeSuccessClickUrlAttached;
18154
18556
  providerContacted?: SaveCreativeSuccessProviderContacted;
18155
18557
  readinessWarnings?: SaveCreativeSuccessReadinessWarnings;
18558
+ /**
18559
+ * Per tracker: compiled URL, macros the seller fills, macros left literal. Present when the creative has trackers.
18560
+ */
18561
+ macroPreview?: SaveCreativeSuccessCreativeMacroPreview;
18156
18562
  warnings?: SaveCreativeSuccessWarnings;
18157
18563
  action: 'created';
18158
18564
  } | {
@@ -18164,6 +18570,10 @@ export type SaveCreativeResponses = {
18164
18570
  clickUrlAttached?: SaveCreativeSuccessClickUrlAttached;
18165
18571
  providerContacted?: SaveCreativeSuccessProviderContacted;
18166
18572
  readinessWarnings?: SaveCreativeSuccessReadinessWarnings;
18573
+ /**
18574
+ * Per tracker: compiled URL, macros the seller fills, macros left literal. Present when the creative has trackers.
18575
+ */
18576
+ macroPreview?: SaveCreativeSuccessCreativeMacroPreview;
18167
18577
  warnings?: SaveCreativeSuccessWarnings;
18168
18578
  action: 'updated';
18169
18579
  } | {
@@ -18178,6 +18588,10 @@ export type SaveCreativeResponses = {
18178
18588
  campaignIds: Array<string>;
18179
18589
  attached: Array<string>;
18180
18590
  detached: Array<string>;
18591
+ liveMediaBuys?: {
18592
+ attached: Array<SaveCreativeSuccessLiveMediaBuysAttachedItem>;
18593
+ detached: Array<SaveCreativeSuccessLiveMediaBuysDetachedItem>;
18594
+ };
18181
18595
  } | {
18182
18596
  action: 'resynced';
18183
18597
  creativeId: string;
@@ -18185,6 +18599,15 @@ export type SaveCreativeResponses = {
18185
18599
  campaignId: string;
18186
18600
  status: 'confirmed';
18187
18601
  mediaBuyIds: Array<string>;
18602
+ queuedMediaBuyIds?: Array<string>;
18603
+ code?: never;
18604
+ message?: never;
18605
+ retryable?: never;
18606
+ } | {
18607
+ campaignId: string;
18608
+ status: 'queued';
18609
+ queuedMediaBuyIds: Array<string>;
18610
+ mediaBuyIds?: never;
18188
18611
  code?: never;
18189
18612
  message?: never;
18190
18613
  retryable?: never;
@@ -18194,6 +18617,7 @@ export type SaveCreativeResponses = {
18194
18617
  code: string;
18195
18618
  message: string;
18196
18619
  retryable: boolean;
18620
+ queuedMediaBuyIds?: Array<string>;
18197
18621
  mediaBuyIds?: never;
18198
18622
  }>;
18199
18623
  } | {
@@ -19259,12 +19683,60 @@ export type SaveCreativeSuccessCreativeDuplicate = {
19259
19683
  campaignIds: Array<string>;
19260
19684
  stateRevision: number;
19261
19685
  };
19686
+ export type SaveCreativeSuccessCreativeMacroPreview = {
19687
+ trackers: Array<{
19688
+ tracker: 'impression_tracker' | 'click_tracker';
19689
+ given: string;
19690
+ /**
19691
+ * Compiled to AdCP macro syntax. Nothing is fetched.
19692
+ */
19693
+ compiledUrl: string;
19694
+ /**
19695
+ * False when the compiler refused the URL.
19696
+ */
19697
+ publishable: boolean;
19698
+ macros: Array<string>;
19699
+ /**
19700
+ * Macros every declaring seller fills.
19701
+ */
19702
+ filledBySeller?: Array<string>;
19703
+ /**
19704
+ * Macros some declaring sellers fill and others leave literal.
19705
+ */
19706
+ filledBySomeSellers?: Array<string>;
19707
+ filledByApostra: Array<string>;
19708
+ /**
19709
+ * Macros no declaring seller fills. The seller lists are absent when fillSetUnknownReason is set.
19710
+ */
19711
+ literal?: Array<string>;
19712
+ }>;
19713
+ fillSet?: {
19714
+ formatOptionId: string;
19715
+ sellerCount: number;
19716
+ };
19717
+ /**
19718
+ * Why the seller fill set is unknown; get({ kind: "creative_format" }) macro_resolution_capabilities lists it.
19719
+ */
19720
+ fillSetUnknownReason?: 'not_tied_to_format' | 'format_not_found' | 'format_lookup_failed';
19721
+ /**
19722
+ * The dry run failed; the creative was saved.
19723
+ */
19724
+ unavailableReason?: string;
19725
+ };
19262
19726
  export type SaveCreativeSuccessDuplicateCreativeSuccess = {
19263
19727
  action: 'duplicated';
19264
19728
  sourceCreativeId: string;
19265
19729
  creative: SaveCreativeSuccessCreativeDuplicate;
19266
19730
  replayed: boolean;
19267
19731
  };
19732
+ export type SaveCreativeSuccessLiveMediaBuysAttachedItem = {
19733
+ mediaBuyId: string;
19734
+ status: string;
19735
+ };
19736
+ export type SaveCreativeSuccessLiveMediaBuysDetachedItem = {
19737
+ mediaBuyId: string;
19738
+ status: string;
19739
+ };
19268
19740
  export type SaveCreativeSuccessProviderContacted = false;
19269
19741
  export type SaveCreativeSuccessReadinessWarnings = Array<{
19270
19742
  code: 'destination_required' | 'tag_not_sendable';
@@ -20291,7 +20763,7 @@ export type SaveInventorySourceData = {
20291
20763
  */
20292
20764
  type?: 'SALES' | 'SIGNAL' | 'CREATIVE' | 'OUTCOME';
20293
20765
  /**
20294
- * The agent's endpoint URL. Required when creating.
20766
+ * The agent's endpoint URL. Required when creating a non-SALES source. A SALES agent is added with agentId, never an address.
20295
20767
  */
20296
20768
  endpointUrl?: string;
20297
20769
  /**
@@ -21882,7 +22354,7 @@ export type SaveMaterialRequestMetadataBuyerScopeOperatorDomain = string;
21882
22354
  export type SaveMaterialRequestMetadataChannels = Array<string>;
21883
22355
  export type SaveMaterialRequestMetadataDescription = string;
21884
22356
  export type SaveMaterialRequestMetadataDisplayName = string;
21885
- export type SaveMaterialRequestMetadataDocumentPurpose = 'sales_deck' | 'one_sheet' | 'case_study' | 'response' | 'specification_sheet' | 'media_kit' | null;
22357
+ export type SaveMaterialRequestMetadataDocumentPurpose = 'sales_deck' | 'one_sheet' | 'case_study' | 'specification_sheet' | 'media_kit' | null;
21886
22358
  export type SaveMaterialRequestMetadataEffectiveFrom = string;
21887
22359
  export type SaveMaterialRequestMetadataExpiresAt = string;
21888
22360
  export type SaveMaterialRequestMetadataFormats = Array<string>;
@@ -23013,6 +23485,10 @@ export type SaveMediaBuyData = {
23013
23485
  * Update only: true removes this line item.
23014
23486
  */
23015
23487
  remove?: boolean;
23488
+ /**
23489
+ * Update only: delivery pacing of this line item. On a running buy the seller must take the change.
23490
+ */
23491
+ pacing?: 'even' | 'asap' | 'front_loaded';
23016
23492
  /**
23017
23493
  * Update only: line-item handle from the read; needed for a repeated product.
23018
23494
  */
@@ -23079,13 +23555,21 @@ export type SaveMediaBuyData = {
23079
23555
  daypart_targets?: Array<{
23080
23556
  days: Array<'monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday' | 'sunday'>;
23081
23557
  /**
23082
- * Start hour (inclusive), 0-23 in 24-hour format. 0 = midnight, 6 = 6:00am, 18 = 6:00pm.
23558
+ * Start hour (inclusive), 0-23 in 24-hour format. 0 = midnight, 6 = 6:00am, 18 = 6:00pm. Whole-hour form: pair with end_hour; mutually exclusive with start_time and end_time.
23083
23559
  */
23084
- start_hour: number;
23560
+ start_hour?: number;
23085
23561
  /**
23086
- * End hour (exclusive), 1-24 in 24-hour format. 10 = 10:00am, 24 = midnight. Must be greater than start_hour.
23562
+ * End hour (exclusive), 1-24 in 24-hour format. 10 = 10:00am, 24 = midnight. Must be greater than start_hour; whole-hour windows never cross midnight. Whole-hour form: pair with start_hour; mutually exclusive with start_time and end_time.
23087
23563
  */
23088
- end_hour: number;
23564
+ end_hour?: number;
23565
+ /**
23566
+ * Experimental in AdCP 3.3. Start of the window (inclusive) as a 24-hour HH:MM civil clock time on the entry's timezone clock, such as '19:30'. Use for windows that do not fall on whole hours (linear TV programme junctions, quarter-hour schedules). Pair with end_time; mutually exclusive with start_hour and end_hour. A window whose end_time is earlier than its start_time crosses midnight and belongs to the day it starts on. A product accepts only the finest time granularity it declares in overlay_support.daypart_targets.time_granularity; sellers MUST reject, never round, a clock time the product does not honor.
23567
+ */
23568
+ start_time?: string;
23569
+ /**
23570
+ * Experimental in AdCP 3.3. End of the window (exclusive) as a 24-hour HH:MM civil clock time, such as '23:00'. Pair with start_time; mutually exclusive with start_hour and end_hour. end_time earlier than start_time means the window crosses midnight and ends at end_time on the following civil day (for example, 22:00 to 02:00 runs from 22:00 on a listed day until 02:00 the next morning); '00:00' therefore ends the window at the midnight closing the start day. end_time MUST NOT equal start_time: a zero-length or full-day window is invalid, and a full day uses start_hour 0 with end_hour 24. Sellers MUST reject an equal pair with INVALID_REQUEST.
23571
+ */
23572
+ end_time?: string;
23089
23573
  timezone?: 'inventory_local' | string;
23090
23574
  /**
23091
23575
  * Optional human-readable name for this time window (e.g., 'Morning Drive', 'Prime Time')
@@ -23165,7 +23649,7 @@ export type SaveMediaBuyData = {
23165
23649
  };
23166
23650
  property_list?: {
23167
23651
  /**
23168
- * URL of the agent managing the property list
23652
+ * AdCP task endpoint of the agent exposing get_property_list. Receivers MUST support resolution over MCP; another advertised AdCP task transport MAY be used by agreement. This is not a base URL for an inferred /lists/{list_id} HTTP path.
23169
23653
  */
23170
23654
  agent_url: string;
23171
23655
  /**
@@ -23173,13 +23657,13 @@ export type SaveMediaBuyData = {
23173
23657
  */
23174
23658
  list_id: string;
23175
23659
  /**
23176
- * JWT or other authorization token for accessing the list. Optional if the list is public or caller has implicit access.
23660
+ * Bearer credential authorizing read-only get_property_list access to this list_id, including every pagination request. When supplied, the managing agent MUST accept it instead of its normal credentials, without requiring the recipient to have an account. It MUST NOT grant access to other lists or mutations. Omit for a public list or independently authorized receiver. Deliver this credential to the intended receiver inside the reference, including in seller task arguments. When authenticating get_property_list requests to the managing agent, send it only in the Authorization header, never in those task arguments or a URL.
23177
23661
  */
23178
23662
  auth_token?: string;
23179
23663
  };
23180
23664
  property_list_exclude?: {
23181
23665
  /**
23182
- * URL of the agent managing the property list
23666
+ * AdCP task endpoint of the agent exposing get_property_list. Receivers MUST support resolution over MCP; another advertised AdCP task transport MAY be used by agreement. This is not a base URL for an inferred /lists/{list_id} HTTP path.
23183
23667
  */
23184
23668
  agent_url: string;
23185
23669
  /**
@@ -23187,7 +23671,7 @@ export type SaveMediaBuyData = {
23187
23671
  */
23188
23672
  list_id: string;
23189
23673
  /**
23190
- * JWT or other authorization token for accessing the list. Optional if the list is public or caller has implicit access.
23674
+ * Bearer credential authorizing read-only get_property_list access to this list_id, including every pagination request. When supplied, the managing agent MUST accept it instead of its normal credentials, without requiring the recipient to have an account. It MUST NOT grant access to other lists or mutations. Omit for a public list or independently authorized receiver. Deliver this credential to the intended receiver inside the reference, including in seller task arguments. When authenticating get_property_list requests to the managing agent, send it only in the Authorization header, never in those task arguments or a URL.
23191
23675
  */
23192
23676
  auth_token?: string;
23193
23677
  };
@@ -23219,6 +23703,34 @@ export type SaveMediaBuyData = {
23219
23703
  */
23220
23704
  auth_token?: string;
23221
23705
  };
23706
+ collection_lists?: Array<{
23707
+ /**
23708
+ * URL of the agent managing the collection list
23709
+ */
23710
+ agent_url: string;
23711
+ /**
23712
+ * Identifier for the collection list within the agent
23713
+ */
23714
+ list_id: string;
23715
+ /**
23716
+ * JWT or other authorization token for accessing the list. Optional if the list is public or caller has implicit access.
23717
+ */
23718
+ auth_token?: string;
23719
+ }>;
23720
+ collection_lists_exclude?: Array<{
23721
+ /**
23722
+ * URL of the agent managing the collection list
23723
+ */
23724
+ agent_url: string;
23725
+ /**
23726
+ * Identifier for the collection list within the agent
23727
+ */
23728
+ list_id: string;
23729
+ /**
23730
+ * JWT or other authorization token for accessing the list. Optional if the list is public or caller has implicit access.
23731
+ */
23732
+ auth_token?: string;
23733
+ }>;
23222
23734
  placement_selection?: {
23223
23735
  [key: string]: unknown;
23224
23736
  };
@@ -23459,7 +23971,7 @@ export type SaveMediaBuyData = {
23459
23971
  };
23460
23972
  }>;
23461
23973
  /**
23462
- * Single total. One-allocation proposal allowed; multi: products[].budget; else retain allocation.
23974
+ * Single total; seller_optimized: shared pool (default campaign total). One-allocation proposal allowed; multi: products[].budget; else retain allocation.
23463
23975
  */
23464
23976
  budget?: {
23465
23977
  /**
@@ -23472,7 +23984,7 @@ export type SaveMediaBuyData = {
23472
23984
  currency: string;
23473
23985
  };
23474
23986
  /**
23475
- * Meta: fixed = ad-set budgets; seller_optimized = shared campaign budget. Ask if unclear; required when both modes are supported.
23987
+ * Meta: fixed = ad-set budgets; seller_optimized = shared budget. Ask if unclear; required when both modes are supported.
23476
23988
  */
23477
23989
  budgetAllocation?: {
23478
23990
  /**
@@ -23798,6 +24310,10 @@ export type SaveMediaBuyData = {
23798
24310
  * Update only: true removes this line item.
23799
24311
  */
23800
24312
  remove?: boolean;
24313
+ /**
24314
+ * Update only: delivery pacing of this line item. On a running buy the seller must take the change.
24315
+ */
24316
+ pacing?: 'even' | 'asap' | 'front_loaded';
23801
24317
  /**
23802
24318
  * Update only: line-item handle from the read; needed for a repeated product.
23803
24319
  */
@@ -23864,13 +24380,21 @@ export type SaveMediaBuyData = {
23864
24380
  daypart_targets?: Array<{
23865
24381
  days: Array<'monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday' | 'sunday'>;
23866
24382
  /**
23867
- * Start hour (inclusive), 0-23 in 24-hour format. 0 = midnight, 6 = 6:00am, 18 = 6:00pm.
24383
+ * Start hour (inclusive), 0-23 in 24-hour format. 0 = midnight, 6 = 6:00am, 18 = 6:00pm. Whole-hour form: pair with end_hour; mutually exclusive with start_time and end_time.
24384
+ */
24385
+ start_hour?: number;
24386
+ /**
24387
+ * End hour (exclusive), 1-24 in 24-hour format. 10 = 10:00am, 24 = midnight. Must be greater than start_hour; whole-hour windows never cross midnight. Whole-hour form: pair with start_hour; mutually exclusive with start_time and end_time.
24388
+ */
24389
+ end_hour?: number;
24390
+ /**
24391
+ * Experimental in AdCP 3.3. Start of the window (inclusive) as a 24-hour HH:MM civil clock time on the entry's timezone clock, such as '19:30'. Use for windows that do not fall on whole hours (linear TV programme junctions, quarter-hour schedules). Pair with end_time; mutually exclusive with start_hour and end_hour. A window whose end_time is earlier than its start_time crosses midnight and belongs to the day it starts on. A product accepts only the finest time granularity it declares in overlay_support.daypart_targets.time_granularity; sellers MUST reject, never round, a clock time the product does not honor.
23868
24392
  */
23869
- start_hour: number;
24393
+ start_time?: string;
23870
24394
  /**
23871
- * End hour (exclusive), 1-24 in 24-hour format. 10 = 10:00am, 24 = midnight. Must be greater than start_hour.
24395
+ * Experimental in AdCP 3.3. End of the window (exclusive) as a 24-hour HH:MM civil clock time, such as '23:00'. Pair with start_time; mutually exclusive with start_hour and end_hour. end_time earlier than start_time means the window crosses midnight and ends at end_time on the following civil day (for example, 22:00 to 02:00 runs from 22:00 on a listed day until 02:00 the next morning); '00:00' therefore ends the window at the midnight closing the start day. end_time MUST NOT equal start_time: a zero-length or full-day window is invalid, and a full day uses start_hour 0 with end_hour 24. Sellers MUST reject an equal pair with INVALID_REQUEST.
23872
24396
  */
23873
- end_hour: number;
24397
+ end_time?: string;
23874
24398
  timezone?: 'inventory_local' | string;
23875
24399
  /**
23876
24400
  * Optional human-readable name for this time window (e.g., 'Morning Drive', 'Prime Time')
@@ -23941,7 +24465,7 @@ export type SaveMediaBuyData = {
23941
24465
  } | null;
23942
24466
  property_list?: {
23943
24467
  /**
23944
- * URL of the agent managing the property list
24468
+ * AdCP task endpoint of the agent exposing get_property_list. Receivers MUST support resolution over MCP; another advertised AdCP task transport MAY be used by agreement. This is not a base URL for an inferred /lists/{list_id} HTTP path.
23945
24469
  */
23946
24470
  agent_url: string;
23947
24471
  /**
@@ -23949,13 +24473,13 @@ export type SaveMediaBuyData = {
23949
24473
  */
23950
24474
  list_id: string;
23951
24475
  /**
23952
- * JWT or other authorization token for accessing the list. Optional if the list is public or caller has implicit access.
24476
+ * Bearer credential authorizing read-only get_property_list access to this list_id, including every pagination request. When supplied, the managing agent MUST accept it instead of its normal credentials, without requiring the recipient to have an account. It MUST NOT grant access to other lists or mutations. Omit for a public list or independently authorized receiver. Deliver this credential to the intended receiver inside the reference, including in seller task arguments. When authenticating get_property_list requests to the managing agent, send it only in the Authorization header, never in those task arguments or a URL.
23953
24477
  */
23954
24478
  auth_token?: string;
23955
24479
  } | null;
23956
24480
  property_list_exclude?: {
23957
24481
  /**
23958
- * URL of the agent managing the property list
24482
+ * AdCP task endpoint of the agent exposing get_property_list. Receivers MUST support resolution over MCP; another advertised AdCP task transport MAY be used by agreement. This is not a base URL for an inferred /lists/{list_id} HTTP path.
23959
24483
  */
23960
24484
  agent_url: string;
23961
24485
  /**
@@ -23963,7 +24487,7 @@ export type SaveMediaBuyData = {
23963
24487
  */
23964
24488
  list_id: string;
23965
24489
  /**
23966
- * JWT or other authorization token for accessing the list. Optional if the list is public or caller has implicit access.
24490
+ * Bearer credential authorizing read-only get_property_list access to this list_id, including every pagination request. When supplied, the managing agent MUST accept it instead of its normal credentials, without requiring the recipient to have an account. It MUST NOT grant access to other lists or mutations. Omit for a public list or independently authorized receiver. Deliver this credential to the intended receiver inside the reference, including in seller task arguments. When authenticating get_property_list requests to the managing agent, send it only in the Authorization header, never in those task arguments or a URL.
23967
24491
  */
23968
24492
  auth_token?: string;
23969
24493
  } | null;
@@ -23995,6 +24519,34 @@ export type SaveMediaBuyData = {
23995
24519
  */
23996
24520
  auth_token?: string;
23997
24521
  } | null;
24522
+ collection_lists?: Array<{
24523
+ /**
24524
+ * URL of the agent managing the collection list
24525
+ */
24526
+ agent_url: string;
24527
+ /**
24528
+ * Identifier for the collection list within the agent
24529
+ */
24530
+ list_id: string;
24531
+ /**
24532
+ * JWT or other authorization token for accessing the list. Optional if the list is public or caller has implicit access.
24533
+ */
24534
+ auth_token?: string;
24535
+ }> | null;
24536
+ collection_lists_exclude?: Array<{
24537
+ /**
24538
+ * URL of the agent managing the collection list
24539
+ */
24540
+ agent_url: string;
24541
+ /**
24542
+ * Identifier for the collection list within the agent
24543
+ */
24544
+ list_id: string;
24545
+ /**
24546
+ * JWT or other authorization token for accessing the list. Optional if the list is public or caller has implicit access.
24547
+ */
24548
+ auth_token?: string;
24549
+ }> | null;
23998
24550
  placement_selection?: {
23999
24551
  [key: string]: unknown;
24000
24552
  } | null;
@@ -24226,7 +24778,7 @@ export type SaveMediaBuyData = {
24226
24778
  };
24227
24779
  }>;
24228
24780
  /**
24229
- * Single total. One-allocation proposal allowed; multi: products[].budget; else retain allocation.
24781
+ * Single total; seller_optimized: shared pool (default campaign total). One-allocation proposal allowed; multi: products[].budget; else retain allocation.
24230
24782
  */
24231
24783
  budget?: {
24232
24784
  /**
@@ -24239,7 +24791,7 @@ export type SaveMediaBuyData = {
24239
24791
  currency: string;
24240
24792
  };
24241
24793
  /**
24242
- * Meta: fixed = ad-set budgets; seller_optimized = shared campaign budget. Ask if unclear; required when both modes are supported.
24794
+ * Meta: fixed = ad-set budgets; seller_optimized = shared budget. Ask if unclear; required when both modes are supported.
24243
24795
  */
24244
24796
  budgetAllocation?: {
24245
24797
  /**
@@ -24469,7 +25021,7 @@ export type SaveMediaBuyData = {
24469
25021
  */
24470
25022
  channelGroupId?: string;
24471
25023
  /**
24472
- * Single total. One-allocation proposal allowed; multi: products[].budget; else retain allocation.
25024
+ * Single total; seller_optimized: shared pool (default campaign total). One-allocation proposal allowed; multi: products[].budget; else retain allocation.
24473
25025
  */
24474
25026
  budget?: {
24475
25027
  /**
@@ -25126,6 +25678,7 @@ export type SaveMediaBuyResponses = {
25126
25678
  };
25127
25679
  createdAt: string;
25128
25680
  updatedAt: string;
25681
+ [key: string]: unknown;
25129
25682
  };
25130
25683
  warnings?: Array<string>;
25131
25684
  errors?: Array<{
@@ -25335,7 +25888,7 @@ export type SaveMediaKitData = {
25335
25888
  */
25336
25889
  channels?: Array<'display' | 'olv' | 'social' | 'search' | 'ctv' | 'linear_tv' | 'radio' | 'streaming_audio' | 'podcast' | 'dooh' | 'ooh' | 'print' | 'cinema' | 'email' | 'gaming' | 'retail_media' | 'influencer' | 'affiliate' | 'product_placement' | 'sponsored_intelligence'>;
25337
25890
  /**
25338
- * Legacy regions; use save_seller's listing field for countries.
25891
+ * Legacy regions, saved as your countries; prefer save_seller's listing countries.
25339
25892
  */
25340
25893
  regions?: Array<string>;
25341
25894
  /**
@@ -26188,11 +26741,64 @@ export type SavePropertyListData = {
26188
26741
  */
26189
26742
  domains?: Array<string>;
26190
26743
  /**
26191
- * AdCP typed property identifiers.
26744
+ * AdCP typed property identifiers. Each may carry `features`: your scores for that property, e.g. {spektre_aspi: {value: 94}}.
26192
26745
  */
26193
- identifiers?: Array<SavePropertyListRequestPropertyListIdentifier>;
26746
+ identifiers?: Array<{
26747
+ /**
26748
+ * AdCP property identifier type, such as domain, app, CTV, DOOH, audio, radio, or network.
26749
+ */
26750
+ type: 'domain' | 'subdomain' | 'network_id' | 'ios_bundle' | 'android_package' | 'apple_app_store_id' | 'google_play_id' | 'roku_store_id' | 'fire_tv_asin' | 'samsung_app_id' | 'apple_tv_bundle' | 'bundle_id' | 'venue_id' | 'screen_id' | 'openooh_venue_type' | 'rss_url' | 'apple_podcast_id' | 'spotify_collection_id' | 'podcast_guid' | 'station_id' | 'facility_id';
26751
+ /**
26752
+ * Identifier value for the selected AdCP property type.
26753
+ */
26754
+ value: string;
26755
+ /**
26756
+ * Scores for this property: a map from your feature id to AdCP's property feature value, for example {spektre_aspi: {value: 94}}. Scores belong to the account, not the list; a later save replaces the value for that feature and keeps the earlier one as history.
26757
+ */
26758
+ features?: {
26759
+ [key: string]: {
26760
+ /**
26761
+ * The score: a number, a string or a boolean.
26762
+ */
26763
+ value: boolean | number | string;
26764
+ /**
26765
+ * Unit of a numeric value, for example "percentage".
26766
+ */
26767
+ unit?: string;
26768
+ /**
26769
+ * Confidence in the value, from 0 to 1.
26770
+ */
26771
+ confidence?: number;
26772
+ /**
26773
+ * ISO 8601 date-time the value was measured.
26774
+ */
26775
+ measured_at?: string;
26776
+ /**
26777
+ * ISO 8601 date-time after which the value no longer counts; the property is then treated as not covered for this feature.
26778
+ */
26779
+ expires_at?: string;
26780
+ /**
26781
+ * Version of the method that produced the value.
26782
+ */
26783
+ methodology_version?: string;
26784
+ /**
26785
+ * Vendor-specific detail about the measurement; stored, not applied.
26786
+ */
26787
+ details?: {
26788
+ [key: string]: unknown;
26789
+ };
26790
+ /**
26791
+ * AdCP extension values; stored, not applied.
26792
+ */
26793
+ ext?: {
26794
+ [key: string]: unknown;
26795
+ };
26796
+ [key: string]: unknown;
26797
+ };
26798
+ };
26799
+ }>;
26194
26800
  /**
26195
- * Create-only AdCP property filters.
26801
+ * Create-only filters. feature_requirements are judged against your saved scores; with them, a list may have no identifiers and resolves over every property you have scored.
26196
26802
  */
26197
26803
  filters?: SavePropertyListRequestPropertyListFilters | null;
26198
26804
  /**
@@ -26299,44 +26905,35 @@ export type SavePropertyListRequestPropertyListFilters = {
26299
26905
  */
26300
26906
  property_types?: Array<'website' | 'mobile_app' | 'ctv_app' | 'desktop_app' | 'dooh' | 'podcast' | 'radio' | 'streaming_audio'> | null;
26301
26907
  /**
26302
- * Feature-based requirements (e.g. IVT, MFA, green)
26908
+ * AdCP feature requirements, all of which a property must meet, judged against the account's saved scores (e.g. spektre_aspi min_value 20).
26303
26909
  */
26304
26910
  feature_requirements?: Array<{
26305
26911
  /**
26306
- * Feature identifier.
26912
+ * Feature to judge, as saved on the identifiers, for example spektre_aspi.
26307
26913
  */
26308
26914
  feature_id: string;
26309
26915
  /**
26310
- * Minimum acceptable feature value.
26916
+ * Lowest numeric value that passes.
26311
26917
  */
26312
26918
  min_value?: number | null;
26313
26919
  /**
26314
- * Maximum acceptable feature value.
26920
+ * Highest numeric value that passes.
26315
26921
  */
26316
26922
  max_value?: number | null;
26317
26923
  /**
26318
- * Accepted categorical feature values.
26924
+ * Values that pass, for boolean or categorical features.
26319
26925
  */
26320
26926
  allowed_values?: Array<unknown> | null;
26321
26927
  /**
26322
- * How to treat properties without this feature.
26928
+ * exclude (default) removes a property with no live value for this feature; include keeps it.
26323
26929
  */
26324
26930
  if_not_covered?: 'exclude' | 'include' | null;
26931
+ /**
26932
+ * Optional AdCP attribution to the policy that authorizes this threshold.
26933
+ */
26934
+ policy_id?: string;
26325
26935
  }> | null;
26326
26936
  };
26327
- /**
26328
- * A typed property identifier (AdCP-aligned, sourced from `@adcp/sdk`). Read-side note: Apple App Store bundles share a single backing column, so `apple_tv_bundle` write-time entries normalize to `ios_bundle` on subsequent get/list responses. `bundle_id` (generic fallback) likewise normalizes to the resolved app row's store-typed form (`ios_bundle` or `android_package`).
26329
- */
26330
- export type SavePropertyListRequestPropertyListIdentifier = {
26331
- /**
26332
- * AdCP property identifier type, such as domain, app, CTV, DOOH, audio, radio, or network.
26333
- */
26334
- type: 'domain' | 'subdomain' | 'network_id' | 'ios_bundle' | 'android_package' | 'apple_app_store_id' | 'google_play_id' | 'roku_store_id' | 'fire_tv_asin' | 'samsung_app_id' | 'apple_tv_bundle' | 'bundle_id' | 'venue_id' | 'screen_id' | 'openooh_venue_type' | 'rss_url' | 'apple_podcast_id' | 'spotify_collection_id' | 'podcast_guid' | 'station_id' | 'facility_id';
26335
- /**
26336
- * Identifier value for the selected AdCP property type.
26337
- */
26338
- value: string;
26339
- };
26340
26937
  export type SavePropertyListResponse = SavePropertyListResponses[keyof SavePropertyListResponses];
26341
26938
  export type SavePropertyListResponses = {
26342
26939
  /**
@@ -26487,29 +27084,33 @@ export type SavePropertyListSuccessPropertyListFilters = {
26487
27084
  */
26488
27085
  property_types?: Array<'website' | 'mobile_app' | 'ctv_app' | 'desktop_app' | 'dooh' | 'podcast' | 'radio' | 'streaming_audio'> | null;
26489
27086
  /**
26490
- * Feature-based requirements (e.g. IVT, MFA, green)
27087
+ * AdCP feature requirements, all of which a property must meet, judged against the account's saved scores (e.g. spektre_aspi min_value 20).
26491
27088
  */
26492
27089
  feature_requirements?: Array<{
26493
27090
  /**
26494
- * Feature identifier.
27091
+ * Feature to judge, as saved on the identifiers, for example spektre_aspi.
26495
27092
  */
26496
27093
  feature_id: string;
26497
27094
  /**
26498
- * Minimum acceptable feature value.
27095
+ * Lowest numeric value that passes.
26499
27096
  */
26500
27097
  min_value?: number | null;
26501
27098
  /**
26502
- * Maximum acceptable feature value.
27099
+ * Highest numeric value that passes.
26503
27100
  */
26504
27101
  max_value?: number | null;
26505
27102
  /**
26506
- * Accepted categorical feature values.
27103
+ * Values that pass, for boolean or categorical features.
26507
27104
  */
26508
27105
  allowed_values?: Array<unknown> | null;
26509
27106
  /**
26510
- * How to treat properties without this feature.
27107
+ * exclude (default) removes a property with no live value for this feature; include keeps it.
26511
27108
  */
26512
27109
  if_not_covered?: 'exclude' | 'include' | null;
27110
+ /**
27111
+ * Optional AdCP attribution to the policy that authorizes this threshold.
27112
+ */
27113
+ policy_id?: string;
26513
27114
  }> | null;
26514
27115
  };
26515
27116
  export type SavePropertyListSuccessPropertyListIdentifierPageItem = {
@@ -26519,6 +27120,37 @@ export type SavePropertyListSuccessPropertyListIdentifierPageItem = {
26519
27120
  * True when value was cut to 512 bytes and ends with an ellipsis; it no longer matches a property.
26520
27121
  */
26521
27122
  value_truncated?: true;
27123
+ /**
27124
+ * Your current scores for this property, as saved: a map from feature id to AdCP's property feature value (without its free-form details and ext).
27125
+ */
27126
+ features?: {
27127
+ [key: string]: {
27128
+ /**
27129
+ * The score: a number, a string or a boolean.
27130
+ */
27131
+ value: boolean | number | string;
27132
+ /**
27133
+ * Unit of a numeric value.
27134
+ */
27135
+ unit?: string;
27136
+ /**
27137
+ * Confidence in the value, from 0 to 1.
27138
+ */
27139
+ confidence?: number;
27140
+ /**
27141
+ * When the value was measured.
27142
+ */
27143
+ measured_at?: string;
27144
+ /**
27145
+ * When the value stops counting.
27146
+ */
27147
+ expires_at?: string;
27148
+ /**
27149
+ * Version of the method that produced the value.
27150
+ */
27151
+ methodology_version?: string;
27152
+ };
27153
+ };
26522
27154
  };
26523
27155
  export type SavePropertyListSuccessPropertyListProjection = {
26524
27156
  id: string;
@@ -27657,6 +28289,23 @@ export type SaveSellerData = {
27657
28289
  * Reason recorded with the decision to decline this intake.
27658
28290
  */
27659
28291
  message: string;
28292
+ } | {
28293
+ /**
28294
+ * Declined buyer-account intake ID from get(account_relationship).
28295
+ */
28296
+ intakeId: string;
28297
+ /**
28298
+ * Current intake version from get(account_relationship).
28299
+ */
28300
+ expectedVersion: number;
28301
+ /**
28302
+ * Return this declined intake to pending review.
28303
+ */
28304
+ decision: 'reopen';
28305
+ /**
28306
+ * Optional note recorded with this decision.
28307
+ */
28308
+ message?: string;
27660
28309
  };
27661
28310
  /**
27662
28311
  * Which account serves an admitted buyer on one source (see get(account_relationship) sources). Send alone.
@@ -27670,9 +28319,13 @@ export type SaveSellerData = {
27670
28319
  */
27671
28320
  decision: 'bound';
27672
28321
  /**
27673
- * Source account to map, usually a candidate.
28322
+ * dedicated (the default) maps sourceExternalAccountId. shared_default binds the source default account instead and takes no account id; see the source interchangeDefault.
27674
28323
  */
27675
- sourceExternalAccountId: string;
28324
+ bindingMode?: 'dedicated' | 'shared_default';
28325
+ /**
28326
+ * Source account to map, usually a candidate. Required unless bindingMode is shared_default.
28327
+ */
28328
+ sourceExternalAccountId?: string;
27676
28329
  } | {
27677
28330
  relationshipId: SaveSellerRequestSourceDecisionRelationshipId;
27678
28331
  inventorySourceKey: SaveSellerRequestSourceDecisionInventorySourceKey;
@@ -27681,8 +28334,161 @@ export type SaveSellerData = {
27681
28334
  * No account needed.
27682
28335
  */
27683
28336
  decision: 'not_required';
28337
+ bindingMode?: never;
27684
28338
  sourceExternalAccountId?: never;
27685
28339
  };
28340
+ /**
28341
+ * Demo expiry and sample sources, as desired state. Send alone. Create, reset and delete are on the demo Page.
28342
+ */
28343
+ demo?: {
28344
+ /**
28345
+ * New expiry: after the current one, at most 7 days past it.
28346
+ */
28347
+ expiresAt?: string;
28348
+ /**
28349
+ * The complete set of sample sources; keep sample-publisher-display.
28350
+ */
28351
+ sourceRecipeIds?: Array<'sample-publisher-display' | 'sample-publisher-ctv' | 'sample-retail-media'>;
28352
+ };
28353
+ /**
28354
+ * Ask a buyer for information on a pending intake, confirm it, or withdraw it (see get(account_relationship) case). Send alone.
28355
+ */
28356
+ informationRequest?: {
28357
+ /**
28358
+ * Ask the buyer for information or an external action.
28359
+ */
28360
+ action: 'request';
28361
+ /**
28362
+ * Pending intake ID from get(account_relationship).
28363
+ */
28364
+ intakeId: string;
28365
+ /**
28366
+ * AdCP's account setup object: what you ask the buyer to do.
28367
+ */
28368
+ setup: {
28369
+ /**
28370
+ * What you need from the buyer: plain text, 1-2000 characters, no markup.
28371
+ */
28372
+ message: string;
28373
+ /**
28374
+ * Your own HTTPS process link for the buyer (credit form, portal); no credentials.
28375
+ */
28376
+ url?: string;
28377
+ /**
28378
+ * When the request lapses: in the future, within 365 days.
28379
+ */
28380
+ expires_at: string;
28381
+ };
28382
+ requestId?: never;
28383
+ reason?: never;
28384
+ } | {
28385
+ /**
28386
+ * Confirm the buyer provided what you asked for.
28387
+ */
28388
+ action: 'confirm';
28389
+ /**
28390
+ * The information request id from get(account_relationship) case.informationRequest.
28391
+ */
28392
+ requestId: string;
28393
+ intakeId?: never;
28394
+ setup?: never;
28395
+ reason?: never;
28396
+ } | {
28397
+ /**
28398
+ * Drop your own pending request without deciding the intake.
28399
+ */
28400
+ action: 'withdraw';
28401
+ /**
28402
+ * The information request id from get(account_relationship) case.informationRequest.
28403
+ */
28404
+ requestId: string;
28405
+ /**
28406
+ * Why you are withdrawing it.
28407
+ */
28408
+ reason?: string;
28409
+ intakeId?: never;
28410
+ setup?: never;
28411
+ };
28412
+ /**
28413
+ * Assert or revoke that a direct-billed buyer is billable (see get(account_relationship) billingGate). Send alone.
28414
+ */
28415
+ readyToInvoice?: {
28416
+ /**
28417
+ * Assert that the billing party is billable for this relationship.
28418
+ */
28419
+ action: 'assert';
28420
+ /**
28421
+ * From get(account_relationship).
28422
+ */
28423
+ relationshipId: string;
28424
+ /**
28425
+ * Who you invoice: operator or advertiser.
28426
+ */
28427
+ billing: 'operator' | 'advertiser';
28428
+ /**
28429
+ * The legal entity invoiced. Repeat the gate billing_entity exactly, including every identifier it shows.
28430
+ */
28431
+ billing_entity: {
28432
+ /**
28433
+ * Legal name of the invoiced entity.
28434
+ */
28435
+ legal_name: string;
28436
+ /**
28437
+ * VAT id, if the gate shows one.
28438
+ */
28439
+ vat_id?: string;
28440
+ /**
28441
+ * Tax id, if the gate shows one.
28442
+ */
28443
+ tax_id?: string;
28444
+ /**
28445
+ * Company registration number, if the gate shows one.
28446
+ */
28447
+ registration_number?: string;
28448
+ };
28449
+ /**
28450
+ * Where the confirmation comes from.
28451
+ */
28452
+ authority: 'crm' | 'erp' | 'finance_staff' | 'external_workflow';
28453
+ /**
28454
+ * A short reference or note; never a document.
28455
+ */
28456
+ evidence?: {
28457
+ /**
28458
+ * Reference in your finance system.
28459
+ */
28460
+ reference?: string;
28461
+ /**
28462
+ * Short note.
28463
+ */
28464
+ note?: string;
28465
+ };
28466
+ /**
28467
+ * When the assertion stops counting; in the future.
28468
+ */
28469
+ validUntil?: string;
28470
+ assertionId?: never;
28471
+ reason?: never;
28472
+ } | {
28473
+ /**
28474
+ * Revoke an assertion: grants billed to that party return to payment_required.
28475
+ */
28476
+ action: 'revoke';
28477
+ /**
28478
+ * From get(account_relationship) billingReadiness.
28479
+ */
28480
+ assertionId: string;
28481
+ /**
28482
+ * Why billability is withdrawn.
28483
+ */
28484
+ reason: string;
28485
+ relationshipId?: never;
28486
+ billing?: never;
28487
+ billing_entity?: never;
28488
+ authority?: never;
28489
+ evidence?: never;
28490
+ validUntil?: never;
28491
+ };
27686
28492
  /**
27687
28493
  * Hold (true) or resume (false) new business: buyers stop discovering the Seller and buying; existing delivery continues. Send alone.
27688
28494
  */
@@ -27890,7 +28696,7 @@ export type SaveSellerResponses = {
27890
28696
  * Typed operation result
27891
28697
  */
27892
28698
  200: {
27893
- data: SaveSellerSuccessSaveSellerSuccessBrandResolved | SaveSellerSuccessSaveSellerSuccessAdmissionRecorded | SaveSellerSuccessSaveSellerSuccessDeclineRecorded | SaveSellerSuccessSaveSellerSuccessSourceDecisionRecorded | SaveSellerSuccessSaveSellerSuccessPreview | SaveSellerSuccessSaveSellerSuccessUpdated | SaveSellerSuccessSaveSellerSuccessUnchanged | SaveSellerSuccessSaveSellerSuccessReadbackUnavailable | SaveSellerSuccessSellerSaveCandidateReplayed | SaveSellerSuccessSellerSaveReplayed;
28699
+ data: SaveSellerSuccessSaveSellerSuccessBrandResolved | SaveSellerSuccessSaveSellerSuccessAdmissionRecorded | SaveSellerSuccessSaveSellerSuccessDeclineRecorded | SaveSellerSuccessSaveSellerSuccessReopenRecorded | SaveSellerSuccessSaveSellerSuccessSourceDecisionRecorded | SaveSellerSuccessSaveSellerSuccessInformationRequested | SaveSellerSuccessSaveSellerSuccessInformationConfirmed | SaveSellerSuccessSaveSellerSuccessInformationWithdrawn | SaveSellerSuccessSaveSellerSuccessReadyToInvoiceAsserted | SaveSellerSuccessSaveSellerSuccessReadyToInvoiceRevoked | SaveSellerSuccessSaveSellerSuccessPreview | SaveSellerSuccessSaveSellerSuccessUpdated | SaveSellerSuccessSaveSellerSuccessUnchanged | SaveSellerSuccessSaveSellerSuccessReadbackUnavailable | SaveSellerSuccessSellerSaveCandidateReplayed | SaveSellerSuccessSellerSaveReplayed;
27894
28700
  error: null;
27895
28701
  };
27896
28702
  /**
@@ -27933,6 +28739,31 @@ export type SaveSellerSuccessSaveSellerSuccessDeclineRecorded = {
27933
28739
  decision: 'decline';
27934
28740
  [key: string]: unknown;
27935
28741
  };
28742
+ export type SaveSellerSuccessSaveSellerSuccessInformationConfirmed = {
28743
+ outcome: 'information_confirmed';
28744
+ action: 'information_confirmed';
28745
+ requestId: string;
28746
+ [key: string]: unknown;
28747
+ };
28748
+ export type SaveSellerSuccessSaveSellerSuccessInformationRequested = {
28749
+ outcome: 'information_requested';
28750
+ action: 'information_requested';
28751
+ intakeId: string;
28752
+ requestId: string | null;
28753
+ setup: {
28754
+ message: string;
28755
+ url?: string;
28756
+ expires_at: string;
28757
+ };
28758
+ launchUrl: string | null;
28759
+ [key: string]: unknown;
28760
+ };
28761
+ export type SaveSellerSuccessSaveSellerSuccessInformationWithdrawn = {
28762
+ outcome: 'information_withdrawn';
28763
+ action: 'information_withdrawn';
28764
+ requestId: string;
28765
+ [key: string]: unknown;
28766
+ };
27936
28767
  export type SaveSellerSuccessSaveSellerSuccessPreview = {
27937
28768
  outcome: 'preview';
27938
28769
  action: 'preview';
@@ -27957,12 +28788,34 @@ export type SaveSellerSuccessSaveSellerSuccessReadbackUnavailable = {
27957
28788
  readback: 'unavailable';
27958
28789
  [key: string]: unknown;
27959
28790
  };
28791
+ export type SaveSellerSuccessSaveSellerSuccessReadyToInvoiceAsserted = {
28792
+ outcome: 'ready_to_invoice_asserted';
28793
+ action: 'ready_to_invoice_asserted';
28794
+ relationshipId: string;
28795
+ assertionId: string | null;
28796
+ billing: 'operator' | 'advertiser';
28797
+ [key: string]: unknown;
28798
+ };
28799
+ export type SaveSellerSuccessSaveSellerSuccessReadyToInvoiceRevoked = {
28800
+ outcome: 'ready_to_invoice_revoked';
28801
+ action: 'ready_to_invoice_revoked';
28802
+ assertionId: string;
28803
+ [key: string]: unknown;
28804
+ };
28805
+ export type SaveSellerSuccessSaveSellerSuccessReopenRecorded = {
28806
+ outcome: 'reopen_recorded';
28807
+ action: 'reopen_recorded';
28808
+ intakeId: string;
28809
+ decision: 'reopen';
28810
+ [key: string]: unknown;
28811
+ };
27960
28812
  export type SaveSellerSuccessSaveSellerSuccessSourceDecisionRecorded = {
27961
28813
  outcome: 'source_decision_recorded';
27962
28814
  action: 'source_decision_recorded';
27963
28815
  relationshipId: string;
27964
28816
  inventorySourceKey: string;
27965
28817
  decision: 'bound' | 'not_required';
28818
+ bindingMode?: 'dedicated' | 'shared_default';
27966
28819
  sourceExternalAccountId: string | null;
27967
28820
  version: number | null;
27968
28821
  [key: string]: unknown;
@@ -28264,7 +29117,7 @@ export type SaveWholesaleProductData = {
28264
29117
  */
28265
29118
  channels?: Array<'display' | 'olv' | 'social' | 'search' | 'ctv' | 'linear_tv' | 'radio' | 'streaming_audio' | 'podcast' | 'dooh' | 'ooh' | 'print' | 'cinema' | 'email' | 'gaming' | 'retail_media' | 'influencer' | 'affiliate' | 'product_placement' | 'sponsored_intelligence'>;
28266
29119
  /**
28267
- * The ad-server selectors to sell, in the source's own shape. Required to create.
29120
+ * Source shape. A create needs `execution.adapter`; copy `execution` from `get` of a product on this source.
28268
29121
  */
28269
29122
  inventory?: {
28270
29123
  [key: string]: unknown;
@@ -28779,7 +29632,7 @@ export type SearchData = {
28779
29632
  */
28780
29633
  include?: Array<'evidence_matches' | 'browse' | 'commitmentRecord' | 'executionReadiness' | 'executionResources'>;
28781
29634
  /**
28782
- * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting. Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
29635
+ * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting and source_account (the accounts one source holds, for a source decision). Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
28783
29636
  */
28784
29637
  sourceId?: string;
28785
29638
  /**
@@ -28899,7 +29752,7 @@ export type SearchData = {
28899
29752
  */
28900
29753
  statuses?: Array<SearchRequestAdcpCreativeStatus>;
28901
29754
  /**
28902
- * Required for kind creative_format: the exact product whose formats to list. With include executionResources: the product to read resource options for.
29755
+ * For kind creative_format: narrow formats to this exact product. With include executionResources: the product to read resource options for.
28903
29756
  */
28904
29757
  productId?: string;
28905
29758
  /**
@@ -29013,7 +29866,7 @@ export type SearchData = {
29013
29866
  /**
29014
29867
  * For kind session: read one source only. Omitted, sessions come from every source you can read. Filters marked (RFP sessions) need the RFP source; a source you cannot read is refused.
29015
29868
  */
29016
- sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1';
29869
+ sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1' | 'live_certification_run_v1';
29017
29870
  /**
29018
29871
  * For kinds rfp, rfp_turn, and session (RFP sessions): exact buyer names recorded on the RFP. A label, not an account id.
29019
29872
  */
@@ -29141,7 +29994,7 @@ export type SearchData = {
29141
29994
  */
29142
29995
  marketplace?: boolean;
29143
29996
  /**
29144
- * For kind seller in a buyer account: sellers that serve this region code.
29997
+ * For kind seller in a buyer account: sellers in this country, a group such as EMEA, or WORLDWIDE.
29145
29998
  */
29146
29999
  region?: string;
29147
30000
  /**
@@ -29167,7 +30020,7 @@ export type SearchData = {
29167
30020
  /**
29168
30021
  * For kind material: one Library document category. uncategorized also matches documents with no category.
29169
30022
  */
29170
- documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'response' | 'specification_sheet' | 'media_kit' | 'uncategorized';
30023
+ documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'specification_sheet' | 'media_kit' | 'uncategorized';
29171
30024
  /**
29172
30025
  * For kind material: documents tagged with any of these industry verticals, case-insensitive.
29173
30026
  */
@@ -29206,11 +30059,11 @@ export type SearchData = {
29206
30059
  */
29207
30060
  cursor?: string;
29208
30061
  /**
29209
- * Results per page, default 50. Some kinds cap it lower: skill returns at most 6, advertiser_grant 25, creative_collection 50, conversation and creative_asset 100.
30062
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
29210
30063
  */
29211
30064
  limit?: number;
29212
30065
  /**
29213
- * Count the kind by one field instead of listing it: you get each value with its count, no rows. Needs kind and takes no cursor. limit caps the values returned (at most 50). ask: askState, askType. inventory_source: status.
30066
+ * Count the kind by one field instead of listing it: each value with its count, no rows. Needs kind and takes no cursor. limit caps values returned (at most 50). ask: askState, askType. creative, event_source: advertiserId, account-wide without filter.advertiserId. inventory_source: status.
29214
30067
  */
29215
30068
  groupBy?: string;
29216
30069
  accountId?: number | string;
@@ -29257,7 +30110,7 @@ export type SearchData = {
29257
30110
  */
29258
30111
  include?: Array<'evidence_matches' | 'browse' | 'commitmentRecord' | 'executionReadiness' | 'executionResources'>;
29259
30112
  /**
29260
- * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting. Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
30113
+ * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting and source_account (the accounts one source holds, for a source decision). Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
29261
30114
  */
29262
30115
  sourceId?: string;
29263
30116
  /**
@@ -29377,7 +30230,7 @@ export type SearchData = {
29377
30230
  */
29378
30231
  statuses?: Array<SearchRequestAdcpCreativeStatus>;
29379
30232
  /**
29380
- * Required for kind creative_format: the exact product whose formats to list. With include executionResources: the product to read resource options for.
30233
+ * For kind creative_format: narrow formats to this exact product. With include executionResources: the product to read resource options for.
29381
30234
  */
29382
30235
  productId?: string;
29383
30236
  /**
@@ -29491,7 +30344,7 @@ export type SearchData = {
29491
30344
  /**
29492
30345
  * For kind session: read one source only. Omitted, sessions come from every source you can read. Filters marked (RFP sessions) need the RFP source; a source you cannot read is refused.
29493
30346
  */
29494
- sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1';
30347
+ sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1' | 'live_certification_run_v1';
29495
30348
  /**
29496
30349
  * For kinds rfp, rfp_turn, and session (RFP sessions): exact buyer names recorded on the RFP. A label, not an account id.
29497
30350
  */
@@ -29619,7 +30472,7 @@ export type SearchData = {
29619
30472
  */
29620
30473
  marketplace?: boolean;
29621
30474
  /**
29622
- * For kind seller in a buyer account: sellers that serve this region code.
30475
+ * For kind seller in a buyer account: sellers in this country, a group such as EMEA, or WORLDWIDE.
29623
30476
  */
29624
30477
  region?: string;
29625
30478
  /**
@@ -29645,7 +30498,7 @@ export type SearchData = {
29645
30498
  /**
29646
30499
  * For kind material: one Library document category. uncategorized also matches documents with no category.
29647
30500
  */
29648
- documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'response' | 'specification_sheet' | 'media_kit' | 'uncategorized';
30501
+ documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'specification_sheet' | 'media_kit' | 'uncategorized';
29649
30502
  /**
29650
30503
  * For kind material: documents tagged with any of these industry verticals, case-insensitive.
29651
30504
  */
@@ -29684,11 +30537,11 @@ export type SearchData = {
29684
30537
  */
29685
30538
  cursor?: string;
29686
30539
  /**
29687
- * Results per page, default 50. Some kinds cap it lower: skill returns at most 6, advertiser_grant 25, creative_collection 50, conversation and creative_asset 100.
30540
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
29688
30541
  */
29689
30542
  limit?: number;
29690
30543
  /**
29691
- * Count the kind by one field instead of listing it: you get each value with its count, no rows. Needs kind and takes no cursor. limit caps the values returned (at most 50). ask: askState, askType. inventory_source: status.
30544
+ * Count the kind by one field instead of listing it: each value with its count, no rows. Needs kind and takes no cursor. limit caps values returned (at most 50). ask: askState, askType. creative, event_source: advertiserId, account-wide without filter.advertiserId. inventory_source: status.
29692
30545
  */
29693
30546
  groupBy?: string;
29694
30547
  accountId?: number | string;
@@ -29735,28 +30588,28 @@ export type SearchData = {
29735
30588
  */
29736
30589
  include?: Array<'evidence_matches' | 'browse' | 'commitmentRecord' | 'executionReadiness' | 'executionResources'>;
29737
30590
  /**
29738
- * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting. Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
30591
+ * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting and source_account (the accounts one source holds, for a source decision). Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
29739
30592
  */
29740
30593
  sourceId?: string;
29741
30594
  /**
29742
30595
  * Narrow the listed kind. Each filter names the kinds it applies to; most filters sent with another kind are refused.
29743
30596
  */
29744
- filter: {
30597
+ filter?: {
29745
30598
  /**
29746
30599
  * The owning advertiser id. Required for event_source, catalog, property_list, creative_asset, creative_format, and buyer wholesale_product. creative, creative_collection, and creative_session take this or campaignId, not both. Over MCP, a buyer search of any of these kinds that sends neither uses the only active advertiser, or names the choices. Buyer media_buy needs this or campaignId. Narrows campaign. For seller, partnerStatus is read for this advertiser, not the account.
29747
30600
  */
29748
- advertiserId: string;
30601
+ advertiserId?: string;
29749
30602
  };
29750
30603
  /**
29751
30604
  * The nextCursor from the previous page of the same search. Not accepted for kinds account and member.
29752
30605
  */
29753
30606
  cursor?: string;
29754
30607
  /**
29755
- * Results per page, default 50. Some kinds cap it lower: skill returns at most 6, advertiser_grant 25, creative_collection 50, conversation and creative_asset 100.
30608
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
29756
30609
  */
29757
30610
  limit?: number;
29758
30611
  /**
29759
- * Count the kind by one field instead of listing it: you get each value with its count, no rows. Needs kind and takes no cursor. limit caps the values returned (at most 50). ask: askState, askType. inventory_source: status.
30612
+ * Count the kind by one field instead of listing it: each value with its count, no rows. Needs kind and takes no cursor. limit caps values returned (at most 50). ask: askState, askType. creative, event_source: advertiserId, account-wide without filter.advertiserId. inventory_source: status.
29760
30613
  */
29761
30614
  groupBy?: string;
29762
30615
  accountId?: number | string;
@@ -29803,7 +30656,7 @@ export type SearchData = {
29803
30656
  */
29804
30657
  include?: Array<'evidence_matches' | 'browse' | 'commitmentRecord' | 'executionReadiness' | 'executionResources'>;
29805
30658
  /**
29806
- * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting. Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
30659
+ * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting and source_account (the accounts one source holds, for a source decision). Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
29807
30660
  */
29808
30661
  sourceId?: string;
29809
30662
  /**
@@ -29923,7 +30776,7 @@ export type SearchData = {
29923
30776
  */
29924
30777
  statuses?: Array<SearchRequestAdcpCreativeStatus>;
29925
30778
  /**
29926
- * Required for kind creative_format: the exact product whose formats to list. With include executionResources: the product to read resource options for.
30779
+ * For kind creative_format: narrow formats to this exact product. With include executionResources: the product to read resource options for.
29927
30780
  */
29928
30781
  productId?: string;
29929
30782
  /**
@@ -30037,7 +30890,7 @@ export type SearchData = {
30037
30890
  /**
30038
30891
  * For kind session: read one source only. Omitted, sessions come from every source you can read. Filters marked (RFP sessions) need the RFP source; a source you cannot read is refused.
30039
30892
  */
30040
- sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1';
30893
+ sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1' | 'live_certification_run_v1';
30041
30894
  /**
30042
30895
  * For kinds rfp, rfp_turn, and session (RFP sessions): exact buyer names recorded on the RFP. A label, not an account id.
30043
30896
  */
@@ -30165,7 +31018,7 @@ export type SearchData = {
30165
31018
  */
30166
31019
  marketplace?: boolean;
30167
31020
  /**
30168
- * For kind seller in a buyer account: sellers that serve this region code.
31021
+ * For kind seller in a buyer account: sellers in this country, a group such as EMEA, or WORLDWIDE.
30169
31022
  */
30170
31023
  region?: string;
30171
31024
  /**
@@ -30191,7 +31044,7 @@ export type SearchData = {
30191
31044
  /**
30192
31045
  * For kind material: one Library document category. uncategorized also matches documents with no category.
30193
31046
  */
30194
- documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'response' | 'specification_sheet' | 'media_kit' | 'uncategorized';
31047
+ documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'specification_sheet' | 'media_kit' | 'uncategorized';
30195
31048
  /**
30196
31049
  * For kind material: documents tagged with any of these industry verticals, case-insensitive.
30197
31050
  */
@@ -30230,11 +31083,11 @@ export type SearchData = {
30230
31083
  */
30231
31084
  cursor?: string;
30232
31085
  /**
30233
- * Results per page, default 50. Some kinds cap it lower: skill returns at most 6, advertiser_grant 25, creative_collection 50, conversation and creative_asset 100.
31086
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
30234
31087
  */
30235
31088
  limit?: number;
30236
31089
  /**
30237
- * Count the kind by one field instead of listing it: you get each value with its count, no rows. Needs kind and takes no cursor. limit caps the values returned (at most 50). ask: askState, askType. inventory_source: status.
31090
+ * Count the kind by one field instead of listing it: each value with its count, no rows. Needs kind and takes no cursor. limit caps values returned (at most 50). ask: askState, askType. creative, event_source: advertiserId, account-wide without filter.advertiserId. inventory_source: status.
30238
31091
  */
30239
31092
  groupBy?: string;
30240
31093
  accountId?: number | string;
@@ -30281,7 +31134,7 @@ export type SearchData = {
30281
31134
  */
30282
31135
  include?: Array<'evidence_matches' | 'browse' | 'commitmentRecord' | 'executionReadiness' | 'executionResources'>;
30283
31136
  /**
30284
- * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting. Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
31137
+ * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting and source_account (the accounts one source holds, for a source decision). Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
30285
31138
  */
30286
31139
  sourceId?: string;
30287
31140
  /**
@@ -30397,7 +31250,7 @@ export type SearchData = {
30397
31250
  */
30398
31251
  statuses?: Array<SearchRequestAdcpCreativeStatus>;
30399
31252
  /**
30400
- * Required for kind creative_format: the exact product whose formats to list. With include executionResources: the product to read resource options for.
31253
+ * For kind creative_format: narrow formats to this exact product. With include executionResources: the product to read resource options for.
30401
31254
  */
30402
31255
  productId?: string;
30403
31256
  /**
@@ -30511,7 +31364,7 @@ export type SearchData = {
30511
31364
  /**
30512
31365
  * For kind session: read one source only. Omitted, sessions come from every source you can read. Filters marked (RFP sessions) need the RFP source; a source you cannot read is refused.
30513
31366
  */
30514
- sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1';
31367
+ sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1' | 'live_certification_run_v1';
30515
31368
  /**
30516
31369
  * For kinds rfp, rfp_turn, and session (RFP sessions): exact buyer names recorded on the RFP. A label, not an account id.
30517
31370
  */
@@ -30639,7 +31492,7 @@ export type SearchData = {
30639
31492
  */
30640
31493
  marketplace?: boolean;
30641
31494
  /**
30642
- * For kind seller in a buyer account: sellers that serve this region code.
31495
+ * For kind seller in a buyer account: sellers in this country, a group such as EMEA, or WORLDWIDE.
30643
31496
  */
30644
31497
  region?: string;
30645
31498
  /**
@@ -30665,7 +31518,7 @@ export type SearchData = {
30665
31518
  /**
30666
31519
  * For kind material: one Library document category. uncategorized also matches documents with no category.
30667
31520
  */
30668
- documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'response' | 'specification_sheet' | 'media_kit' | 'uncategorized';
31521
+ documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'specification_sheet' | 'media_kit' | 'uncategorized';
30669
31522
  /**
30670
31523
  * For kind material: documents tagged with any of these industry verticals, case-insensitive.
30671
31524
  */
@@ -30704,14 +31557,11 @@ export type SearchData = {
30704
31557
  */
30705
31558
  cursor?: string;
30706
31559
  /**
30707
- * Results per page, default 50. Some kinds cap it lower: skill returns at most 6, advertiser_grant 25, creative_collection 50, conversation and creative_asset 100.
31560
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
30708
31561
  */
30709
31562
  limit?: number;
30710
- /**
30711
- * Count the kind by one field instead of listing it: you get each value with its count, no rows. Needs kind and takes no cursor. limit caps the values returned (at most 50). ask: askState, askType. inventory_source: status.
30712
- */
30713
- groupBy?: string;
30714
31563
  accountId?: number | string;
31564
+ groupBy?: never;
30715
31565
  }) | (unknown & {
30716
31566
  /**
30717
31567
  * Text to match, or a question for the docs. Omit it only to list a kind or to read an agreement by document and revision. kind conversation allows up to 200 characters; property_list, rfp, rfp_turn, and creative_session take no query.
@@ -30755,13 +31605,13 @@ export type SearchData = {
30755
31605
  */
30756
31606
  include?: Array<'evidence_matches' | 'browse' | 'commitmentRecord' | 'executionReadiness' | 'executionResources'>;
30757
31607
  /**
30758
- * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting. Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
31608
+ * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting and source_account (the accounts one source holds, for a source decision). Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
30759
31609
  */
30760
31610
  sourceId?: string;
30761
31611
  /**
30762
31612
  * Narrow the listed kind. Each filter names the kinds it applies to; most filters sent with another kind are refused.
30763
31613
  */
30764
- filter: {
31614
+ filter?: {
30765
31615
  /**
30766
31616
  * For kind connection: list connections to sellers (the default) or to creative engines.
30767
31617
  */
@@ -30833,7 +31683,7 @@ export type SearchData = {
30833
31683
  /**
30834
31684
  * The owning advertiser id. Required for event_source, catalog, property_list, creative_asset, creative_format, and buyer wholesale_product. creative, creative_collection, and creative_session take this or campaignId, not both. Over MCP, a buyer search of any of these kinds that sends neither uses the only active advertiser, or names the choices. Buyer media_buy needs this or campaignId. Narrows campaign. For seller, partnerStatus is read for this advertiser, not the account.
30835
31685
  */
30836
- advertiserId: string;
31686
+ advertiserId?: string;
30837
31687
  /**
30838
31688
  * For kind catalog: catalogs of exactly this AdCP catalog type.
30839
31689
  */
@@ -30871,7 +31721,7 @@ export type SearchData = {
30871
31721
  */
30872
31722
  statuses?: Array<SearchRequestAdcpCreativeStatus>;
30873
31723
  /**
30874
- * Required for kind creative_format: the exact product whose formats to list. With include executionResources: the product to read resource options for.
31724
+ * For kind creative_format: narrow formats to this exact product. With include executionResources: the product to read resource options for.
30875
31725
  */
30876
31726
  productId?: string;
30877
31727
  /**
@@ -30985,7 +31835,7 @@ export type SearchData = {
30985
31835
  /**
30986
31836
  * For kind session: read one source only. Omitted, sessions come from every source you can read. Filters marked (RFP sessions) need the RFP source; a source you cannot read is refused.
30987
31837
  */
30988
- sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1';
31838
+ sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1' | 'live_certification_run_v1';
30989
31839
  /**
30990
31840
  * For kinds rfp, rfp_turn, and session (RFP sessions): exact buyer names recorded on the RFP. A label, not an account id.
30991
31841
  */
@@ -31113,7 +31963,7 @@ export type SearchData = {
31113
31963
  */
31114
31964
  marketplace?: boolean;
31115
31965
  /**
31116
- * For kind seller in a buyer account: sellers that serve this region code.
31966
+ * For kind seller in a buyer account: sellers in this country, a group such as EMEA, or WORLDWIDE.
31117
31967
  */
31118
31968
  region?: string;
31119
31969
  /**
@@ -31139,7 +31989,7 @@ export type SearchData = {
31139
31989
  /**
31140
31990
  * For kind material: one Library document category. uncategorized also matches documents with no category.
31141
31991
  */
31142
- documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'response' | 'specification_sheet' | 'media_kit' | 'uncategorized';
31992
+ documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'specification_sheet' | 'media_kit' | 'uncategorized';
31143
31993
  /**
31144
31994
  * For kind material: documents tagged with any of these industry verticals, case-insensitive.
31145
31995
  */
@@ -31178,11 +32028,11 @@ export type SearchData = {
31178
32028
  */
31179
32029
  cursor?: string;
31180
32030
  /**
31181
- * Results per page, default 50. Some kinds cap it lower: skill returns at most 6, advertiser_grant 25, creative_collection 50, conversation and creative_asset 100.
32031
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
31182
32032
  */
31183
32033
  limit?: number;
31184
32034
  /**
31185
- * Count the kind by one field instead of listing it: you get each value with its count, no rows. Needs kind and takes no cursor. limit caps the values returned (at most 50). ask: askState, askType. inventory_source: status.
32035
+ * Count the kind by one field instead of listing it: each value with its count, no rows. Needs kind and takes no cursor. limit caps values returned (at most 50). ask: askState, askType. creative, event_source: advertiserId, account-wide without filter.advertiserId. inventory_source: status.
31186
32036
  */
31187
32037
  groupBy?: string;
31188
32038
  accountId?: number | string;
@@ -31229,7 +32079,7 @@ export type SearchData = {
31229
32079
  */
31230
32080
  include?: Array<'evidence_matches' | 'browse' | 'commitmentRecord' | 'executionReadiness' | 'executionResources'>;
31231
32081
  /**
31232
- * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting. Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
32082
+ * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting and source_account (the accounts one source holds, for a source decision). Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
31233
32083
  */
31234
32084
  sourceId?: string;
31235
32085
  /**
@@ -31345,7 +32195,481 @@ export type SearchData = {
31345
32195
  */
31346
32196
  statuses?: Array<SearchRequestAdcpCreativeStatus>;
31347
32197
  /**
31348
- * Required for kind creative_format: the exact product whose formats to list. With include executionResources: the product to read resource options for.
32198
+ * For kind creative_format: narrow formats to this exact product. With include executionResources: the product to read resource options for.
32199
+ */
32200
+ productId?: string;
32201
+ /**
32202
+ * Required with include executionResources, and only there: which kind of resource the product needs, such as lead_form or application.
32203
+ */
32204
+ resourceKind?: 'application' | 'catalog' | 'conversion_event' | 'destination' | 'event_source' | 'lead_form' | 'native_asset' | 'platform_identity' | 'product_set' | 'welcome_message';
32205
+ /**
32206
+ * Creative: has asset type. creative_asset: IMAGE, VIDEO, or AUDIO.
32207
+ */
32208
+ assetType?: 'IMAGE' | 'VIDEO' | 'AUDIO' | 'HTML' | 'JAVASCRIPT' | 'CSS' | 'TEXT' | 'URL' | 'VAST' | 'ZIP' | 'FONT' | 'LOGO' | 'DOCUMENT';
32209
+ /**
32210
+ * creative_asset: assets carrying every tag.
32211
+ */
32212
+ tags?: Array<string>;
32213
+ /**
32214
+ * creative and creative_asset: items in these advertiser collections.
32215
+ */
32216
+ collectionIds?: Array<string>;
32217
+ /**
32218
+ * creative_asset: active (default) or draft. Drafts expose only name, kind, and remaining review work.
32219
+ */
32220
+ assetState?: 'active' | 'draft';
32221
+ /**
32222
+ * For kind catalog only. Omit for active catalogs; use draft explicitly to list person-reviewed uploads.
32223
+ */
32224
+ catalogState?: 'active' | 'draft';
32225
+ /**
32226
+ * For kinds advertiser, campaign, material, creative, and creative_asset: label filters. Every key must match; within a key, any listed value matches. unlabeled matches items with no value for that key.
32227
+ */
32228
+ labels?: {
32229
+ [key: string]: 'unlabeled' | Array<string>;
32230
+ };
32231
+ /**
32232
+ * For kind dimension: only label dimensions that can tag this kind of object.
32233
+ */
32234
+ appliesTo?: 'advertiser' | 'campaign' | 'material' | 'creative_asset' | 'creative';
32235
+ /**
32236
+ * For kind creative: evergreen or reference, the creative's role in the advertiser's creative library. Not the seller Library.
32237
+ */
32238
+ role?: SearchRequestCreativeRole;
32239
+ /**
32240
+ * For kind creative: durable advertiser Library role. Same stored value as role; use evergreen for delivery-eligible reuse or reference for delivery-ineligible reference material.
32241
+ */
32242
+ libraryRole?: SearchRequestCreativeRole;
32243
+ /**
32244
+ * For kind creative: where the creative came from: uploaded, generated, or connected.
32245
+ */
32246
+ source?: SearchRequestCreativeSource;
32247
+ /**
32248
+ * For kind creative: true keeps creatives on the promoted shelf, false keeps the rest; omit for all.
32249
+ */
32250
+ promoted?: boolean;
32251
+ /**
32252
+ * Lifecycle states to match. proposal: quoted, bound, expired, withdrawn. rfp and rfp_turn: open, released, closed.
32253
+ */
32254
+ state?: Array<'quoted' | 'bound' | 'expired' | 'withdrawn' | 'open' | 'released' | 'closed'>;
32255
+ /**
32256
+ * For kinds proposal and creative_format: only this seller, by its Account id, not a seller object id or sellerId, which are different numbers.
32257
+ */
32258
+ sellerAccountId?: number;
32259
+ /**
32260
+ * Deprecated: send sellerAccountId, from the sellerAccountId field on seller reads. For kinds proposal and creative_format: only this seller, by seller id.
32261
+ *
32262
+ * @deprecated
32263
+ */
32264
+ sellerId?: string;
32265
+ /**
32266
+ * For kinds rfp and rfp_turn: how the RFP arrived, such as quick, uploaded, inbound, manual, or imported.
32267
+ */
32268
+ origin?: Array<'quick' | 'uploaded' | 'inbound' | 'manual' | 'imported'>;
32269
+ /**
32270
+ * For kinds rfp and rfp_turn: a list of RFP purposes to match. For kind session: one value, live, draft, or evaluation (RFP sessions only).
32271
+ */
32272
+ purpose?: Array<'live' | 'draft' | 'evaluation'> | 'live' | 'draft' | 'evaluation';
32273
+ /**
32274
+ * For kind session: active, closed, or archived. archived reads only Murph chat sessions.
32275
+ */
32276
+ lifecycle?: 'active' | 'closed' | 'archived';
32277
+ /**
32278
+ * For kind session (RFP sessions): true for sessions seen live, false for those seen not live. Sessions with unknown liveness match neither.
32279
+ */
32280
+ live?: boolean;
32281
+ /**
32282
+ * For kind session (RFP sessions): approval_needed keeps sessions waiting on an approval.
32283
+ */
32284
+ attention?: 'approval_needed';
32285
+ /**
32286
+ * For kind session (RFP sessions): the exact operator domain recorded on the session.
32287
+ */
32288
+ operatorDomain?: string;
32289
+ /**
32290
+ * For kind session: keep sessions run by a human or by an agent, as recorded by their source.
32291
+ */
32292
+ actorKind?: 'human' | 'agent';
32293
+ /**
32294
+ * For kind session: up to 50 exact advertiser ids. Use ids from search, never names.
32295
+ */
32296
+ advertiserIds?: Array<string>;
32297
+ /**
32298
+ * For kind session: up to 50 exact buyer account ids. Use ids from search, never names.
32299
+ */
32300
+ buyerAccountIds?: Array<string>;
32301
+ /**
32302
+ * For kind session (RFP sessions): the channel the session ran over, such as chat, mcp, or email.
32303
+ */
32304
+ transport?: 'chat' | 'mcp' | 'adcp' | 'email' | 'slack' | 'sms' | 'discord' | 'fax';
32305
+ /**
32306
+ * For kind session: sessions updated strictly after this instant.
32307
+ */
32308
+ updatedAfter?: string;
32309
+ /**
32310
+ * For kind session: read one source only. Omitted, sessions come from every source you can read. Filters marked (RFP sessions) need the RFP source; a source you cannot read is refused.
32311
+ */
32312
+ sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1' | 'live_certification_run_v1';
32313
+ /**
32314
+ * For kinds rfp, rfp_turn, and session (RFP sessions): exact buyer names recorded on the RFP. A label, not an account id.
32315
+ */
32316
+ buyer?: Array<string>;
32317
+ /**
32318
+ * For kinds rfp, rfp_turn, and session (RFP sessions): exact advertiser names recorded on the RFP. A label, not an advertiser id.
32319
+ */
32320
+ advertiser?: Array<string>;
32321
+ /**
32322
+ * For kinds rfp and rfp_turn: RFPs whose recorded category matches any of these exactly.
32323
+ */
32324
+ category?: Array<string>;
32325
+ /**
32326
+ * For kinds rfp, rfp_turn, and material: items whose recorded market matches any of these.
32327
+ */
32328
+ market?: Array<string>;
32329
+ /**
32330
+ * For kinds rfp, rfp_turn, and material: items recorded for any of these channels. For kind seller in a buyer account: sellers that sell any of these channels.
32331
+ */
32332
+ channel?: Array<string>;
32333
+ /**
32334
+ * For kinds rfp and rfp_turn: turns that chose any of these response postures. For rfp, its latest turn is checked.
32335
+ */
32336
+ selectedPosture?: Array<string>;
32337
+ /**
32338
+ * For kinds rfp and rfp_turn: turns composed with any of these playbook versions. For rfp, its latest turn is checked.
32339
+ */
32340
+ playbookVersion?: Array<number>;
32341
+ /**
32342
+ * For kinds rfp and rfp_turn: turns whose response came from any of these cache paths. For rfp, its latest turn is checked.
32343
+ */
32344
+ cacheMode?: Array<'miss_full_compose' | 'hit_hydrated' | 'hit_customized' | 'bypassed'>;
32345
+ /**
32346
+ * For kinds rfp and rfp_turn: items with a recorded outcome result matching any of these.
32347
+ */
32348
+ outcome?: Array<string>;
32349
+ /**
32350
+ * For kind rfp_turn: only turns of this RFP, by the RFP id from search.
32351
+ */
32352
+ rfpId?: string;
32353
+ /**
32354
+ * For kind rfp_turn: turns whose response is in any of these states, from queued and processing to a finished state.
32355
+ */
32356
+ responseState?: Array<'queued' | 'processing' | 'ready' | 'passed' | 'needs_clarification' | 'failed'>;
32357
+ /**
32358
+ * For kind rfp_turn: turns whose evaluation is in any of these states.
32359
+ */
32360
+ evaluationState?: Array<string>;
32361
+ /**
32362
+ * For kind rfp_turn: turns built with any of these response recipe versions.
32363
+ */
32364
+ responseRecipeVersion?: Array<string>;
32365
+ /**
32366
+ * For kind rfp_turn: turns written by any of these composer model versions.
32367
+ */
32368
+ modelVersion?: Array<string>;
32369
+ /**
32370
+ * For kind rfp_turn: turns checked by any of these judge (truth gate) versions.
32371
+ */
32372
+ judgeVersion?: Array<string>;
32373
+ /**
32374
+ * For kind rfp_turn: unreviewed keeps turns with no feedback; reviewed keeps turns with at least one piece.
32375
+ */
32376
+ feedbackStatus?: Array<'unreviewed' | 'reviewed'>;
32377
+ /**
32378
+ * For kind media_buy in a seller account: buys in this state of review, forwarding, and delivery.
32379
+ */
32380
+ sellerStatus?: 'pending_approval' | 'forwarding' | 'forward_failed' | 'awaiting_source' | 'rejected' | 'canceled' | 'booked' | 'delivering' | 'paused' | 'completed';
32381
+ /**
32382
+ * For kind media_buy in a seller account: buys from this buyer Account id.
32383
+ */
32384
+ buyerAccountId?: number;
32385
+ /**
32386
+ * Deprecated: send buyerAccountId instead.
32387
+ *
32388
+ * @deprecated
32389
+ */
32390
+ buyerCustomerId?: number;
32391
+ /**
32392
+ * For kind member: whose members to list. Omit for the selected account; an organization may name one direct child account.
32393
+ */
32394
+ accountId?: number;
32395
+ /**
32396
+ * For kind advertiser: true keeps sandbox advertisers, false keeps live ones; omit for both. In a seller account it needs own-supply campaigns.
32397
+ */
32398
+ sandbox?: boolean;
32399
+ /**
32400
+ * For kind advertiser in a buyer account: advertisers linked through this sales agent, by the agent record's agent_id. Not a seller id.
32401
+ */
32402
+ linkedAccountPartnerId?: string;
32403
+ /**
32404
+ * For kind advertiser_grant: grants in any of these states, from invited and active to expired, rejected, or revoked.
32405
+ */
32406
+ grantStatus?: Array<'invited' | 'active' | 'expired' | 'rejected' | 'revoked'>;
32407
+ /**
32408
+ * For kind media_buy in a seller account: buys whose flight starts at or after this full ISO date-time.
32409
+ */
32410
+ flightStartFrom?: string;
32411
+ /**
32412
+ * For kind media_buy in a seller account: buys whose flight starts at or before this full ISO date-time.
32413
+ */
32414
+ flightStartTo?: string;
32415
+ /**
32416
+ * For kind seller in a buyer account: sellers of this type, a global or regional market maker or an Apostra seller.
32417
+ */
32418
+ sellerType?: 'global_market_maker' | 'regional_market_maker' | 'apostra_seller';
32419
+ /**
32420
+ * Deprecated: use sellerType, which takes the same values. Here marketplace_seller means apostra_seller.
32421
+ */
32422
+ classification?: 'global_market_maker' | 'regional_market_maker' | 'marketplace_seller' | 'apostra_seller';
32423
+ /**
32424
+ * For kind seller in a buyer account: true keeps sellers you can transact with through Apostra, false keeps the rest.
32425
+ */
32426
+ transactable?: boolean;
32427
+ /**
32428
+ * Deprecated: use transactable, which takes the same true or false value.
32429
+ */
32430
+ marketplaceReady?: boolean;
32431
+ /**
32432
+ * For kind seller in a buyer account: sellers whose partnerStatus is any of these, across every seller listed on Apostra. ACTIVE are turned on for you (for filter.advertiserId when given), even while the account is still being set up (controlPlane.activation on get), NEEDS_CONNECTION need your own login on their platform, AVAILABLE are not turned on. Combines with sellerType and transactable. Not with ids.
32433
+ */
32434
+ partnerStatus?: Array<'ACTIVE' | 'NEEDS_CONNECTION' | 'AVAILABLE'>;
32435
+ /**
32436
+ * Deprecated: use partnerStatus. true is partnerStatus with all three values. Not with partnerStatus, sellerType, classification, transactable, marketplaceReady, or ids.
32437
+ */
32438
+ marketplace?: boolean;
32439
+ /**
32440
+ * For kind seller in a buyer account: sellers in this country, a group such as EMEA, or WORLDWIDE.
32441
+ */
32442
+ region?: string;
32443
+ /**
32444
+ * For kind material: documents whose extraction state is any of these. needs_upload has no file yet; queued and processing are waiting or running; partial kept only some content.
32445
+ */
32446
+ processingState?: Array<'needs_upload' | 'queued' | 'processing' | 'ready' | 'partial' | 'failed'>;
32447
+ /**
32448
+ * For kind material: response returns RFP responses and imported past proposals; document returns everything else.
32449
+ */
32450
+ materialKind?: 'document' | 'response';
32451
+ /**
32452
+ * For kind material: documents that came from any of these sources: a web page (url), a site crawl, an upload, a crawl manifest, pasted text (inline), or an imported record (history).
32453
+ */
32454
+ sourceKind?: Array<'url' | 'site' | 'upload' | 'crawl_manifest' | 'inline' | 'history'>;
32455
+ /**
32456
+ * For kind material: documents with any of these visibility settings. New documents default to seller_private.
32457
+ */
32458
+ visibility?: Array<'public' | 'seller_private' | 'advertiser_confidential'>;
32459
+ /**
32460
+ * For kind material: one file extension such as pdf or pptx, matched case-insensitively against the file name, URL path, or content type.
32461
+ */
32462
+ sourceExtension?: string;
32463
+ /**
32464
+ * For kind material: one Library document category. uncategorized also matches documents with no category.
32465
+ */
32466
+ documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'specification_sheet' | 'media_kit' | 'uncategorized';
32467
+ /**
32468
+ * For kind material: documents tagged with any of these industry verticals, case-insensitive.
32469
+ */
32470
+ vertical?: Array<string>;
32471
+ /**
32472
+ * For kind material: documents in effect at this instant. A missing start or end date counts as open-ended.
32473
+ */
32474
+ effectiveOn?: string;
32475
+ /**
32476
+ * For kind material: documents with no expiry date or one at or after this instant.
32477
+ */
32478
+ expiresAfter?: string;
32479
+ /**
32480
+ * For kind material with include ["browse"]: true keeps documents with at least one page or slide, false keeps documents with none.
32481
+ */
32482
+ hasUnits?: boolean;
32483
+ /**
32484
+ * For kind material: live documents whose status is any of these. processing is waiting on its file or on extraction, incomplete is failed or only partly extracted, ready is usable. Not with materialState draft or archived.
32485
+ */
32486
+ documentStatus?: Array<'processing' | 'incomplete' | 'ready'>;
32487
+ /**
32488
+ * For kind material: live (the default), draft, or archived. Drafts return review details and gaps, never content.
32489
+ */
32490
+ materialState?: 'live' | 'draft' | 'archived';
32491
+ /**
32492
+ * For kind conversation: chats started at or after this UTC time.
32493
+ */
32494
+ conversationStartedAfter?: string;
32495
+ /**
32496
+ * For kind conversation: chats started at or before this UTC time.
32497
+ */
32498
+ conversationStartedBefore?: string;
32499
+ };
32500
+ /**
32501
+ * The nextCursor from the previous page of the same search. Not accepted for kinds account and member.
32502
+ */
32503
+ cursor?: string;
32504
+ /**
32505
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
32506
+ */
32507
+ limit?: number;
32508
+ /**
32509
+ * Count the kind by one field instead of listing it: each value with its count, no rows. Needs kind and takes no cursor. limit caps values returned (at most 50). ask: askState, askType. creative, event_source: advertiserId, account-wide without filter.advertiserId. inventory_source: status.
32510
+ */
32511
+ groupBy?: string;
32512
+ accountId?: number | string;
32513
+ }) | (unknown & {
32514
+ /**
32515
+ * Text to match, or a question for the docs. Omit it only to list a kind or to read an agreement by document and revision. kind conversation allows up to 200 characters; property_list, rfp, rfp_turn, and creative_session take no query.
32516
+ */
32517
+ query?: string;
32518
+ /**
32519
+ * The document of an earlier docs hit, to read it in full; send the same query to rank its sections. Docs only: no kind, filter, or objects source.
32520
+ */
32521
+ document?: string;
32522
+ /**
32523
+ * The exact revision of an agreement docs hit, read together with its document. Docs only.
32524
+ */
32525
+ revision?: string;
32526
+ /**
32527
+ * One section of an agreement revision. Needs both document and revision.
32528
+ */
32529
+ section?: string;
32530
+ /**
32531
+ * The time to evaluate docs at; defaults to now. When continuing an agreement read with cursor, send the same asOf again.
32532
+ */
32533
+ asOf?: string;
32534
+ /**
32535
+ * What to search: objects, docs, or specs. When omitted, a call with query searches all three and a call without query lists objects. docs and specs need a query, except an agreement read by document and revision.
32536
+ */
32537
+ sources?: Array<'objects' | 'docs' | 'specs'>;
32538
+ /**
32539
+ * Which docs to rank. caller_relevant (the default) skips docs written for other account types; public_research searches every public doc.
32540
+ */
32541
+ docsScope?: 'caller_relevant' | 'public_research';
32542
+ kind: 'creative_collection';
32543
+ /**
32544
+ * For kind campaign in a seller account, with filter.advertiserId: the self-serve buyer account id issued by the Campaigns Page launch. Never invent one.
32545
+ */
32546
+ sponsoredBuyerCustomerId?: string;
32547
+ /**
32548
+ * For kind material with include ["browse"] only: "unit" browses single pages, slides, and sheets instead of whole documents. Takes no query or filter. Rows go to the app; you get the count.
32549
+ */
32550
+ scope?: 'unit';
32551
+ /**
32552
+ * One extra projection. material: evidence_matches (page-text matches for query; use no filters) or browse (rows go to the app). seller: commitmentRecord. Buyer wholesale_product: executionReadiness, or executionResources with filter.productId and filter.resourceKind.
32553
+ */
32554
+ include?: Array<'evidence_matches' | 'browse' | 'commitmentRecord' | 'executionReadiness' | 'executionResources'>;
32555
+ /**
32556
+ * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting and source_account (the accounts one source holds, for a source decision). Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
32557
+ */
32558
+ sourceId?: string;
32559
+ /**
32560
+ * Narrow the listed kind. Each filter names the kinds it applies to; most filters sent with another kind are refused.
32561
+ */
32562
+ filter: {
32563
+ /**
32564
+ * For kind connection: list connections to sellers (the default) or to creative engines.
32565
+ */
32566
+ targetKind?: 'seller' | 'creative_engine';
32567
+ /**
32568
+ * For kinds seller (buyer account), connection, and creative_engine: up to 50 exact ids. Ids not found come back in missingIds. For kind seller, deprecated: send sellerAccountIds, from the sellerAccountId field on seller reads.
32569
+ */
32570
+ ids?: Array<string>;
32571
+ /**
32572
+ * For kind seller (buyer account): up to 50 exact seller Account ids, not seller object ids or filter.ids, which are different numbers.
32573
+ */
32574
+ sellerAccountIds?: Array<number>;
32575
+ /**
32576
+ * Status vocabulary depends on kind. inventory_source: PENDING, ACTIVE, DISABLED. work_item: pending (default), approved, rejected, revoked; modular_source uses OPEN, IN_PROGRESS, BLOCKED, COMPLETED, CANCELLED. Buyer advertiser: ACTIVE (default), ARCHIVED, ALL. library_request: open, closed. creative_session: drafting, refining, evaluating, finalized. Other kinds refuse it.
32577
+ */
32578
+ status?: 'PENDING' | 'ACTIVE' | 'DISABLED' | 'pending' | 'approved' | 'rejected' | 'revoked' | 'OPEN' | 'IN_PROGRESS' | 'BLOCKED' | 'COMPLETED' | 'CANCELLED' | 'ARCHIVED' | 'ALL' | 'open' | 'closed' | 'drafting' | 'refining' | 'evaluating' | 'finalized';
32579
+ /**
32580
+ * For kind library_request: only gaps opened from this RFP turn, by its id.
32581
+ */
32582
+ originRfpTurnId?: string;
32583
+ /**
32584
+ * For kind coverage: domains with exactly this adagents.json authorization verdict, such as authorized.
32585
+ */
32586
+ authorization?: string;
32587
+ /**
32588
+ * For kind wholesale_product in a seller account: products in this lifecycle status. Read buyerVisibility on each result to know whether buyers can find it.
32589
+ */
32590
+ productStatus?: 'draft' | 'active' | 'archived';
32591
+ /**
32592
+ * For kind ask: requests routed as this type, such as support or supply.
32593
+ */
32594
+ askType?: 'support' | 'product' | 'supply' | 'integration' | 'commercial';
32595
+ /**
32596
+ * For kind ask: open requests, or closed ones (closed includes requests the requester withdrew).
32597
+ */
32598
+ askState?: 'open' | 'closed';
32599
+ /**
32600
+ * For kind ad_server_targeting: which of the source's targeting taxonomies to browse, as named by the source.
32601
+ */
32602
+ candidateType?: string;
32603
+ /**
32604
+ * For kind ad_server_targeting: list the children of this candidate, for example the values under one key.
32605
+ */
32606
+ parentId?: string;
32607
+ /**
32608
+ * For kind work_item: one queue. creative_review and media_buy_approval are approval decisions; modular_source is follow-up work on a source and accepts the top-level sourceId.
32609
+ */
32610
+ workItemKind?: 'creative_review' | 'media_buy_approval' | 'modular_source';
32611
+ /**
32612
+ * For kind work_item: only pending approvals in this queue: overdue (past their deadline) or unowned (nobody assigned). Follow-up tasks have no queues.
32613
+ */
32614
+ queue?: 'overdue' | 'unowned';
32615
+ /**
32616
+ * For kind house_discount: preview which discount rule applies to this buyer domain, resolved up its corporate parents.
32617
+ */
32618
+ buyerDomain?: string;
32619
+ /**
32620
+ * For kind campaign: campaigns in any of these statuses. archived returns archived campaigns; every other value returns campaigns that are not archived.
32621
+ */
32622
+ campaignStatus?: Array<'needs_attention' | 'active' | 'draft' | 'completed' | 'paused' | 'canceled' | 'archived'>;
32623
+ /**
32624
+ * For kind campaign: managed campaigns are built on this platform; tracked campaigns mirror a provider account.
32625
+ */
32626
+ campaignMode?: 'managed' | 'tracked';
32627
+ /**
32628
+ * For kind campaign: campaigns whose name contains this text, ignoring case. Used instead of query.
32629
+ */
32630
+ campaignName?: string;
32631
+ /**
32632
+ * The owning advertiser id. Required for event_source, catalog, property_list, creative_asset, creative_format, and buyer wholesale_product. creative, creative_collection, and creative_session take this or campaignId, not both. Over MCP, a buyer search of any of these kinds that sends neither uses the only active advertiser, or names the choices. Buyer media_buy needs this or campaignId. Narrows campaign. For seller, partnerStatus is read for this advertiser, not the account.
32633
+ */
32634
+ advertiserId: string;
32635
+ /**
32636
+ * For kind catalog: catalogs of exactly this AdCP catalog type.
32637
+ */
32638
+ type?: 'offering' | 'product' | 'inventory' | 'store' | 'promotion' | 'hotel' | 'flight' | 'job' | 'vehicle' | 'real_estate' | 'education' | 'destination' | 'app';
32639
+ /**
32640
+ * For kind property_list: only include lists or only exclude lists.
32641
+ */
32642
+ propertyListPurpose?: 'include' | 'exclude';
32643
+ /**
32644
+ * For kinds campaign and media_buy (buyer): items in any of these phases. active includes paused and cancel-pending buys. Campaigns use only draft, active, completed, and canceled. ending appears on results but is not a filter value.
32645
+ */
32646
+ phase?: Array<'draft' | 'active' | 'completed' | 'canceled' | 'pendingApproval' | 'inputRequired' | 'failed' | 'rejected'>;
32647
+ /**
32648
+ * For kind campaign: tracking keeps campaigns that mirror a provider account; managing keeps campaigns built on this platform. Both or neither means no filter.
32649
+ */
32650
+ handling?: Array<'tracking' | 'managing'>;
32651
+ /**
32652
+ * For kinds campaign and media_buy (buyer): true keeps paused items, false keeps items that are not paused. For campaign it applies only with phase active.
32653
+ */
32654
+ isPaused?: boolean;
32655
+ /**
32656
+ * Campaign, creative, buyer media_buy: true archived; false active.
32657
+ */
32658
+ isArchived?: boolean;
32659
+ /**
32660
+ * Not applied yet: results come back in stored order whatever you send.
32661
+ */
32662
+ sort?: 'updatedDesc' | 'flightStart' | 'name' | 'spendDesc';
32663
+ /**
32664
+ * Exact format identifier for creative results.
32665
+ */
32666
+ formatKind?: string;
32667
+ /**
32668
+ * Lifecycle statuses used to select creative results.
32669
+ */
32670
+ statuses?: Array<SearchRequestAdcpCreativeStatus>;
32671
+ /**
32672
+ * For kind creative_format: narrow formats to this exact product. With include executionResources: the product to read resource options for.
31349
32673
  */
31350
32674
  productId?: string;
31351
32675
  /**
@@ -31459,7 +32783,7 @@ export type SearchData = {
31459
32783
  /**
31460
32784
  * For kind session: read one source only. Omitted, sessions come from every source you can read. Filters marked (RFP sessions) need the RFP source; a source you cannot read is refused.
31461
32785
  */
31462
- sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1';
32786
+ sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1' | 'live_certification_run_v1';
31463
32787
  /**
31464
32788
  * For kinds rfp, rfp_turn, and session (RFP sessions): exact buyer names recorded on the RFP. A label, not an account id.
31465
32789
  */
@@ -31587,7 +32911,7 @@ export type SearchData = {
31587
32911
  */
31588
32912
  marketplace?: boolean;
31589
32913
  /**
31590
- * For kind seller in a buyer account: sellers that serve this region code.
32914
+ * For kind seller in a buyer account: sellers in this country, a group such as EMEA, or WORLDWIDE.
31591
32915
  */
31592
32916
  region?: string;
31593
32917
  /**
@@ -31613,7 +32937,7 @@ export type SearchData = {
31613
32937
  /**
31614
32938
  * For kind material: one Library document category. uncategorized also matches documents with no category.
31615
32939
  */
31616
- documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'response' | 'specification_sheet' | 'media_kit' | 'uncategorized';
32940
+ documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'specification_sheet' | 'media_kit' | 'uncategorized';
31617
32941
  /**
31618
32942
  * For kind material: documents tagged with any of these industry verticals, case-insensitive.
31619
32943
  */
@@ -31652,14 +32976,140 @@ export type SearchData = {
31652
32976
  */
31653
32977
  cursor?: string;
31654
32978
  /**
31655
- * Results per page, default 50. Some kinds cap it lower: skill returns at most 6, advertiser_grant 25, creative_collection 50, conversation and creative_asset 100.
32979
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
31656
32980
  */
31657
32981
  limit?: number;
31658
32982
  /**
31659
- * Count the kind by one field instead of listing it: you get each value with its count, no rows. Needs kind and takes no cursor. limit caps the values returned (at most 50). ask: askState, askType. inventory_source: status.
32983
+ * Count the kind by one field instead of listing it: each value with its count, no rows. Needs kind and takes no cursor. limit caps values returned (at most 50). ask: askState, askType. creative, event_source: advertiserId, account-wide without filter.advertiserId. inventory_source: status.
31660
32984
  */
31661
32985
  groupBy?: string;
31662
32986
  accountId?: number | string;
32987
+ }) | (unknown & {
32988
+ /**
32989
+ * The document of an earlier docs hit, to read it in full; send the same query to rank its sections. Docs only: no kind, filter, or objects source.
32990
+ */
32991
+ document?: string;
32992
+ /**
32993
+ * The exact revision of an agreement docs hit, read together with its document. Docs only.
32994
+ */
32995
+ revision?: string;
32996
+ /**
32997
+ * One section of an agreement revision. Needs both document and revision.
32998
+ */
32999
+ section?: string;
33000
+ /**
33001
+ * The time to evaluate docs at; defaults to now. When continuing an agreement read with cursor, send the same asOf again.
33002
+ */
33003
+ asOf?: string;
33004
+ /**
33005
+ * What to search: objects, docs, or specs. When omitted, a call with query searches all three and a call without query lists objects. docs and specs need a query, except an agreement read by document and revision.
33006
+ */
33007
+ sources?: Array<'objects' | 'docs' | 'specs'>;
33008
+ /**
33009
+ * Which docs to rank. caller_relevant (the default) skips docs written for other account types; public_research searches every public doc.
33010
+ */
33011
+ docsScope?: 'caller_relevant' | 'public_research';
33012
+ kind: 'creative_session';
33013
+ /**
33014
+ * For kind campaign in a seller account, with filter.advertiserId: the self-serve buyer account id issued by the Campaigns Page launch. Never invent one.
33015
+ */
33016
+ sponsoredBuyerCustomerId?: string;
33017
+ /**
33018
+ * For kind material with include ["browse"] only: "unit" browses single pages, slides, and sheets instead of whole documents. Takes no query or filter. Rows go to the app; you get the count.
33019
+ */
33020
+ scope?: 'unit';
33021
+ /**
33022
+ * Narrow the listed kind. Each filter names the kinds it applies to; most filters sent with another kind are refused.
33023
+ */
33024
+ filter: {
33025
+ /**
33026
+ * Campaign id. Proposal needs it. creative, creative_collection, and creative_session take this or advertiserId, not both. Buyer media_buy needs one.
33027
+ */
33028
+ campaignId: string;
33029
+ /**
33030
+ * Status vocabulary depends on kind. inventory_source: PENDING, ACTIVE, DISABLED. work_item: pending (default), approved, rejected, revoked; modular_source uses OPEN, IN_PROGRESS, BLOCKED, COMPLETED, CANCELLED. Buyer advertiser: ACTIVE (default), ARCHIVED, ALL. library_request: open, closed. creative_session: drafting, refining, evaluating, finalized. Other kinds refuse it.
33031
+ */
33032
+ status?: 'PENDING' | 'ACTIVE' | 'DISABLED' | 'pending' | 'approved' | 'rejected' | 'revoked' | 'OPEN' | 'IN_PROGRESS' | 'BLOCKED' | 'COMPLETED' | 'CANCELLED' | 'ARCHIVED' | 'ALL' | 'open' | 'closed' | 'drafting' | 'refining' | 'evaluating' | 'finalized';
33033
+ };
33034
+ /**
33035
+ * The nextCursor from the previous page of the same search. Not accepted for kinds account and member.
33036
+ */
33037
+ cursor?: string;
33038
+ /**
33039
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
33040
+ */
33041
+ limit?: number;
33042
+ /**
33043
+ * Count the kind by one field instead of listing it: each value with its count, no rows. Needs kind and takes no cursor. limit caps values returned (at most 50). ask: askState, askType. creative, event_source: advertiserId, account-wide without filter.advertiserId. inventory_source: status.
33044
+ */
33045
+ groupBy?: string;
33046
+ accountId?: number | string;
33047
+ query?: never;
33048
+ include?: never;
33049
+ sourceId?: never;
33050
+ }) | (unknown & {
33051
+ /**
33052
+ * The document of an earlier docs hit, to read it in full; send the same query to rank its sections. Docs only: no kind, filter, or objects source.
33053
+ */
33054
+ document?: string;
33055
+ /**
33056
+ * The exact revision of an agreement docs hit, read together with its document. Docs only.
33057
+ */
33058
+ revision?: string;
33059
+ /**
33060
+ * One section of an agreement revision. Needs both document and revision.
33061
+ */
33062
+ section?: string;
33063
+ /**
33064
+ * The time to evaluate docs at; defaults to now. When continuing an agreement read with cursor, send the same asOf again.
33065
+ */
33066
+ asOf?: string;
33067
+ /**
33068
+ * What to search: objects, docs, or specs. When omitted, a call with query searches all three and a call without query lists objects. docs and specs need a query, except an agreement read by document and revision.
33069
+ */
33070
+ sources?: Array<'objects' | 'docs' | 'specs'>;
33071
+ /**
33072
+ * Which docs to rank. caller_relevant (the default) skips docs written for other account types; public_research searches every public doc.
33073
+ */
33074
+ docsScope?: 'caller_relevant' | 'public_research';
33075
+ kind: 'creative_session';
33076
+ /**
33077
+ * For kind campaign in a seller account, with filter.advertiserId: the self-serve buyer account id issued by the Campaigns Page launch. Never invent one.
33078
+ */
33079
+ sponsoredBuyerCustomerId?: string;
33080
+ /**
33081
+ * For kind material with include ["browse"] only: "unit" browses single pages, slides, and sheets instead of whole documents. Takes no query or filter. Rows go to the app; you get the count.
33082
+ */
33083
+ scope?: 'unit';
33084
+ /**
33085
+ * Narrow the listed kind. Each filter names the kinds it applies to; most filters sent with another kind are refused.
33086
+ */
33087
+ filter: {
33088
+ /**
33089
+ * The owning advertiser id. Required for event_source, catalog, property_list, creative_asset, creative_format, and buyer wholesale_product. creative, creative_collection, and creative_session take this or campaignId, not both. Over MCP, a buyer search of any of these kinds that sends neither uses the only active advertiser, or names the choices. Buyer media_buy needs this or campaignId. Narrows campaign. For seller, partnerStatus is read for this advertiser, not the account.
33090
+ */
33091
+ advertiserId: string;
33092
+ /**
33093
+ * Status vocabulary depends on kind. inventory_source: PENDING, ACTIVE, DISABLED. work_item: pending (default), approved, rejected, revoked; modular_source uses OPEN, IN_PROGRESS, BLOCKED, COMPLETED, CANCELLED. Buyer advertiser: ACTIVE (default), ARCHIVED, ALL. library_request: open, closed. creative_session: drafting, refining, evaluating, finalized. Other kinds refuse it.
33094
+ */
33095
+ status?: 'PENDING' | 'ACTIVE' | 'DISABLED' | 'pending' | 'approved' | 'rejected' | 'revoked' | 'OPEN' | 'IN_PROGRESS' | 'BLOCKED' | 'COMPLETED' | 'CANCELLED' | 'ARCHIVED' | 'ALL' | 'open' | 'closed' | 'drafting' | 'refining' | 'evaluating' | 'finalized';
33096
+ };
33097
+ /**
33098
+ * The nextCursor from the previous page of the same search. Not accepted for kinds account and member.
33099
+ */
33100
+ cursor?: string;
33101
+ /**
33102
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
33103
+ */
33104
+ limit?: number;
33105
+ /**
33106
+ * Count the kind by one field instead of listing it: each value with its count, no rows. Needs kind and takes no cursor. limit caps values returned (at most 50). ask: askState, askType. creative, event_source: advertiserId, account-wide without filter.advertiserId. inventory_source: status.
33107
+ */
33108
+ groupBy?: string;
33109
+ accountId?: number | string;
33110
+ query?: never;
33111
+ include?: never;
33112
+ sourceId?: never;
31663
33113
  }) | (unknown & {
31664
33114
  /**
31665
33115
  * Text to match, or a question for the docs. Omit it only to list a kind or to read an agreement by document and revision. kind conversation allows up to 200 characters; property_list, rfp, rfp_turn, and creative_session take no query.
@@ -31689,7 +33139,7 @@ export type SearchData = {
31689
33139
  * Which docs to rank. caller_relevant (the default) skips docs written for other account types; public_research searches every public doc.
31690
33140
  */
31691
33141
  docsScope?: 'caller_relevant' | 'public_research';
31692
- kind: 'creative_collection';
33142
+ kind: 'ad_server_targeting';
31693
33143
  /**
31694
33144
  * For kind campaign in a seller account, with filter.advertiserId: the self-serve buyer account id issued by the Campaigns Page launch. Never invent one.
31695
33145
  */
@@ -31703,13 +33153,13 @@ export type SearchData = {
31703
33153
  */
31704
33154
  include?: Array<'evidence_matches' | 'browse' | 'commitmentRecord' | 'executionReadiness' | 'executionResources'>;
31705
33155
  /**
31706
- * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting. Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
33156
+ * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting and source_account (the accounts one source holds, for a source decision). Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
31707
33157
  */
31708
- sourceId?: string;
33158
+ sourceId: string;
31709
33159
  /**
31710
33160
  * Narrow the listed kind. Each filter names the kinds it applies to; most filters sent with another kind are refused.
31711
33161
  */
31712
- filter: {
33162
+ filter?: {
31713
33163
  /**
31714
33164
  * For kind connection: list connections to sellers (the default) or to creative engines.
31715
33165
  */
@@ -31781,7 +33231,7 @@ export type SearchData = {
31781
33231
  /**
31782
33232
  * The owning advertiser id. Required for event_source, catalog, property_list, creative_asset, creative_format, and buyer wholesale_product. creative, creative_collection, and creative_session take this or campaignId, not both. Over MCP, a buyer search of any of these kinds that sends neither uses the only active advertiser, or names the choices. Buyer media_buy needs this or campaignId. Narrows campaign. For seller, partnerStatus is read for this advertiser, not the account.
31783
33233
  */
31784
- advertiserId: string;
33234
+ advertiserId?: string;
31785
33235
  /**
31786
33236
  * For kind catalog: catalogs of exactly this AdCP catalog type.
31787
33237
  */
@@ -31810,6 +33260,10 @@ export type SearchData = {
31810
33260
  * Not applied yet: results come back in stored order whatever you send.
31811
33261
  */
31812
33262
  sort?: 'updatedDesc' | 'flightStart' | 'name' | 'spendDesc';
33263
+ /**
33264
+ * Campaign id. Proposal needs it. creative, creative_collection, and creative_session take this or advertiserId, not both. Buyer media_buy needs one.
33265
+ */
33266
+ campaignId?: string;
31813
33267
  /**
31814
33268
  * Exact format identifier for creative results.
31815
33269
  */
@@ -31819,7 +33273,7 @@ export type SearchData = {
31819
33273
  */
31820
33274
  statuses?: Array<SearchRequestAdcpCreativeStatus>;
31821
33275
  /**
31822
- * Required for kind creative_format: the exact product whose formats to list. With include executionResources: the product to read resource options for.
33276
+ * For kind creative_format: narrow formats to this exact product. With include executionResources: the product to read resource options for.
31823
33277
  */
31824
33278
  productId?: string;
31825
33279
  /**
@@ -31933,7 +33387,7 @@ export type SearchData = {
31933
33387
  /**
31934
33388
  * For kind session: read one source only. Omitted, sessions come from every source you can read. Filters marked (RFP sessions) need the RFP source; a source you cannot read is refused.
31935
33389
  */
31936
- sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1';
33390
+ sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1' | 'live_certification_run_v1';
31937
33391
  /**
31938
33392
  * For kinds rfp, rfp_turn, and session (RFP sessions): exact buyer names recorded on the RFP. A label, not an account id.
31939
33393
  */
@@ -32061,7 +33515,7 @@ export type SearchData = {
32061
33515
  */
32062
33516
  marketplace?: boolean;
32063
33517
  /**
32064
- * For kind seller in a buyer account: sellers that serve this region code.
33518
+ * For kind seller in a buyer account: sellers in this country, a group such as EMEA, or WORLDWIDE.
32065
33519
  */
32066
33520
  region?: string;
32067
33521
  /**
@@ -32087,7 +33541,7 @@ export type SearchData = {
32087
33541
  /**
32088
33542
  * For kind material: one Library document category. uncategorized also matches documents with no category.
32089
33543
  */
32090
- documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'response' | 'specification_sheet' | 'media_kit' | 'uncategorized';
33544
+ documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'specification_sheet' | 'media_kit' | 'uncategorized';
32091
33545
  /**
32092
33546
  * For kind material: documents tagged with any of these industry verticals, case-insensitive.
32093
33547
  */
@@ -32126,140 +33580,14 @@ export type SearchData = {
32126
33580
  */
32127
33581
  cursor?: string;
32128
33582
  /**
32129
- * Results per page, default 50. Some kinds cap it lower: skill returns at most 6, advertiser_grant 25, creative_collection 50, conversation and creative_asset 100.
32130
- */
32131
- limit?: number;
32132
- /**
32133
- * Count the kind by one field instead of listing it: you get each value with its count, no rows. Needs kind and takes no cursor. limit caps the values returned (at most 50). ask: askState, askType. inventory_source: status.
32134
- */
32135
- groupBy?: string;
32136
- accountId?: number | string;
32137
- }) | (unknown & {
32138
- /**
32139
- * The document of an earlier docs hit, to read it in full; send the same query to rank its sections. Docs only: no kind, filter, or objects source.
32140
- */
32141
- document?: string;
32142
- /**
32143
- * The exact revision of an agreement docs hit, read together with its document. Docs only.
32144
- */
32145
- revision?: string;
32146
- /**
32147
- * One section of an agreement revision. Needs both document and revision.
32148
- */
32149
- section?: string;
32150
- /**
32151
- * The time to evaluate docs at; defaults to now. When continuing an agreement read with cursor, send the same asOf again.
32152
- */
32153
- asOf?: string;
32154
- /**
32155
- * What to search: objects, docs, or specs. When omitted, a call with query searches all three and a call without query lists objects. docs and specs need a query, except an agreement read by document and revision.
32156
- */
32157
- sources?: Array<'objects' | 'docs' | 'specs'>;
32158
- /**
32159
- * Which docs to rank. caller_relevant (the default) skips docs written for other account types; public_research searches every public doc.
32160
- */
32161
- docsScope?: 'caller_relevant' | 'public_research';
32162
- kind: 'creative_session';
32163
- /**
32164
- * For kind campaign in a seller account, with filter.advertiserId: the self-serve buyer account id issued by the Campaigns Page launch. Never invent one.
32165
- */
32166
- sponsoredBuyerCustomerId?: string;
32167
- /**
32168
- * For kind material with include ["browse"] only: "unit" browses single pages, slides, and sheets instead of whole documents. Takes no query or filter. Rows go to the app; you get the count.
32169
- */
32170
- scope?: 'unit';
32171
- /**
32172
- * Narrow the listed kind. Each filter names the kinds it applies to; most filters sent with another kind are refused.
32173
- */
32174
- filter: {
32175
- /**
32176
- * Campaign id. Proposal needs it. creative, creative_collection, and creative_session take this or advertiserId, not both. Buyer media_buy needs one.
32177
- */
32178
- campaignId: string;
32179
- /**
32180
- * Status vocabulary depends on kind. inventory_source: PENDING, ACTIVE, DISABLED. work_item: pending (default), approved, rejected, revoked; modular_source uses OPEN, IN_PROGRESS, BLOCKED, COMPLETED, CANCELLED. Buyer advertiser: ACTIVE (default), ARCHIVED, ALL. library_request: open, closed. creative_session: drafting, refining, evaluating, finalized. Other kinds refuse it.
32181
- */
32182
- status?: 'PENDING' | 'ACTIVE' | 'DISABLED' | 'pending' | 'approved' | 'rejected' | 'revoked' | 'OPEN' | 'IN_PROGRESS' | 'BLOCKED' | 'COMPLETED' | 'CANCELLED' | 'ARCHIVED' | 'ALL' | 'open' | 'closed' | 'drafting' | 'refining' | 'evaluating' | 'finalized';
32183
- };
32184
- /**
32185
- * The nextCursor from the previous page of the same search. Not accepted for kinds account and member.
32186
- */
32187
- cursor?: string;
32188
- /**
32189
- * Results per page, default 50. Some kinds cap it lower: skill returns at most 6, advertiser_grant 25, creative_collection 50, conversation and creative_asset 100.
33583
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
32190
33584
  */
32191
33585
  limit?: number;
32192
33586
  /**
32193
- * Count the kind by one field instead of listing it: you get each value with its count, no rows. Needs kind and takes no cursor. limit caps the values returned (at most 50). ask: askState, askType. inventory_source: status.
33587
+ * Count the kind by one field instead of listing it: each value with its count, no rows. Needs kind and takes no cursor. limit caps values returned (at most 50). ask: askState, askType. creative, event_source: advertiserId, account-wide without filter.advertiserId. inventory_source: status.
32194
33588
  */
32195
33589
  groupBy?: string;
32196
33590
  accountId?: number | string;
32197
- query?: never;
32198
- include?: never;
32199
- sourceId?: never;
32200
- }) | (unknown & {
32201
- /**
32202
- * The document of an earlier docs hit, to read it in full; send the same query to rank its sections. Docs only: no kind, filter, or objects source.
32203
- */
32204
- document?: string;
32205
- /**
32206
- * The exact revision of an agreement docs hit, read together with its document. Docs only.
32207
- */
32208
- revision?: string;
32209
- /**
32210
- * One section of an agreement revision. Needs both document and revision.
32211
- */
32212
- section?: string;
32213
- /**
32214
- * The time to evaluate docs at; defaults to now. When continuing an agreement read with cursor, send the same asOf again.
32215
- */
32216
- asOf?: string;
32217
- /**
32218
- * What to search: objects, docs, or specs. When omitted, a call with query searches all three and a call without query lists objects. docs and specs need a query, except an agreement read by document and revision.
32219
- */
32220
- sources?: Array<'objects' | 'docs' | 'specs'>;
32221
- /**
32222
- * Which docs to rank. caller_relevant (the default) skips docs written for other account types; public_research searches every public doc.
32223
- */
32224
- docsScope?: 'caller_relevant' | 'public_research';
32225
- kind: 'creative_session';
32226
- /**
32227
- * For kind campaign in a seller account, with filter.advertiserId: the self-serve buyer account id issued by the Campaigns Page launch. Never invent one.
32228
- */
32229
- sponsoredBuyerCustomerId?: string;
32230
- /**
32231
- * For kind material with include ["browse"] only: "unit" browses single pages, slides, and sheets instead of whole documents. Takes no query or filter. Rows go to the app; you get the count.
32232
- */
32233
- scope?: 'unit';
32234
- /**
32235
- * Narrow the listed kind. Each filter names the kinds it applies to; most filters sent with another kind are refused.
32236
- */
32237
- filter: {
32238
- /**
32239
- * The owning advertiser id. Required for event_source, catalog, property_list, creative_asset, creative_format, and buyer wholesale_product. creative, creative_collection, and creative_session take this or campaignId, not both. Over MCP, a buyer search of any of these kinds that sends neither uses the only active advertiser, or names the choices. Buyer media_buy needs this or campaignId. Narrows campaign. For seller, partnerStatus is read for this advertiser, not the account.
32240
- */
32241
- advertiserId: string;
32242
- /**
32243
- * Status vocabulary depends on kind. inventory_source: PENDING, ACTIVE, DISABLED. work_item: pending (default), approved, rejected, revoked; modular_source uses OPEN, IN_PROGRESS, BLOCKED, COMPLETED, CANCELLED. Buyer advertiser: ACTIVE (default), ARCHIVED, ALL. library_request: open, closed. creative_session: drafting, refining, evaluating, finalized. Other kinds refuse it.
32244
- */
32245
- status?: 'PENDING' | 'ACTIVE' | 'DISABLED' | 'pending' | 'approved' | 'rejected' | 'revoked' | 'OPEN' | 'IN_PROGRESS' | 'BLOCKED' | 'COMPLETED' | 'CANCELLED' | 'ARCHIVED' | 'ALL' | 'open' | 'closed' | 'drafting' | 'refining' | 'evaluating' | 'finalized';
32246
- };
32247
- /**
32248
- * The nextCursor from the previous page of the same search. Not accepted for kinds account and member.
32249
- */
32250
- cursor?: string;
32251
- /**
32252
- * Results per page, default 50. Some kinds cap it lower: skill returns at most 6, advertiser_grant 25, creative_collection 50, conversation and creative_asset 100.
32253
- */
32254
- limit?: number;
32255
- /**
32256
- * Count the kind by one field instead of listing it: you get each value with its count, no rows. Needs kind and takes no cursor. limit caps the values returned (at most 50). ask: askState, askType. inventory_source: status.
32257
- */
32258
- groupBy?: string;
32259
- accountId?: number | string;
32260
- query?: never;
32261
- include?: never;
32262
- sourceId?: never;
32263
33591
  }) | (unknown & {
32264
33592
  /**
32265
33593
  * Text to match, or a question for the docs. Omit it only to list a kind or to read an agreement by document and revision. kind conversation allows up to 200 characters; property_list, rfp, rfp_turn, and creative_session take no query.
@@ -32289,7 +33617,7 @@ export type SearchData = {
32289
33617
  * Which docs to rank. caller_relevant (the default) skips docs written for other account types; public_research searches every public doc.
32290
33618
  */
32291
33619
  docsScope?: 'caller_relevant' | 'public_research';
32292
- kind: 'ad_server_targeting';
33620
+ kind: 'source_account';
32293
33621
  /**
32294
33622
  * For kind campaign in a seller account, with filter.advertiserId: the self-serve buyer account id issued by the Campaigns Page launch. Never invent one.
32295
33623
  */
@@ -32303,7 +33631,7 @@ export type SearchData = {
32303
33631
  */
32304
33632
  include?: Array<'evidence_matches' | 'browse' | 'commitmentRecord' | 'executionReadiness' | 'executionResources'>;
32305
33633
  /**
32306
- * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting. Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
33634
+ * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting and source_account (the accounts one source holds, for a source decision). Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
32307
33635
  */
32308
33636
  sourceId: string;
32309
33637
  /**
@@ -32423,7 +33751,7 @@ export type SearchData = {
32423
33751
  */
32424
33752
  statuses?: Array<SearchRequestAdcpCreativeStatus>;
32425
33753
  /**
32426
- * Required for kind creative_format: the exact product whose formats to list. With include executionResources: the product to read resource options for.
33754
+ * For kind creative_format: narrow formats to this exact product. With include executionResources: the product to read resource options for.
32427
33755
  */
32428
33756
  productId?: string;
32429
33757
  /**
@@ -32537,7 +33865,7 @@ export type SearchData = {
32537
33865
  /**
32538
33866
  * For kind session: read one source only. Omitted, sessions come from every source you can read. Filters marked (RFP sessions) need the RFP source; a source you cannot read is refused.
32539
33867
  */
32540
- sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1';
33868
+ sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1' | 'live_certification_run_v1';
32541
33869
  /**
32542
33870
  * For kinds rfp, rfp_turn, and session (RFP sessions): exact buyer names recorded on the RFP. A label, not an account id.
32543
33871
  */
@@ -32665,7 +33993,7 @@ export type SearchData = {
32665
33993
  */
32666
33994
  marketplace?: boolean;
32667
33995
  /**
32668
- * For kind seller in a buyer account: sellers that serve this region code.
33996
+ * For kind seller in a buyer account: sellers in this country, a group such as EMEA, or WORLDWIDE.
32669
33997
  */
32670
33998
  region?: string;
32671
33999
  /**
@@ -32691,7 +34019,7 @@ export type SearchData = {
32691
34019
  /**
32692
34020
  * For kind material: one Library document category. uncategorized also matches documents with no category.
32693
34021
  */
32694
- documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'response' | 'specification_sheet' | 'media_kit' | 'uncategorized';
34022
+ documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'specification_sheet' | 'media_kit' | 'uncategorized';
32695
34023
  /**
32696
34024
  * For kind material: documents tagged with any of these industry verticals, case-insensitive.
32697
34025
  */
@@ -32730,11 +34058,11 @@ export type SearchData = {
32730
34058
  */
32731
34059
  cursor?: string;
32732
34060
  /**
32733
- * Results per page, default 50. Some kinds cap it lower: skill returns at most 6, advertiser_grant 25, creative_collection 50, conversation and creative_asset 100.
34061
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
32734
34062
  */
32735
34063
  limit?: number;
32736
34064
  /**
32737
- * Count the kind by one field instead of listing it: you get each value with its count, no rows. Needs kind and takes no cursor. limit caps the values returned (at most 50). ask: askState, askType. inventory_source: status.
34065
+ * Count the kind by one field instead of listing it: each value with its count, no rows. Needs kind and takes no cursor. limit caps values returned (at most 50). ask: askState, askType. creative, event_source: advertiserId, account-wide without filter.advertiserId. inventory_source: status.
32738
34066
  */
32739
34067
  groupBy?: string;
32740
34068
  accountId?: number | string;
@@ -32780,7 +34108,7 @@ export type SearchData = {
32780
34108
  */
32781
34109
  include?: Array<'evidence_matches' | 'browse' | 'commitmentRecord' | 'executionReadiness' | 'executionResources'>;
32782
34110
  /**
32783
- * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting. Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
34111
+ * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting and source_account (the accounts one source holds, for a source decision). Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
32784
34112
  */
32785
34113
  sourceId?: string;
32786
34114
  /**
@@ -32900,7 +34228,7 @@ export type SearchData = {
32900
34228
  */
32901
34229
  statuses?: Array<SearchRequestAdcpCreativeStatus>;
32902
34230
  /**
32903
- * Required for kind creative_format: the exact product whose formats to list. With include executionResources: the product to read resource options for.
34231
+ * For kind creative_format: narrow formats to this exact product. With include executionResources: the product to read resource options for.
32904
34232
  */
32905
34233
  productId?: string;
32906
34234
  /**
@@ -33014,7 +34342,7 @@ export type SearchData = {
33014
34342
  /**
33015
34343
  * For kind session: read one source only. Omitted, sessions come from every source you can read. Filters marked (RFP sessions) need the RFP source; a source you cannot read is refused.
33016
34344
  */
33017
- sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1';
34345
+ sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1' | 'live_certification_run_v1';
33018
34346
  /**
33019
34347
  * For kinds rfp, rfp_turn, and session (RFP sessions): exact buyer names recorded on the RFP. A label, not an account id.
33020
34348
  */
@@ -33142,7 +34470,7 @@ export type SearchData = {
33142
34470
  */
33143
34471
  marketplace?: boolean;
33144
34472
  /**
33145
- * For kind seller in a buyer account: sellers that serve this region code.
34473
+ * For kind seller in a buyer account: sellers in this country, a group such as EMEA, or WORLDWIDE.
33146
34474
  */
33147
34475
  region?: string;
33148
34476
  /**
@@ -33168,7 +34496,7 @@ export type SearchData = {
33168
34496
  /**
33169
34497
  * For kind material: one Library document category. uncategorized also matches documents with no category.
33170
34498
  */
33171
- documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'response' | 'specification_sheet' | 'media_kit' | 'uncategorized';
34499
+ documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'specification_sheet' | 'media_kit' | 'uncategorized';
33172
34500
  /**
33173
34501
  * For kind material: documents tagged with any of these industry verticals, case-insensitive.
33174
34502
  */
@@ -33207,11 +34535,11 @@ export type SearchData = {
33207
34535
  */
33208
34536
  cursor?: string;
33209
34537
  /**
33210
- * Results per page, default 50. Some kinds cap it lower: skill returns at most 6, advertiser_grant 25, creative_collection 50, conversation and creative_asset 100.
34538
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
33211
34539
  */
33212
34540
  limit?: number;
33213
34541
  /**
33214
- * Count the kind by one field instead of listing it: you get each value with its count, no rows. Needs kind and takes no cursor. limit caps the values returned (at most 50). ask: askState, askType. inventory_source: status.
34542
+ * Count the kind by one field instead of listing it: each value with its count, no rows. Needs kind and takes no cursor. limit caps values returned (at most 50). ask: askState, askType. creative, event_source: advertiserId, account-wide without filter.advertiserId. inventory_source: status.
33215
34543
  */
33216
34544
  groupBy?: string;
33217
34545
  accountId?: number | string;
@@ -33258,7 +34586,7 @@ export type SearchData = {
33258
34586
  */
33259
34587
  include?: Array<'evidence_matches' | 'browse' | 'commitmentRecord' | 'executionReadiness' | 'executionResources'>;
33260
34588
  /**
33261
- * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting. Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
34589
+ * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting and source_account (the accounts one source holds, for a source decision). Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
33262
34590
  */
33263
34591
  sourceId?: string;
33264
34592
  /**
@@ -33378,7 +34706,7 @@ export type SearchData = {
33378
34706
  */
33379
34707
  statuses?: Array<SearchRequestAdcpCreativeStatus>;
33380
34708
  /**
33381
- * Required for kind creative_format: the exact product whose formats to list. With include executionResources: the product to read resource options for.
34709
+ * For kind creative_format: narrow formats to this exact product. With include executionResources: the product to read resource options for.
33382
34710
  */
33383
34711
  productId?: string;
33384
34712
  /**
@@ -33492,7 +34820,7 @@ export type SearchData = {
33492
34820
  /**
33493
34821
  * For kind session: read one source only. Omitted, sessions come from every source you can read. Filters marked (RFP sessions) need the RFP source; a source you cannot read is refused.
33494
34822
  */
33495
- sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1';
34823
+ sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1' | 'live_certification_run_v1';
33496
34824
  /**
33497
34825
  * For kinds rfp, rfp_turn, and session (RFP sessions): exact buyer names recorded on the RFP. A label, not an account id.
33498
34826
  */
@@ -33620,7 +34948,7 @@ export type SearchData = {
33620
34948
  */
33621
34949
  marketplace?: boolean;
33622
34950
  /**
33623
- * For kind seller in a buyer account: sellers that serve this region code.
34951
+ * For kind seller in a buyer account: sellers in this country, a group such as EMEA, or WORLDWIDE.
33624
34952
  */
33625
34953
  region?: string;
33626
34954
  /**
@@ -33646,7 +34974,7 @@ export type SearchData = {
33646
34974
  /**
33647
34975
  * For kind material: one Library document category. uncategorized also matches documents with no category.
33648
34976
  */
33649
- documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'response' | 'specification_sheet' | 'media_kit' | 'uncategorized';
34977
+ documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'specification_sheet' | 'media_kit' | 'uncategorized';
33650
34978
  /**
33651
34979
  * For kind material: documents tagged with any of these industry verticals, case-insensitive.
33652
34980
  */
@@ -33685,11 +35013,11 @@ export type SearchData = {
33685
35013
  */
33686
35014
  cursor?: string;
33687
35015
  /**
33688
- * Results per page, default 50. Some kinds cap it lower: skill returns at most 6, advertiser_grant 25, creative_collection 50, conversation and creative_asset 100.
35016
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
33689
35017
  */
33690
35018
  limit?: number;
33691
35019
  /**
33692
- * Count the kind by one field instead of listing it: you get each value with its count, no rows. Needs kind and takes no cursor. limit caps the values returned (at most 50). ask: askState, askType. inventory_source: status.
35020
+ * Count the kind by one field instead of listing it: each value with its count, no rows. Needs kind and takes no cursor. limit caps values returned (at most 50). ask: askState, askType. creative, event_source: advertiserId, account-wide without filter.advertiserId. inventory_source: status.
33693
35021
  */
33694
35022
  groupBy?: string;
33695
35023
  accountId?: number | string;
@@ -33736,7 +35064,7 @@ export type SearchData = {
33736
35064
  */
33737
35065
  include?: Array<'evidence_matches' | 'browse' | 'commitmentRecord' | 'executionReadiness' | 'executionResources'>;
33738
35066
  /**
33739
- * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting. Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
35067
+ * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting and source_account (the accounts one source holds, for a source decision). Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
33740
35068
  */
33741
35069
  sourceId?: string;
33742
35070
  /**
@@ -33856,7 +35184,7 @@ export type SearchData = {
33856
35184
  */
33857
35185
  statuses?: Array<SearchRequestAdcpCreativeStatus>;
33858
35186
  /**
33859
- * Required for kind creative_format: the exact product whose formats to list. With include executionResources: the product to read resource options for.
35187
+ * For kind creative_format: narrow formats to this exact product. With include executionResources: the product to read resource options for.
33860
35188
  */
33861
35189
  productId?: string;
33862
35190
  /**
@@ -33970,7 +35298,7 @@ export type SearchData = {
33970
35298
  /**
33971
35299
  * For kind session: read one source only. Omitted, sessions come from every source you can read. Filters marked (RFP sessions) need the RFP source; a source you cannot read is refused.
33972
35300
  */
33973
- sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1';
35301
+ sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1' | 'live_certification_run_v1';
33974
35302
  /**
33975
35303
  * For kinds rfp, rfp_turn, and session (RFP sessions): exact buyer names recorded on the RFP. A label, not an account id.
33976
35304
  */
@@ -34098,7 +35426,7 @@ export type SearchData = {
34098
35426
  */
34099
35427
  marketplace?: boolean;
34100
35428
  /**
34101
- * For kind seller in a buyer account: sellers that serve this region code.
35429
+ * For kind seller in a buyer account: sellers in this country, a group such as EMEA, or WORLDWIDE.
34102
35430
  */
34103
35431
  region?: string;
34104
35432
  /**
@@ -34124,7 +35452,7 @@ export type SearchData = {
34124
35452
  /**
34125
35453
  * For kind material: one Library document category. uncategorized also matches documents with no category.
34126
35454
  */
34127
- documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'response' | 'specification_sheet' | 'media_kit' | 'uncategorized';
35455
+ documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'specification_sheet' | 'media_kit' | 'uncategorized';
34128
35456
  /**
34129
35457
  * For kind material: documents tagged with any of these industry verticals, case-insensitive.
34130
35458
  */
@@ -34163,11 +35491,11 @@ export type SearchData = {
34163
35491
  */
34164
35492
  cursor?: string;
34165
35493
  /**
34166
- * Results per page, default 50. Some kinds cap it lower: skill returns at most 6, advertiser_grant 25, creative_collection 50, conversation and creative_asset 100.
35494
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
34167
35495
  */
34168
35496
  limit?: number;
34169
35497
  /**
34170
- * Count the kind by one field instead of listing it: you get each value with its count, no rows. Needs kind and takes no cursor. limit caps the values returned (at most 50). ask: askState, askType. inventory_source: status.
35498
+ * Count the kind by one field instead of listing it: each value with its count, no rows. Needs kind and takes no cursor. limit caps values returned (at most 50). ask: askState, askType. creative, event_source: advertiserId, account-wide without filter.advertiserId. inventory_source: status.
34171
35499
  */
34172
35500
  groupBy?: string;
34173
35501
  accountId?: number | string;
@@ -34214,7 +35542,7 @@ export type SearchData = {
34214
35542
  */
34215
35543
  include?: Array<'evidence_matches' | 'browse' | 'commitmentRecord' | 'executionReadiness' | 'executionResources'>;
34216
35544
  /**
34217
- * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting. Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
35545
+ * One source to read from, sent here at the top level and not as filter.sourceId. For a Library material browse, this is a connected Library source id. Required for ad_server_targeting and source_account (the accounts one source holds, for a source decision). Optional for seller wholesale_product, signal, and seller media_buy, which list every source when it is omitted.
34218
35546
  */
34219
35547
  sourceId?: string;
34220
35548
  /**
@@ -34334,7 +35662,7 @@ export type SearchData = {
34334
35662
  */
34335
35663
  statuses?: Array<SearchRequestAdcpCreativeStatus>;
34336
35664
  /**
34337
- * Required for kind creative_format: the exact product whose formats to list. With include executionResources: the product to read resource options for.
35665
+ * For kind creative_format: narrow formats to this exact product. With include executionResources: the product to read resource options for.
34338
35666
  */
34339
35667
  productId?: string;
34340
35668
  /**
@@ -34448,7 +35776,7 @@ export type SearchData = {
34448
35776
  /**
34449
35777
  * For kind session: read one source only. Omitted, sessions come from every source you can read. Filters marked (RFP sessions) need the RFP source; a source you cannot read is refused.
34450
35778
  */
34451
- sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1';
35779
+ sessionSource?: 'murph_conversation_v1' | 'storefront_rfp_v1' | 'storefront_media_buy_v1' | 'storefront_compose_run_v1' | 'live_certification_run_v1';
34452
35780
  /**
34453
35781
  * For kinds rfp, rfp_turn, and session (RFP sessions): exact buyer names recorded on the RFP. A label, not an account id.
34454
35782
  */
@@ -34576,7 +35904,7 @@ export type SearchData = {
34576
35904
  */
34577
35905
  marketplace?: boolean;
34578
35906
  /**
34579
- * For kind seller in a buyer account: sellers that serve this region code.
35907
+ * For kind seller in a buyer account: sellers in this country, a group such as EMEA, or WORLDWIDE.
34580
35908
  */
34581
35909
  region?: string;
34582
35910
  /**
@@ -34602,7 +35930,7 @@ export type SearchData = {
34602
35930
  /**
34603
35931
  * For kind material: one Library document category. uncategorized also matches documents with no category.
34604
35932
  */
34605
- documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'response' | 'specification_sheet' | 'media_kit' | 'uncategorized';
35933
+ documentPurpose?: 'sales_deck' | 'one_sheet' | 'case_study' | 'specification_sheet' | 'media_kit' | 'uncategorized';
34606
35934
  /**
34607
35935
  * For kind material: documents tagged with any of these industry verticals, case-insensitive.
34608
35936
  */
@@ -34641,11 +35969,11 @@ export type SearchData = {
34641
35969
  */
34642
35970
  cursor?: string;
34643
35971
  /**
34644
- * Results per page, default 50. Some kinds cap it lower: skill returns at most 6, advertiser_grant 25, creative_collection 50, conversation and creative_asset 100.
35972
+ * Results per page, default 50. A value above a kind page maximum is capped to it.
34645
35973
  */
34646
35974
  limit?: number;
34647
35975
  /**
34648
- * Count the kind by one field instead of listing it: you get each value with its count, no rows. Needs kind and takes no cursor. limit caps the values returned (at most 50). ask: askState, askType. inventory_source: status.
35976
+ * Count the kind by one field instead of listing it: each value with its count, no rows. Needs kind and takes no cursor. limit caps values returned (at most 50). ask: askState, askType. creative, event_source: advertiserId, account-wide without filter.advertiserId. inventory_source: status.
34649
35977
  */
34650
35978
  groupBy?: string;
34651
35979
  accountId?: number | string;
@@ -34738,7 +36066,7 @@ export type SearchResponses = {
34738
36066
  200: {
34739
36067
  data: {
34740
36068
  sources: Array<'objects' | 'docs' | 'specs'>;
34741
- objects?: SearchSuccessV3CampaignListResponse | SearchSuccessSearchAccountPageOutput | SearchSuccessSearchMemberPageOutput | SearchSuccessSearchAgentPageOutput | SearchSuccessSearchSkillPageOutput | SearchSuccessSearchInventorySourcePageOutput | SearchSuccessSearchMaterialPageOutput | SearchSuccessSearchCoveragePageOutput | SearchSuccessSearchWholesaleProductPageOutput | SearchSuccessSearchPlaybookVersionPageOutput | SearchSuccessSearchBusinessRulesVersionPageOutput | SearchSuccessSearchHouseDiscountPageOutput | SearchSuccessSearchConnectionPageOutput | SearchSuccessSearchAccountRelationshipPageOutput | SearchSuccessSearchSellerPageOutput | SearchSuccessSearchAdvertiserPageOutput | SearchSuccessSearchAdvertiserGrantPageOutput | SearchSuccessSearchSignalPageOutput | SearchSuccessSearchAdServerTargetingPageOutput | SearchSuccessSearchWorkItemPageOutput | SearchSuccessSearchCampaignPageOutput | SearchSuccessSearchCatalogPageOutput | SearchSuccessSearchEventSourcePageOutput | SearchSuccessSearchPropertyListPageOutput | SearchSuccessSearchCreativePageOutput | SearchSuccessSearchCreativeFormatPageOutput | SearchSuccessSearchCreativeAssetPageOutput | SearchSuccessSearchCreativeEnginePageOutput | SearchSuccessSearchCreativeSessionPageOutput | SearchSuccessSearchCreativeCollectionPageOutput | SearchSuccessSearchMediaBuyPageOutput | SearchSuccessSearchProposalPageOutput | SearchSuccessSearchRfpPageOutput | SearchSuccessSearchRfpTurnPageOutput | SearchSuccessSearchLibraryRequestPageOutput | SearchSuccessSearchAskPageOutput | SearchSuccessSearchConversationPageOutput | SearchSuccessSearchBuyerAgentPageOutput | SearchSuccessSearchDimensionPageOutput | SearchSuccessSearchSessionPageOutput | {
36069
+ objects?: SearchSuccessV3CampaignListResponse | SearchSuccessSearchAccountPageOutput | SearchSuccessSearchMemberPageOutput | SearchSuccessSearchAgentPageOutput | SearchSuccessSearchSkillPageOutput | SearchSuccessSearchInventorySourcePageOutput | SearchSuccessSearchMaterialPageOutput | SearchSuccessSearchCoveragePageOutput | SearchSuccessSearchWholesaleProductPageOutput | SearchSuccessSearchPlaybookVersionPageOutput | SearchSuccessSearchBusinessRulesVersionPageOutput | SearchSuccessSearchHouseDiscountPageOutput | SearchSuccessSearchConnectionPageOutput | SearchSuccessSearchAccountRelationshipPageOutput | SearchSuccessSearchSourceAccountPageOutput | SearchSuccessSearchSellerPageOutput | SearchSuccessSearchAdvertiserPageOutput | SearchSuccessSearchAdvertiserGrantPageOutput | SearchSuccessSearchSignalPageOutput | SearchSuccessSearchAdServerTargetingPageOutput | SearchSuccessSearchWorkItemPageOutput | SearchSuccessSearchCampaignPageOutput | SearchSuccessSearchCatalogPageOutput | SearchSuccessSearchEventSourcePageOutput | SearchSuccessSearchPropertyListPageOutput | SearchSuccessSearchCreativePageOutput | SearchSuccessSearchCreativeFormatPageOutput | SearchSuccessSearchCreativeAssetPageOutput | SearchSuccessSearchCreativeEnginePageOutput | SearchSuccessSearchCreativeSessionPageOutput | SearchSuccessSearchCreativeCollectionPageOutput | SearchSuccessSearchMediaBuyPageOutput | SearchSuccessSearchProposalPageOutput | SearchSuccessSearchRfpPageOutput | SearchSuccessSearchRfpTurnPageOutput | SearchSuccessSearchLibraryRequestPageOutput | SearchSuccessSearchAskPageOutput | SearchSuccessSearchConversationPageOutput | SearchSuccessSearchBuyerAgentPageOutput | SearchSuccessSearchDimensionPageOutput | SearchSuccessSearchSessionPageOutput | {
34742
36070
  kind: string;
34743
36071
  groupBy: string;
34744
36072
  total: number;
@@ -34758,7 +36086,7 @@ export type SearchResponses = {
34758
36086
  } | {
34759
36087
  outcome: 'mixed';
34760
36088
  kind: 'mixed';
34761
- sections: Array<SearchSuccessSearchAccountPageOutput | SearchSuccessSearchMemberPageOutput | SearchSuccessSearchAgentPageOutput | SearchSuccessSearchSkillPageOutput | SearchSuccessSearchInventorySourcePageOutput | SearchSuccessSearchMaterialPageOutput | SearchSuccessSearchCoveragePageOutput | SearchSuccessSearchWholesaleProductPageOutput | SearchSuccessSearchPlaybookVersionPageOutput | SearchSuccessSearchBusinessRulesVersionPageOutput | SearchSuccessSearchHouseDiscountPageOutput | SearchSuccessSearchConnectionPageOutput | SearchSuccessSearchAccountRelationshipPageOutput | SearchSuccessSearchSellerPageOutput | SearchSuccessSearchAdvertiserPageOutput | SearchSuccessSearchAdvertiserGrantPageOutput | SearchSuccessSearchSignalPageOutput | SearchSuccessSearchAdServerTargetingPageOutput | SearchSuccessSearchWorkItemPageOutput | SearchSuccessSearchCampaignPageOutput | SearchSuccessSearchCatalogPageOutput | SearchSuccessSearchEventSourcePageOutput | SearchSuccessSearchPropertyListPageOutput | SearchSuccessSearchCreativePageOutput | SearchSuccessSearchCreativeFormatPageOutput | SearchSuccessSearchCreativeAssetPageOutput | SearchSuccessSearchCreativeEnginePageOutput | SearchSuccessSearchCreativeSessionPageOutput | SearchSuccessSearchCreativeCollectionPageOutput | SearchSuccessSearchMediaBuyPageOutput | SearchSuccessSearchProposalPageOutput | SearchSuccessSearchRfpPageOutput | SearchSuccessSearchRfpTurnPageOutput | SearchSuccessSearchLibraryRequestPageOutput | SearchSuccessSearchAskPageOutput | SearchSuccessSearchConversationPageOutput | SearchSuccessSearchBuyerAgentPageOutput | SearchSuccessSearchDimensionPageOutput | SearchSuccessSearchSessionPageOutput | SearchSuccessSearchAccountUnavailableOutput | SearchSuccessSearchMemberUnavailableOutput | SearchSuccessSearchAgentUnavailableOutput | SearchSuccessSearchSkillUnavailableOutput | SearchSuccessSearchInventorySourceUnavailableOutput | SearchSuccessSearchMaterialUnavailableOutput | SearchSuccessSearchCoverageUnavailableOutput | SearchSuccessSearchWholesaleProductUnavailableOutput | SearchSuccessSearchPlaybookVersionUnavailableOutput | SearchSuccessSearchBusinessRulesVersionUnavailableOutput | SearchSuccessSearchHouseDiscountUnavailableOutput | SearchSuccessSearchConnectionUnavailableOutput | SearchSuccessSearchAccountRelationshipUnavailableOutput | SearchSuccessSearchSellerUnavailableOutput | SearchSuccessSearchAdvertiserUnavailableOutput | SearchSuccessSearchAdvertiserGrantUnavailableOutput | SearchSuccessSearchSignalUnavailableOutput | SearchSuccessSearchAdServerTargetingUnavailableOutput | SearchSuccessSearchWorkItemUnavailableOutput | SearchSuccessSearchCampaignUnavailableOutput | SearchSuccessSearchCatalogUnavailableOutput | SearchSuccessSearchEventSourceUnavailableOutput | SearchSuccessSearchPropertyListUnavailableOutput | SearchSuccessSearchCreativeUnavailableOutput | SearchSuccessSearchCreativeFormatUnavailableOutput | SearchSuccessSearchCreativeAssetUnavailableOutput | SearchSuccessSearchCreativeEngineUnavailableOutput | SearchSuccessSearchCreativeSessionUnavailableOutput | SearchSuccessSearchCreativeCollectionUnavailableOutput | SearchSuccessSearchMediaBuyUnavailableOutput | SearchSuccessSearchProposalUnavailableOutput | SearchSuccessSearchRfpUnavailableOutput | SearchSuccessSearchRfpTurnUnavailableOutput | SearchSuccessSearchLibraryRequestUnavailableOutput | SearchSuccessSearchAskUnavailableOutput | SearchSuccessSearchConversationUnavailableOutput | SearchSuccessSearchBuyerAgentUnavailableOutput | SearchSuccessSearchDimensionUnavailableOutput | SearchSuccessSearchSessionUnavailableOutput>;
36089
+ sections: Array<SearchSuccessSearchAccountPageOutput | SearchSuccessSearchMemberPageOutput | SearchSuccessSearchAgentPageOutput | SearchSuccessSearchSkillPageOutput | SearchSuccessSearchInventorySourcePageOutput | SearchSuccessSearchMaterialPageOutput | SearchSuccessSearchCoveragePageOutput | SearchSuccessSearchWholesaleProductPageOutput | SearchSuccessSearchPlaybookVersionPageOutput | SearchSuccessSearchBusinessRulesVersionPageOutput | SearchSuccessSearchHouseDiscountPageOutput | SearchSuccessSearchConnectionPageOutput | SearchSuccessSearchAccountRelationshipPageOutput | SearchSuccessSearchSourceAccountPageOutput | SearchSuccessSearchSellerPageOutput | SearchSuccessSearchAdvertiserPageOutput | SearchSuccessSearchAdvertiserGrantPageOutput | SearchSuccessSearchSignalPageOutput | SearchSuccessSearchAdServerTargetingPageOutput | SearchSuccessSearchWorkItemPageOutput | SearchSuccessSearchCampaignPageOutput | SearchSuccessSearchCatalogPageOutput | SearchSuccessSearchEventSourcePageOutput | SearchSuccessSearchPropertyListPageOutput | SearchSuccessSearchCreativePageOutput | SearchSuccessSearchCreativeFormatPageOutput | SearchSuccessSearchCreativeAssetPageOutput | SearchSuccessSearchCreativeEnginePageOutput | SearchSuccessSearchCreativeSessionPageOutput | SearchSuccessSearchCreativeCollectionPageOutput | SearchSuccessSearchMediaBuyPageOutput | SearchSuccessSearchProposalPageOutput | SearchSuccessSearchRfpPageOutput | SearchSuccessSearchRfpTurnPageOutput | SearchSuccessSearchLibraryRequestPageOutput | SearchSuccessSearchAskPageOutput | SearchSuccessSearchConversationPageOutput | SearchSuccessSearchBuyerAgentPageOutput | SearchSuccessSearchDimensionPageOutput | SearchSuccessSearchSessionPageOutput | SearchSuccessSearchAccountUnavailableOutput | SearchSuccessSearchMemberUnavailableOutput | SearchSuccessSearchAgentUnavailableOutput | SearchSuccessSearchSkillUnavailableOutput | SearchSuccessSearchInventorySourceUnavailableOutput | SearchSuccessSearchMaterialUnavailableOutput | SearchSuccessSearchCoverageUnavailableOutput | SearchSuccessSearchWholesaleProductUnavailableOutput | SearchSuccessSearchPlaybookVersionUnavailableOutput | SearchSuccessSearchBusinessRulesVersionUnavailableOutput | SearchSuccessSearchHouseDiscountUnavailableOutput | SearchSuccessSearchConnectionUnavailableOutput | SearchSuccessSearchAccountRelationshipUnavailableOutput | SearchSuccessSearchSourceAccountUnavailableOutput | SearchSuccessSearchSellerUnavailableOutput | SearchSuccessSearchAdvertiserUnavailableOutput | SearchSuccessSearchAdvertiserGrantUnavailableOutput | SearchSuccessSearchSignalUnavailableOutput | SearchSuccessSearchAdServerTargetingUnavailableOutput | SearchSuccessSearchWorkItemUnavailableOutput | SearchSuccessSearchCampaignUnavailableOutput | SearchSuccessSearchCatalogUnavailableOutput | SearchSuccessSearchEventSourceUnavailableOutput | SearchSuccessSearchPropertyListUnavailableOutput | SearchSuccessSearchCreativeUnavailableOutput | SearchSuccessSearchCreativeFormatUnavailableOutput | SearchSuccessSearchCreativeAssetUnavailableOutput | SearchSuccessSearchCreativeEngineUnavailableOutput | SearchSuccessSearchCreativeSessionUnavailableOutput | SearchSuccessSearchCreativeCollectionUnavailableOutput | SearchSuccessSearchMediaBuyUnavailableOutput | SearchSuccessSearchProposalUnavailableOutput | SearchSuccessSearchRfpUnavailableOutput | SearchSuccessSearchRfpTurnUnavailableOutput | SearchSuccessSearchLibraryRequestUnavailableOutput | SearchSuccessSearchAskUnavailableOutput | SearchSuccessSearchConversationUnavailableOutput | SearchSuccessSearchBuyerAgentUnavailableOutput | SearchSuccessSearchDimensionUnavailableOutput | SearchSuccessSearchSessionUnavailableOutput>;
34762
36090
  [key: string]: unknown;
34763
36091
  };
34764
36092
  objectsUnavailable?: string;
@@ -35958,6 +37286,38 @@ export type SearchSuccessSearchSkillUnavailableOutput = {
35958
37286
  message: string;
35959
37287
  [key: string]: unknown;
35960
37288
  };
37289
+ export type SearchSuccessSearchSourceAccountPageOutput = {
37290
+ total?: SearchSuccessSearchSourceAccountPageOutputTotal;
37291
+ totalLowerBound?: SearchSuccessSearchSourceAccountPageOutputTotalLowerBound;
37292
+ returned?: SearchSuccessSearchSourceAccountPageOutputReturned;
37293
+ hasMore?: SearchSuccessSearchSourceAccountPageOutputHasMore;
37294
+ truncated?: SearchSuccessSearchSourceAccountPageOutputTruncated;
37295
+ nextCursor?: SearchSuccessSearchSourceAccountPageOutputNextCursor;
37296
+ results: SearchSuccessSearchSourceAccountPageOutputResults;
37297
+ outcome: 'page_source_account';
37298
+ kind: 'source_account';
37299
+ [key: string]: SearchSuccessSearchSourceAccountPageOutputValue | SearchSuccessSearchSourceAccountPageOutputTotal | SearchSuccessSearchSourceAccountPageOutputTotalLowerBound | SearchSuccessSearchSourceAccountPageOutputReturned | SearchSuccessSearchSourceAccountPageOutputHasMore | SearchSuccessSearchSourceAccountPageOutputTruncated | SearchSuccessSearchSourceAccountPageOutputNextCursor | SearchSuccessSearchSourceAccountPageOutputResults | 'page_source_account' | 'source_account' | undefined;
37300
+ };
37301
+ export type SearchSuccessSearchSourceAccountPageOutputHasMore = boolean;
37302
+ export type SearchSuccessSearchSourceAccountPageOutputNextCursor = string;
37303
+ export type SearchSuccessSearchSourceAccountPageOutputResults = Array<{
37304
+ advertiserId?: string;
37305
+ name?: string | null;
37306
+ sandbox?: boolean;
37307
+ [key: string]: unknown;
37308
+ }>;
37309
+ export type SearchSuccessSearchSourceAccountPageOutputReturned = number;
37310
+ export type SearchSuccessSearchSourceAccountPageOutputTotal = number;
37311
+ export type SearchSuccessSearchSourceAccountPageOutputTotalLowerBound = number;
37312
+ export type SearchSuccessSearchSourceAccountPageOutputTruncated = boolean;
37313
+ export type SearchSuccessSearchSourceAccountPageOutputValue = unknown;
37314
+ export type SearchSuccessSearchSourceAccountUnavailableOutput = {
37315
+ outcome: 'unavailable_source_account';
37316
+ kind: 'source_account';
37317
+ unavailable: string;
37318
+ message: string;
37319
+ [key: string]: unknown;
37320
+ };
35961
37321
  export type SearchSuccessSearchWholesaleProductPageOutput = {
35962
37322
  total?: SearchSuccessSearchWholesaleProductPageOutputTotal;
35963
37323
  totalLowerBound?: SearchSuccessSearchWholesaleProductPageOutputTotalLowerBound;
@@ -36331,7 +37691,7 @@ export type TestCreativeMacrosData = {
36331
37691
  /**
36332
37692
  * Required macros must occur and have values. Absence fails; defaults to all canonical macros present.
36333
37693
  */
36334
- requiredMacros?: Array<'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' | 'TMPX' | 'IMPRESSION_ID' | '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' | 'ITEM_NAME' | 'ITEM_DESCRIPTION' | 'ITEM_TAGLINE' | 'ITEM_PRICE' | 'ITEM_PRICE_CURRENCY'>;
37694
+ requiredMacros?: Array<'MEDIA_BUY_ID' | 'PACKAGE_ID' | 'CREATIVE_ID' | 'CACHEBUSTER' | 'TIMESTAMP' | 'CLICK_URL' | 'GDPR' | 'GDPR_CONSENT' | 'ADDTL_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' | 'TMPX' | 'IMPRESSION_ID' | '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' | 'ITEM_NAME' | 'ITEM_DESCRIPTION' | 'ITEM_TAGLINE' | 'ITEM_PRICE' | 'ITEM_PRICE_CURRENCY'>;
36335
37695
  /**
36336
37696
  * Apostra accountId this call runs in, from get_status.
36337
37697
  */
@@ -36459,7 +37819,7 @@ export type TestCreativeMacrosResponses = {
36459
37819
  /**
36460
37820
  * AdCP universal macro name.
36461
37821
  */
36462
- macro: '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' | 'TMPX' | 'IMPRESSION_ID' | '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' | 'ITEM_NAME' | 'ITEM_DESCRIPTION' | 'ITEM_TAGLINE' | 'ITEM_PRICE' | 'ITEM_PRICE_CURRENCY';
37822
+ macro: 'MEDIA_BUY_ID' | 'PACKAGE_ID' | 'CREATIVE_ID' | 'CACHEBUSTER' | 'TIMESTAMP' | 'CLICK_URL' | 'GDPR' | 'GDPR_CONSENT' | 'ADDTL_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' | 'TMPX' | 'IMPRESSION_ID' | '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' | 'ITEM_NAME' | 'ITEM_DESCRIPTION' | 'ITEM_TAGLINE' | 'ITEM_PRICE' | 'ITEM_PRICE_CURRENCY';
36463
37823
  value?: string;
36464
37824
  source: 'synthetic' | 'provided' | 'privacy_suppressed' | 'missing';
36465
37825
  }>;
@@ -36509,10 +37869,6 @@ export type UploadCreativeAssetData = {
36509
37869
  * Optional creative name for the upload experience.
36510
37870
  */
36511
37871
  creative_name?: string;
36512
- /**
36513
- * Creative fields that remain to be authored.
36514
- */
36515
- required_authored_fields: Array<string>;
36516
37872
  };
36517
37873
  /**
36518
37874
  * Apostra accountId this call runs in, from get_status.
@@ -36617,9 +37973,6 @@ export type UploadCreativeAssetResponses = {
36617
37973
  [key: string]: number;
36618
37974
  };
36619
37975
  fallback_url: string;
36620
- /**
36621
- * Optional campaign context for composing the uploaded creative.
36622
- */
36623
37976
  campaign_composition?: {
36624
37977
  /**
36625
37978
  * Campaign receiving the uploaded creative.
@@ -36638,9 +37991,9 @@ export type UploadCreativeAssetResponses = {
36638
37991
  */
36639
37992
  creative_name?: string;
36640
37993
  /**
36641
- * Creative fields that remain to be authored.
37994
+ * Copy fields every image format of the campaign's products requires; a save without one is refused.
36642
37995
  */
36643
- required_authored_fields: Array<string>;
37996
+ required_authored_fields: Array<'headline' | 'primary_text' | 'cta' | 'brand_name'>;
36644
37997
  };
36645
37998
  };
36646
37999
  error: null;