@adcp/sdk 14.0.0-beta.26 → 14.0.0-beta.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/dist/lib/core/AgentClient.d.mts +5 -1
  2. package/dist/lib/core/AgentClient.d.ts +5 -1
  3. package/dist/lib/core/SingleAgentClient.js +2 -0
  4. package/dist/lib/core/SingleAgentClient.mjs +2 -0
  5. package/dist/lib/index.d.mts +1 -0
  6. package/dist/lib/index.d.ts +1 -0
  7. package/dist/lib/index.js +2 -0
  8. package/dist/lib/index.mjs +1 -0
  9. package/dist/lib/reporting/evidence.d.mts +4 -0
  10. package/dist/lib/reporting/evidence.d.ts +4 -0
  11. package/dist/lib/reporting/evidence.js +136 -0
  12. package/dist/lib/reporting/evidence.mjs +109 -0
  13. package/dist/lib/reporting/index.d.mts +4 -0
  14. package/dist/lib/reporting/index.d.ts +4 -0
  15. package/dist/lib/reporting/index.js +45 -0
  16. package/dist/lib/reporting/index.mjs +24 -0
  17. package/dist/lib/reporting/inspection.d.mts +88 -0
  18. package/dist/lib/reporting/inspection.d.ts +88 -0
  19. package/dist/lib/reporting/inspection.js +1125 -0
  20. package/dist/lib/reporting/inspection.mjs +1094 -0
  21. package/dist/lib/reporting/reconciliation.d.mts +199 -0
  22. package/dist/lib/reporting/reconciliation.d.ts +199 -0
  23. package/dist/lib/reporting/reconciliation.js +870 -0
  24. package/dist/lib/reporting/reconciliation.mjs +844 -0
  25. package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
  26. package/dist/lib/server/decisioning/runtime/protocol-for-tool.js +1 -0
  27. package/dist/lib/server/decisioning/runtime/protocol-for-tool.mjs +1 -0
  28. package/dist/lib/server/wire-spec-fields.generated.d.mts +11 -1
  29. package/dist/lib/server/wire-spec-fields.generated.d.ts +11 -1
  30. package/dist/lib/server/wire-spec-fields.generated.js +10 -0
  31. package/dist/lib/server/wire-spec-fields.generated.mjs +10 -0
  32. package/dist/lib/testing/storyboard/runner.js +13 -2
  33. package/dist/lib/testing/storyboard/runner.mjs +13 -2
  34. package/dist/lib/testing/storyboard/types.d.mts +8 -0
  35. package/dist/lib/testing/storyboard/types.d.ts +8 -0
  36. package/dist/lib/testing/storyboard/validations.d.mts +1 -1
  37. package/dist/lib/testing/storyboard/validations.d.ts +1 -1
  38. package/dist/lib/types/create-media-buy.d.ts +21 -16
  39. package/dist/lib/types/get-media-buys.d.ts +21 -16
  40. package/dist/lib/types/index.d.mts +1 -0
  41. package/dist/lib/types/index.d.ts +1 -0
  42. package/dist/lib/types/list-accounts.d.ts +21 -16
  43. package/dist/lib/types/list-creatives.d.ts +21 -16
  44. package/dist/lib/types/schemas.generated.d.ts +688 -952
  45. package/dist/lib/types/schemas.generated.js +542 -515
  46. package/dist/lib/types/schemas.generated.mjs +542 -515
  47. package/dist/lib/types/sync-accounts.d.ts +21 -16
  48. package/dist/lib/types/sync-creatives.d.ts +21 -16
  49. package/dist/lib/types/tools.generated.d.mts +2 -6
  50. package/dist/lib/types/tools.generated.d.ts +2 -6
  51. package/dist/lib/utils/reporting-status-response.d.mts +2 -0
  52. package/dist/lib/utils/reporting-status-response.d.ts +2 -0
  53. package/dist/lib/utils/reporting-status-response.js +338 -0
  54. package/dist/lib/utils/reporting-status-response.mjs +319 -0
  55. package/dist/lib/utils/response-schemas.js +6 -1
  56. package/dist/lib/utils/response-schemas.mjs +6 -1
  57. package/dist/lib/validation/sync-creatives.d.mts +42 -108
  58. package/dist/lib/validation/sync-creatives.d.ts +42 -108
  59. package/dist/lib/version.d.mts +3 -3
  60. package/dist/lib/version.d.ts +3 -3
  61. package/dist/lib/version.js +3 -3
  62. package/dist/lib/version.mjs +3 -3
  63. package/docs/TYPE-SUMMARY.md +2 -2
  64. package/docs/guides/REPORTING-RECONCILIATION.md +107 -0
  65. package/docs/llms.txt +2 -2
  66. package/package.json +1 -1
@@ -1440,13 +1440,40 @@ const CanonicalFormatVASTAudioSchema = z.object({
1440
1440
  vast_versions: z.array(VASTVersionSchema).optional(),
1441
1441
  vast_version: VASTVersionSchema.optional(),
1442
1442
  media_file_requirements: VASTMediaFileRequirementsSchema.optional(),
1443
- duration_ms_range: z.array(z.number()).optional(),
1443
+ duration_ms_range: z.array(z.number().int().min(0)).length(2).optional(),
1444
1444
  duration_ms_exact: z.int().min(1).optional(),
1445
1445
  skippable_after_ms: z.int().min(0).optional(),
1446
1446
  max_wrapper_depth: z.int().min(0).optional(),
1447
1447
  ssl_required: z.boolean().optional(),
1448
1448
  companion_image_required: z.boolean().optional()
1449
- }).passthrough();
1449
+ }).passthrough().superRefine((value, ctx) => {
1450
+ if (value.vast_version !== void 0 && value.vast_versions !== void 0) {
1451
+ ctx.addIssue({
1452
+ code: "custom",
1453
+ path: [],
1454
+ message: "audio VAST declarations cannot combine vast_version and vast_versions"
1455
+ });
1456
+ }
1457
+ const requirements = value.media_file_requirements;
1458
+ requirements?.mime_types?.forEach((mimeType, index) => {
1459
+ if (!/^audio\//i.test(mimeType)) {
1460
+ ctx.addIssue({
1461
+ code: "custom",
1462
+ path: ["media_file_requirements", "mime_types", index],
1463
+ message: "audio VAST media MIME types must use the audio/* family"
1464
+ });
1465
+ }
1466
+ });
1467
+ for (const dimension of ["min_width", "max_width", "min_height", "max_height"]) {
1468
+ if (requirements?.[dimension] !== void 0) {
1469
+ ctx.addIssue({
1470
+ code: "custom",
1471
+ path: ["media_file_requirements", dimension],
1472
+ message: "audio VAST media requirements cannot declare visual dimensions"
1473
+ });
1474
+ }
1475
+ }
1476
+ });
1450
1477
  const CanonicalFormatDAASTAudioSchema = z.object({
1451
1478
  experimental: z.boolean().optional(),
1452
1479
  deprecated: z.boolean().optional(),
@@ -10585,7 +10612,6 @@ const TrackerExecutionContractSchema = z.object({
10585
10612
  complete: z.boolean(),
10586
10613
  honored: z.array(TrackerExecutionSelectorSchema)
10587
10614
  }).passthrough();
10588
- const ReportingDeliveryMethodSchema = z.union([FileTransferSchema, DatasetShareSchema, WarehouseMaterializationSchema]);
10589
10615
  const ReportingFileTransferSchema = z.object({
10590
10616
  pattern: z.literal("file_transfer"),
10591
10617
  transport: z.string().min(1).max(64).regex(/^[a-z][a-z0-9_.-]*$/),
@@ -10711,25 +10737,7 @@ const ValidationResultSchema = z.object({
10711
10737
  authorization: AuthorizationResultSchema.optional(),
10712
10738
  ext: ExtensionObjectSchema.optional()
10713
10739
  }).passthrough();
10714
- const ReportingDeliveryConfigurationSchema = z.object({}).passthrough().merge(z.object({}).passthrough()).merge(z.object({
10715
- delivery_config_id: z.string().min(1).max(64).regex(new RegExp("^[A-Za-z0-9_.:-]{1,64}$")),
10716
- delivery_config_version: z.number().int().gte(1),
10717
- offering_id: z.string().min(1).max(128).regex(new RegExp("^[A-Za-z0-9_.:-]{1,128}$")),
10718
- active: z.boolean(),
10719
- feed_purpose: ReportingFeedPurposeSchema,
10720
- report_definition_id: z.string().min(1).max(255).regex(new RegExp("^[A-Za-z0-9_.:-]{1,255}$")),
10721
- reporting_profile: z.string().min(1).max(128).regex(new RegExp("^[A-Za-z0-9_.:-]{1,128}$")),
10722
- scope: z.object({
10723
- all_media_buys: z.literal(true).optional(),
10724
- media_buy_ids: z.array(ReportingMediaBuyIDSchema).optional()
10725
- }).passthrough(),
10726
- coverage_requirement: z.union([z.literal("full"), z.literal("allow_partial")]),
10727
- required_finality: ReportingFinalitySchema,
10728
- reconciliation_mode: ReportingReconciliationModeSchema,
10729
- schedule: ReportingScheduleSchema,
10730
- method: ReportingDeliveryMethodSchema.optional(),
10731
- revocation_effective_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
10732
- }).passthrough());
10740
+ const ReportingDeliveryMethodSchema = z.union([ReportingFileTransferSchema, DatasetShareSchema, WarehouseMaterializationSchema]);
10733
10741
  const AttestationReferenceSchema = z.object({
10734
10742
  issuer: AttestationIssuerSchema,
10735
10743
  claim_type: z.string().refine(adcpJsonSchemaUri, "Invalid URI"),
@@ -10788,408 +10796,135 @@ const ProductFormatDeclarationSchema = z.object({}).passthrough().merge(z.object
10788
10796
  v1_format_ref: z.array(FormatReferenceStructuredObjectSchema).optional(),
10789
10797
  format_schema: PlatformExtensionReferenceSchema.optional()
10790
10798
  }).passthrough()).and(z.union([ImageFormatDeclarationSchema, HTML5FormatDeclarationSchema, DisplayTagFormatDeclarationSchema, ImageCarouselFormatDeclarationSchema, HostedVideoFormatDeclarationSchema, VASTVideoFormatDeclarationSchema, HostedAudioFormatDeclarationSchema, VASTAudioFormatDeclarationSchema, DAASTAudioFormatDeclarationSchema, SponsoredPlacementFormatDeclarationSchema, NativeInFeedFormatDeclarationSchema, ResponsiveCreativeFormatDeclarationSchema, AgentPlacementFormatDeclarationSchema, SellerRenderedStatefulDisplayFormatDeclarationSchema, CoordinatedPlacementsFormatDeclarationSchema, CustomFormatDeclarationSchema]));
10791
- const ReportingDeliveryConfigurationStateSchema = z.object({}).passthrough().merge(z.object({}).passthrough()).merge(z.object({}).passthrough()).merge(z.object({
10792
- configuration: ReportingDeliveryConfigurationSchema,
10793
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
10794
- destination_ref: z.string().min(1).max(255).optional(),
10795
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10796
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10797
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10798
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10799
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10800
- current_coverage: ReportingCoverageSchema.optional(),
10801
- setup: z.object({
10802
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
10803
- message: z.string().min(1).max(2e3),
10804
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
10805
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
10806
- }).passthrough().optional(),
10807
- issues: z.array(ReportingStatusIssueSchema).optional()
10808
- }).passthrough()).merge(z.object({
10809
- configuration: ReportingDeliveryConfigurationSchema,
10810
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
10811
- destination_ref: z.string().min(1).max(255).optional(),
10812
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10813
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10814
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10815
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10816
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10817
- current_coverage: ReportingCoverageSchema.optional(),
10818
- setup: z.object({
10819
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
10820
- message: z.string().min(1).max(2e3),
10821
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
10822
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
10823
- }).passthrough().optional(),
10824
- issues: z.array(ReportingStatusIssueSchema).optional()
10825
- }).passthrough()).merge(z.object({
10826
- configuration: ReportingDeliveryConfigurationSchema,
10827
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
10828
- destination_ref: z.string().min(1).max(255).optional(),
10829
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10830
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10831
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10832
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10833
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10834
- current_coverage: ReportingCoverageSchema.optional(),
10835
- setup: z.object({
10836
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
10837
- message: z.string().min(1).max(2e3),
10838
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
10839
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
10840
- }).passthrough().optional(),
10841
- issues: z.array(ReportingStatusIssueSchema).optional()
10842
- }).passthrough()).merge(z.object({
10843
- configuration: ReportingDeliveryConfigurationSchema,
10844
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
10845
- destination_ref: z.string().min(1).max(255).optional(),
10846
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10847
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10848
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10849
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10850
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10851
- current_coverage: ReportingCoverageSchema.optional(),
10852
- setup: z.object({
10853
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
10854
- message: z.string().min(1).max(2e3),
10855
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
10856
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
10857
- }).passthrough().optional(),
10858
- issues: z.array(ReportingStatusIssueSchema).optional()
10799
+ const AudienceEvidenceSchema = z.object({}).passthrough().merge(z.object({}).passthrough()).merge(z.object({}).passthrough()).merge(z.object({
10800
+ evidence_id: z.string().min(1),
10801
+ snapshot_id: z.string().min(1),
10802
+ version: z.string().min(1),
10803
+ content_digest: z.string().regex(new RegExp("^sha256:[a-f0-9]{64}$")),
10804
+ audience: AudienceCharacteristicSchema,
10805
+ relationship: z.union([z.literal("composition"), z.literal("index"), z.literal("reach_estimate")]),
10806
+ value: z.number().gte(0),
10807
+ unit: z.union([z.literal("fraction"), z.literal("ratio"), z.literal("count")]),
10808
+ baseline: z.object({
10809
+ system: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI"),
10810
+ population_id: z.string().min(1),
10811
+ version: z.string().min(1),
10812
+ description: z.string().optional()
10813
+ }).passthrough(),
10814
+ evidence_type: z.union([z.literal("measured"), z.literal("forecast"), z.literal("seller_declared")]),
10815
+ methodology: AudienceEvidenceMethodologySchema,
10816
+ subject_type: AudienceSubjectTypeSchema,
10817
+ resolution_method: AudienceResolutionMethodSchema.optional(),
10818
+ provider: BrandReferenceSchema,
10819
+ measurement_window: DateRangeSchema,
10820
+ sample_size: z.number().int().gte(1).optional(),
10821
+ confidence: z.number().gte(0).lte(1).optional(),
10822
+ last_updated: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time"),
10823
+ methodology_url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
10824
+ attestation_refs: z.array(AttestationReferenceSchema.and(z.object({
10825
+ subject: AttestationSubjectSchema.and(z.object({
10826
+ type: z.literal("resource"),
10827
+ resource_type: z.literal("https://adcontextprotocol.org/claims/subjects/audience-evidence"),
10828
+ content_digest: z.string().regex(new RegExp("^sha256:[a-f0-9]{64}$"))
10829
+ }).passthrough())
10830
+ }).passthrough())).optional(),
10831
+ ext: ExtensionObjectSchema.optional()
10859
10832
  }).passthrough()).merge(z.object({
10860
- configuration: ReportingDeliveryConfigurationSchema,
10861
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
10862
- destination_ref: z.string().min(1).max(255).optional(),
10863
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10864
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10865
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10866
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10867
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10868
- current_coverage: ReportingCoverageSchema.optional(),
10869
- setup: z.object({
10870
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
10871
- message: z.string().min(1).max(2e3),
10872
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
10873
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
10874
- }).passthrough().optional(),
10875
- issues: z.array(ReportingStatusIssueSchema).optional()
10876
- }).passthrough()).merge(z.object({
10877
- configuration: ReportingDeliveryConfigurationSchema,
10878
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
10879
- destination_ref: z.string().min(1).max(255).optional(),
10880
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10881
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10882
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10883
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10884
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10885
- current_coverage: ReportingCoverageSchema.optional(),
10886
- setup: z.object({
10887
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
10888
- message: z.string().min(1).max(2e3),
10889
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
10890
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
10891
- }).passthrough().optional(),
10892
- issues: z.array(ReportingStatusIssueSchema).optional()
10893
- }).passthrough()).merge(z.object({
10894
- configuration: ReportingDeliveryConfigurationSchema,
10895
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
10896
- destination_ref: z.string().min(1).max(255).optional(),
10897
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10898
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10899
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10900
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10901
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10902
- current_coverage: ReportingCoverageSchema.optional(),
10903
- setup: z.object({
10904
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
10905
- message: z.string().min(1).max(2e3),
10906
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
10907
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
10908
- }).passthrough().optional(),
10909
- issues: z.array(ReportingStatusIssueSchema).optional()
10910
- }).passthrough()).merge(z.object({
10911
- configuration: ReportingDeliveryConfigurationSchema,
10912
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
10913
- destination_ref: z.string().min(1).max(255).optional(),
10914
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10915
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10916
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10917
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10918
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10919
- current_coverage: ReportingCoverageSchema.optional(),
10920
- setup: z.object({
10921
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
10922
- message: z.string().min(1).max(2e3),
10923
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
10924
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
10925
- }).passthrough().optional(),
10926
- issues: z.array(ReportingStatusIssueSchema).optional()
10927
- }).passthrough()).merge(z.object({
10928
- configuration: ReportingDeliveryConfigurationSchema,
10929
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
10930
- destination_ref: z.string().min(1).max(255).optional(),
10931
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10932
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10933
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10934
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10935
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10936
- current_coverage: ReportingCoverageSchema.optional(),
10937
- setup: z.object({
10938
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
10939
- message: z.string().min(1).max(2e3),
10940
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
10941
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
10942
- }).passthrough().optional(),
10943
- issues: z.array(ReportingStatusIssueSchema).optional()
10944
- }).passthrough()).merge(z.object({
10945
- configuration: ReportingDeliveryConfigurationSchema,
10946
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
10947
- destination_ref: z.string().min(1).max(255).optional(),
10948
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10949
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10950
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10951
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10952
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10953
- current_coverage: ReportingCoverageSchema.optional(),
10954
- setup: z.object({
10955
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
10956
- message: z.string().min(1).max(2e3),
10957
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
10958
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
10959
- }).passthrough().optional(),
10960
- issues: z.array(ReportingStatusIssueSchema).optional()
10961
- }).passthrough()).merge(z.object({
10962
- configuration: ReportingDeliveryConfigurationSchema,
10963
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
10964
- destination_ref: z.string().min(1).max(255).optional(),
10965
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10966
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10967
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10968
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10969
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10970
- current_coverage: ReportingCoverageSchema.optional(),
10971
- setup: z.object({
10972
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
10973
- message: z.string().min(1).max(2e3),
10974
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
10975
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
10976
- }).passthrough().optional(),
10977
- issues: z.array(ReportingStatusIssueSchema).optional()
10978
- }).passthrough()).merge(z.object({
10979
- configuration: ReportingDeliveryConfigurationSchema,
10980
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
10981
- destination_ref: z.string().min(1).max(255).optional(),
10982
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10983
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10984
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10985
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10986
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10987
- current_coverage: ReportingCoverageSchema.optional(),
10988
- setup: z.object({
10989
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
10990
- message: z.string().min(1).max(2e3),
10991
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
10992
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
10993
- }).passthrough().optional(),
10994
- issues: z.array(ReportingStatusIssueSchema).optional()
10995
- }).passthrough()).merge(z.object({
10996
- configuration: ReportingDeliveryConfigurationSchema,
10997
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
10998
- destination_ref: z.string().min(1).max(255).optional(),
10999
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11000
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11001
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11002
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11003
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11004
- current_coverage: ReportingCoverageSchema.optional(),
11005
- setup: z.object({
11006
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
11007
- message: z.string().min(1).max(2e3),
11008
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
11009
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
11010
- }).passthrough().optional(),
11011
- issues: z.array(ReportingStatusIssueSchema).optional()
11012
- }).passthrough()).merge(z.object({
11013
- configuration: ReportingDeliveryConfigurationSchema,
11014
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
11015
- destination_ref: z.string().min(1).max(255).optional(),
11016
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11017
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11018
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11019
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11020
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11021
- current_coverage: ReportingCoverageSchema.optional(),
11022
- setup: z.object({
11023
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
11024
- message: z.string().min(1).max(2e3),
11025
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
11026
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
11027
- }).passthrough().optional(),
11028
- issues: z.array(ReportingStatusIssueSchema).optional()
11029
- }).passthrough()).merge(z.object({
11030
- configuration: ReportingDeliveryConfigurationSchema,
11031
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
11032
- destination_ref: z.string().min(1).max(255).optional(),
11033
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11034
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11035
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11036
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11037
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11038
- current_coverage: ReportingCoverageSchema.optional(),
11039
- setup: z.object({
11040
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
11041
- message: z.string().min(1).max(2e3),
11042
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
11043
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
11044
- }).passthrough().optional(),
11045
- issues: z.array(ReportingStatusIssueSchema).optional()
11046
- }).passthrough()).merge(z.object({
11047
- configuration: ReportingDeliveryConfigurationSchema,
11048
- state: ReportingDeliveryConfigurationLifecycleStateSchema,
11049
- destination_ref: z.string().min(1).max(255).optional(),
11050
- validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11051
- activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11052
- deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11053
- publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11054
- seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11055
- current_coverage: ReportingCoverageSchema.optional(),
11056
- setup: z.object({
11057
- action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
11058
- message: z.string().min(1).max(2e3),
11059
- url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
11060
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
11061
- }).passthrough().optional(),
11062
- issues: z.array(ReportingStatusIssueSchema).optional()
11063
- }).passthrough());
11064
- const AudienceEvidenceSchema = z.object({}).passthrough().merge(z.object({}).passthrough()).merge(z.object({}).passthrough()).merge(z.object({
11065
- evidence_id: z.string().min(1),
11066
- snapshot_id: z.string().min(1),
11067
- version: z.string().min(1),
11068
- content_digest: z.string().regex(new RegExp("^sha256:[a-f0-9]{64}$")),
11069
- audience: AudienceCharacteristicSchema,
11070
- relationship: z.union([z.literal("composition"), z.literal("index"), z.literal("reach_estimate")]),
11071
- value: z.number().gte(0),
11072
- unit: z.union([z.literal("fraction"), z.literal("ratio"), z.literal("count")]),
11073
- baseline: z.object({
11074
- system: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI"),
11075
- population_id: z.string().min(1),
11076
- version: z.string().min(1),
11077
- description: z.string().optional()
11078
- }).passthrough(),
11079
- evidence_type: z.union([z.literal("measured"), z.literal("forecast"), z.literal("seller_declared")]),
11080
- methodology: AudienceEvidenceMethodologySchema,
11081
- subject_type: AudienceSubjectTypeSchema,
11082
- resolution_method: AudienceResolutionMethodSchema.optional(),
11083
- provider: BrandReferenceSchema,
11084
- measurement_window: DateRangeSchema,
11085
- sample_size: z.number().int().gte(1).optional(),
11086
- confidence: z.number().gte(0).lte(1).optional(),
11087
- last_updated: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time"),
11088
- methodology_url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
11089
- attestation_refs: z.array(AttestationReferenceSchema.and(z.object({
11090
- subject: AttestationSubjectSchema.and(z.object({
11091
- type: z.literal("resource"),
11092
- resource_type: z.literal("https://adcontextprotocol.org/claims/subjects/audience-evidence"),
11093
- content_digest: z.string().regex(new RegExp("^sha256:[a-f0-9]{64}$"))
11094
- }).passthrough())
11095
- }).passthrough())).optional(),
11096
- ext: ExtensionObjectSchema.optional()
11097
- }).passthrough()).merge(z.object({
11098
- evidence_id: z.string().min(1),
11099
- snapshot_id: z.string().min(1),
11100
- version: z.string().min(1),
11101
- content_digest: z.string().regex(new RegExp("^sha256:[a-f0-9]{64}$")),
11102
- audience: AudienceCharacteristicSchema,
11103
- relationship: z.union([z.literal("composition"), z.literal("index"), z.literal("reach_estimate")]),
11104
- value: z.number().gte(0),
11105
- unit: z.union([z.literal("fraction"), z.literal("ratio"), z.literal("count")]),
11106
- baseline: z.object({
11107
- system: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI"),
11108
- population_id: z.string().min(1),
11109
- version: z.string().min(1),
11110
- description: z.string().optional()
11111
- }).passthrough(),
11112
- evidence_type: z.union([z.literal("measured"), z.literal("forecast"), z.literal("seller_declared")]),
11113
- methodology: AudienceEvidenceMethodologySchema,
11114
- subject_type: AudienceSubjectTypeSchema,
11115
- resolution_method: AudienceResolutionMethodSchema.optional(),
11116
- provider: BrandReferenceSchema,
11117
- measurement_window: DateRangeSchema,
11118
- sample_size: z.number().int().gte(1).optional(),
11119
- confidence: z.number().gte(0).lte(1).optional(),
11120
- last_updated: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time"),
11121
- methodology_url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
11122
- attestation_refs: z.array(AttestationReferenceSchema.and(z.object({
11123
- subject: AttestationSubjectSchema.and(z.object({
11124
- type: z.literal("resource"),
11125
- resource_type: z.literal("https://adcontextprotocol.org/claims/subjects/audience-evidence"),
11126
- content_digest: z.string().regex(new RegExp("^sha256:[a-f0-9]{64}$"))
11127
- }).passthrough())
11128
- }).passthrough())).optional(),
11129
- ext: ExtensionObjectSchema.optional()
11130
- }).passthrough());
11131
- const PlacementSchema = z.object({}).passthrough().merge(z.object({}).passthrough()).merge(z.object({}).passthrough()).and(z.union([z.object({}).passthrough(), z.object({}).passthrough()])).and(z.object({
11132
- kind: z.union([z.literal("publisher_ref"), z.literal("seller_inline")]),
11133
- placement_id: z.string(),
11134
- publisher_domain: z.string().regex(new RegExp("^[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$")).optional(),
11135
- seller_agent: SellerAgentReferenceSchema.optional(),
11136
- name: z.string().optional(),
11137
- description: z.string().optional(),
11138
- mode: z.union([z.literal("targetable"), z.literal("included")]),
11139
- tags: z.array(z.string()).optional(),
11140
- format_ids: z.array(FormatReferenceStructuredObjectSchema).optional(),
11141
- format_options: z.array(ProductFormatDeclarationSchema).optional(),
11142
- video_placement_types: z.array(VideoPlacementTypeSchema).optional(),
11143
- audio_distribution_types: z.array(AudioDistributionTypeSchema).optional(),
11144
- sponsored_placement_types: z.array(SponsoredPlacementTypeSchema).optional(),
11145
- social_placement_surfaces: z.array(SocialPlacementSurfaceSchema).optional(),
11146
- identifiers: z.array(z.object({
11147
- type: PropertyIdentifierTypesSchema,
11148
- value: z.string()
11149
- }).passthrough()).optional(),
11150
- dooh_placement_attributes: ProductDOOHPlacementAttributesSchema.optional()
11151
- }).passthrough());
11152
- const PricingOptionSchema = z.union([CPMPricingOptionSchema, VCPMPricingOptionSchema, CPCPricingOptionSchema, CPCVPricingOptionSchema, CPVPricingOptionSchema, CPPPricingOptionSchema, CPAPricingOptionSchema, RevenueSharePricingOptionSchema, FlatRatePricingOptionSchema, TimeBasedPricingOptionSchema]);
11153
- const AudienceEvidenceSelectionSchema = z.object({
11154
- evidence_id: z.string().min(1),
11155
- snapshot_id: z.string().min(1),
11156
- version: z.string().min(1),
11157
- content_digest: z.string().regex(new RegExp("^sha256:[a-f0-9]{64}$")),
11158
- decision_use: z.union([z.literal("recommendation"), z.literal("eligibility"), z.literal("package_construction")]),
11159
- evidence: AudienceEvidenceSchema.optional(),
11160
- attestation_evaluations: z.array(z.object({
11161
- reference: AttestationReferenceSchema,
11162
- evaluation: AttestationEvaluationSchema.and(z.object({
11163
- action_binding: z.object({
11164
- action_type: z.literal("https://adcontextprotocol.org/actions/audience-evidence-evaluation"),
11165
- action_id: z.string(),
11166
- action_digest: z.string()
11167
- }).passthrough()
11168
- }).passthrough())
11169
- }).passthrough()).optional(),
11170
- ext: ExtensionObjectSchema.optional()
11171
- }).passthrough();
11172
- const InstallmentSchema = z.object({
11173
- installment_id: z.string(),
11174
- collection_ref: CollectionReferenceSchema.optional(),
11175
- collection_id: z.string().optional(),
11176
- name: z.string().optional(),
11177
- season: z.string().optional(),
11178
- installment_number: z.string().optional(),
11179
- scheduled_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11180
- status: InstallmentStatusSchema.optional(),
11181
- duration_seconds: z.number().int().gte(0).optional(),
11182
- flexible_end: z.boolean().optional(),
11183
- valid_until: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
11184
- content_rating: ContentRatingSchema.optional(),
11185
- topics: z.array(z.string()).optional(),
11186
- special: SpecialSchema.optional(),
11187
- guest_talent: z.array(TalentSchema).optional(),
11188
- ad_inventory: AdInventoryConfigurationSchema.optional(),
11189
- deadlines: InstallmentDeadlinesSchema.optional(),
11190
- derivative_of: z.object({
11191
- installment_id: z.string(),
11192
- type: DerivativeTypeSchema
10833
+ evidence_id: z.string().min(1),
10834
+ snapshot_id: z.string().min(1),
10835
+ version: z.string().min(1),
10836
+ content_digest: z.string().regex(new RegExp("^sha256:[a-f0-9]{64}$")),
10837
+ audience: AudienceCharacteristicSchema,
10838
+ relationship: z.union([z.literal("composition"), z.literal("index"), z.literal("reach_estimate")]),
10839
+ value: z.number().gte(0),
10840
+ unit: z.union([z.literal("fraction"), z.literal("ratio"), z.literal("count")]),
10841
+ baseline: z.object({
10842
+ system: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI"),
10843
+ population_id: z.string().min(1),
10844
+ version: z.string().min(1),
10845
+ description: z.string().optional()
10846
+ }).passthrough(),
10847
+ evidence_type: z.union([z.literal("measured"), z.literal("forecast"), z.literal("seller_declared")]),
10848
+ methodology: AudienceEvidenceMethodologySchema,
10849
+ subject_type: AudienceSubjectTypeSchema,
10850
+ resolution_method: AudienceResolutionMethodSchema.optional(),
10851
+ provider: BrandReferenceSchema,
10852
+ measurement_window: DateRangeSchema,
10853
+ sample_size: z.number().int().gte(1).optional(),
10854
+ confidence: z.number().gte(0).lte(1).optional(),
10855
+ last_updated: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time"),
10856
+ methodology_url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
10857
+ attestation_refs: z.array(AttestationReferenceSchema.and(z.object({
10858
+ subject: AttestationSubjectSchema.and(z.object({
10859
+ type: z.literal("resource"),
10860
+ resource_type: z.literal("https://adcontextprotocol.org/claims/subjects/audience-evidence"),
10861
+ content_digest: z.string().regex(new RegExp("^sha256:[a-f0-9]{64}$"))
10862
+ }).passthrough())
10863
+ }).passthrough())).optional(),
10864
+ ext: ExtensionObjectSchema.optional()
10865
+ }).passthrough());
10866
+ const PlacementSchema = z.object({}).passthrough().merge(z.object({}).passthrough()).merge(z.object({}).passthrough()).and(z.union([z.object({}).passthrough(), z.object({}).passthrough()])).and(z.object({
10867
+ kind: z.union([z.literal("publisher_ref"), z.literal("seller_inline")]),
10868
+ placement_id: z.string(),
10869
+ publisher_domain: z.string().regex(new RegExp("^[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$")).optional(),
10870
+ seller_agent: SellerAgentReferenceSchema.optional(),
10871
+ name: z.string().optional(),
10872
+ description: z.string().optional(),
10873
+ mode: z.union([z.literal("targetable"), z.literal("included")]),
10874
+ tags: z.array(z.string()).optional(),
10875
+ format_ids: z.array(FormatReferenceStructuredObjectSchema).optional(),
10876
+ format_options: z.array(ProductFormatDeclarationSchema).optional(),
10877
+ video_placement_types: z.array(VideoPlacementTypeSchema).optional(),
10878
+ audio_distribution_types: z.array(AudioDistributionTypeSchema).optional(),
10879
+ sponsored_placement_types: z.array(SponsoredPlacementTypeSchema).optional(),
10880
+ social_placement_surfaces: z.array(SocialPlacementSurfaceSchema).optional(),
10881
+ identifiers: z.array(z.object({
10882
+ type: PropertyIdentifierTypesSchema,
10883
+ value: z.string()
10884
+ }).passthrough()).optional(),
10885
+ dooh_placement_attributes: ProductDOOHPlacementAttributesSchema.optional()
10886
+ }).passthrough());
10887
+ const PricingOptionSchema = z.union([CPMPricingOptionSchema, VCPMPricingOptionSchema, CPCPricingOptionSchema, CPCVPricingOptionSchema, CPVPricingOptionSchema, CPPPricingOptionSchema, CPAPricingOptionSchema, RevenueSharePricingOptionSchema, FlatRatePricingOptionSchema, TimeBasedPricingOptionSchema]);
10888
+ const AudienceEvidenceSelectionSchema = z.object({
10889
+ evidence_id: z.string().min(1),
10890
+ snapshot_id: z.string().min(1),
10891
+ version: z.string().min(1),
10892
+ content_digest: z.string().regex(new RegExp("^sha256:[a-f0-9]{64}$")),
10893
+ decision_use: z.union([z.literal("recommendation"), z.literal("eligibility"), z.literal("package_construction")]),
10894
+ evidence: AudienceEvidenceSchema.optional(),
10895
+ attestation_evaluations: z.array(z.object({
10896
+ reference: AttestationReferenceSchema,
10897
+ evaluation: AttestationEvaluationSchema.and(z.object({
10898
+ action_binding: z.object({
10899
+ action_type: z.literal("https://adcontextprotocol.org/actions/audience-evidence-evaluation"),
10900
+ action_id: z.string(),
10901
+ action_digest: z.string()
10902
+ }).passthrough()
10903
+ }).passthrough())
10904
+ }).passthrough()).optional(),
10905
+ ext: ExtensionObjectSchema.optional()
10906
+ }).passthrough();
10907
+ const InstallmentSchema = z.object({
10908
+ installment_id: z.string(),
10909
+ collection_ref: CollectionReferenceSchema.optional(),
10910
+ collection_id: z.string().optional(),
10911
+ name: z.string().optional(),
10912
+ season: z.string().optional(),
10913
+ installment_number: z.string().optional(),
10914
+ scheduled_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10915
+ status: InstallmentStatusSchema.optional(),
10916
+ duration_seconds: z.number().int().gte(0).optional(),
10917
+ flexible_end: z.boolean().optional(),
10918
+ valid_until: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
10919
+ content_rating: ContentRatingSchema.optional(),
10920
+ topics: z.array(z.string()).optional(),
10921
+ special: SpecialSchema.optional(),
10922
+ guest_talent: z.array(TalentSchema).optional(),
10923
+ ad_inventory: AdInventoryConfigurationSchema.optional(),
10924
+ deadlines: InstallmentDeadlinesSchema.optional(),
10925
+ derivative_of: z.object({
10926
+ installment_id: z.string(),
10927
+ type: DerivativeTypeSchema
11193
10928
  }).passthrough().optional(),
11194
10929
  ext: ExtensionObjectSchema.optional()
11195
10930
  }).passthrough();
@@ -11957,53 +11692,6 @@ const ContentStandardsSchema = z.object({
11957
11692
  pricing_options: z.array(VendorPricingOptionSchema).optional(),
11958
11693
  ext: ExtensionObjectSchema.optional()
11959
11694
  }).passthrough();
11960
- const AccountSchema = z.object({
11961
- account_id: z.string(),
11962
- name: z.string(),
11963
- advertiser: z.string().optional(),
11964
- billing_proxy: z.string().optional(),
11965
- status: AccountStatusSchema,
11966
- brand: BrandReferenceSchema.optional(),
11967
- operator: z.string().regex(new RegExp("^[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$")).optional(),
11968
- operator_unit: OperatorUnitSchema.optional(),
11969
- revision: z.number().int().gte(1).optional(),
11970
- identity_change: AccountIdentityChangeSchema.optional(),
11971
- currency: z.string().regex(new RegExp("^[A-Z]{3}$")).optional(),
11972
- timezone: z.string().min(1).optional(),
11973
- billing: BillingPartySchema.optional(),
11974
- billing_entity: BusinessEntitySchema.optional(),
11975
- destination_billing_entity: z.object({}).passthrough().optional(),
11976
- rate_card: z.string().optional(),
11977
- payment_terms: PaymentTermsSchema.optional(),
11978
- credit_limit: z.object({
11979
- amount: z.number().gte(0),
11980
- currency: z.string().regex(new RegExp("^[A-Z]{3}$"))
11981
- }).passthrough().optional(),
11982
- setup: z.object({
11983
- url: z.string().optional(),
11984
- message: z.string(),
11985
- expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
11986
- }).passthrough().optional(),
11987
- account_scope: AccountScopeSchema.optional(),
11988
- governance_agents: z.tuple([z.object({
11989
- url: z.string()
11990
- }).passthrough()]).optional(),
11991
- reporting_bucket: z.object({
11992
- protocol: CloudStorageProtocolSchema,
11993
- bucket: z.string().min(3).max(63).regex(new RegExp("^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$")),
11994
- prefix: z.string().max(512).regex(new RegExp("^[a-zA-Z0-9/_.-]+$")).optional(),
11995
- region: z.string().max(64).regex(new RegExp("^[a-z0-9-]+$")).optional(),
11996
- format: z.union([z.literal("jsonl"), z.literal("csv"), z.literal("parquet"), z.literal("avro"), z.literal("orc")]).optional(),
11997
- compression: z.union([z.literal("gzip"), z.literal("none")]).optional(),
11998
- file_retention_days: z.number().int().gte(1),
11999
- setup_instructions: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional()
12000
- }).passthrough().optional(),
12001
- sandbox: z.boolean().optional(),
12002
- notification_configs: z.array(NotificationConfigSchema).optional(),
12003
- reporting_delivery_configs: z.array(ReportingDeliveryConfigurationStateSchema).optional(),
12004
- webhook_activity: z.array(WebhookActivityRecordSchema).optional(),
12005
- ext: ExtensionObjectSchema.optional()
12006
- }).passthrough();
12007
11695
  const OfferingAssetGroupSchema = z.object({
12008
11696
  asset_group_id: z.string(),
12009
11697
  asset_type: AssetContentTypeSchema,
@@ -13475,6 +13163,25 @@ const PackageRequestSchema = AdCPVersionEnvelopeSchema.merge(z.object({}).passth
13475
13163
  context: ContextObjectSchema.optional(),
13476
13164
  ext: ExtensionObjectSchema.optional()
13477
13165
  }).passthrough());
13166
+ const ReportingDeliveryConfigurationSchema = z.object({}).passthrough().merge(z.object({}).passthrough()).merge(z.object({
13167
+ delivery_config_id: z.string().min(1).max(64).regex(new RegExp("^[A-Za-z0-9_.:-]{1,64}$")),
13168
+ delivery_config_version: z.number().int().gte(1),
13169
+ offering_id: z.string().min(1).max(128).regex(new RegExp("^[A-Za-z0-9_.:-]{1,128}$")),
13170
+ active: z.boolean(),
13171
+ feed_purpose: ReportingFeedPurposeSchema,
13172
+ report_definition_id: z.string().min(1).max(255).regex(new RegExp("^[A-Za-z0-9_.:-]{1,255}$")),
13173
+ reporting_profile: z.string().min(1).max(128).regex(new RegExp("^[A-Za-z0-9_.:-]{1,128}$")),
13174
+ scope: z.object({
13175
+ all_media_buys: z.literal(true).optional(),
13176
+ media_buy_ids: z.array(ReportingMediaBuyIDSchema).optional()
13177
+ }).passthrough(),
13178
+ coverage_requirement: z.union([z.literal("full"), z.literal("allow_partial")]),
13179
+ required_finality: ReportingFinalitySchema,
13180
+ reconciliation_mode: ReportingReconciliationModeSchema,
13181
+ schedule: ReportingScheduleSchema,
13182
+ method: ReportingDeliveryMethodSchema.optional(),
13183
+ revocation_effective_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13184
+ }).passthrough());
13478
13185
  const PackageSchema = z.object({}).passthrough().merge(z.object({
13479
13186
  package_id: z.string(),
13480
13187
  product_id: z.string().optional(),
@@ -13514,37 +13221,284 @@ const PackageSchema = z.object({}).passthrough().merge(z.object({
13514
13221
  reason: z.string().max(500).optional(),
13515
13222
  acknowledged_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13516
13223
  }).passthrough().optional(),
13517
- agency_estimate_number: z.string().max(100).optional(),
13518
- creative_deadline: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13519
- context: ContextObjectSchema.optional(),
13520
- ext: ExtensionObjectSchema.optional()
13224
+ agency_estimate_number: z.string().max(100).optional(),
13225
+ creative_deadline: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13226
+ context: ContextObjectSchema.optional(),
13227
+ ext: ExtensionObjectSchema.optional()
13228
+ }).passthrough());
13229
+ const ReportingDeliveryConfigurationStateSchema = z.object({}).passthrough().merge(z.object({}).passthrough()).merge(z.object({}).passthrough()).merge(z.object({
13230
+ configuration: ReportingDeliveryConfigurationSchema,
13231
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13232
+ destination_ref: z.string().min(1).max(255).optional(),
13233
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13234
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13235
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13236
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13237
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13238
+ current_coverage: ReportingCoverageSchema.optional(),
13239
+ setup: z.object({
13240
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13241
+ message: z.string().min(1).max(2e3),
13242
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13243
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13244
+ }).passthrough().optional(),
13245
+ issues: z.array(ReportingStatusIssueSchema).optional()
13246
+ }).passthrough()).merge(z.object({
13247
+ configuration: ReportingDeliveryConfigurationSchema,
13248
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13249
+ destination_ref: z.string().min(1).max(255).optional(),
13250
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13251
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13252
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13253
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13254
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13255
+ current_coverage: ReportingCoverageSchema.optional(),
13256
+ setup: z.object({
13257
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13258
+ message: z.string().min(1).max(2e3),
13259
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13260
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13261
+ }).passthrough().optional(),
13262
+ issues: z.array(ReportingStatusIssueSchema).optional()
13263
+ }).passthrough()).merge(z.object({
13264
+ configuration: ReportingDeliveryConfigurationSchema,
13265
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13266
+ destination_ref: z.string().min(1).max(255).optional(),
13267
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13268
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13269
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13270
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13271
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13272
+ current_coverage: ReportingCoverageSchema.optional(),
13273
+ setup: z.object({
13274
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13275
+ message: z.string().min(1).max(2e3),
13276
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13277
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13278
+ }).passthrough().optional(),
13279
+ issues: z.array(ReportingStatusIssueSchema).optional()
13280
+ }).passthrough()).merge(z.object({
13281
+ configuration: ReportingDeliveryConfigurationSchema,
13282
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13283
+ destination_ref: z.string().min(1).max(255).optional(),
13284
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13285
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13286
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13287
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13288
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13289
+ current_coverage: ReportingCoverageSchema.optional(),
13290
+ setup: z.object({
13291
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13292
+ message: z.string().min(1).max(2e3),
13293
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13294
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13295
+ }).passthrough().optional(),
13296
+ issues: z.array(ReportingStatusIssueSchema).optional()
13297
+ }).passthrough()).merge(z.object({
13298
+ configuration: ReportingDeliveryConfigurationSchema,
13299
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13300
+ destination_ref: z.string().min(1).max(255).optional(),
13301
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13302
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13303
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13304
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13305
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13306
+ current_coverage: ReportingCoverageSchema.optional(),
13307
+ setup: z.object({
13308
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13309
+ message: z.string().min(1).max(2e3),
13310
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13311
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13312
+ }).passthrough().optional(),
13313
+ issues: z.array(ReportingStatusIssueSchema).optional()
13314
+ }).passthrough()).merge(z.object({
13315
+ configuration: ReportingDeliveryConfigurationSchema,
13316
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13317
+ destination_ref: z.string().min(1).max(255).optional(),
13318
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13319
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13320
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13321
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13322
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13323
+ current_coverage: ReportingCoverageSchema.optional(),
13324
+ setup: z.object({
13325
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13326
+ message: z.string().min(1).max(2e3),
13327
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13328
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13329
+ }).passthrough().optional(),
13330
+ issues: z.array(ReportingStatusIssueSchema).optional()
13331
+ }).passthrough()).merge(z.object({
13332
+ configuration: ReportingDeliveryConfigurationSchema,
13333
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13334
+ destination_ref: z.string().min(1).max(255).optional(),
13335
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13336
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13337
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13338
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13339
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13340
+ current_coverage: ReportingCoverageSchema.optional(),
13341
+ setup: z.object({
13342
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13343
+ message: z.string().min(1).max(2e3),
13344
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13345
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13346
+ }).passthrough().optional(),
13347
+ issues: z.array(ReportingStatusIssueSchema).optional()
13348
+ }).passthrough()).merge(z.object({
13349
+ configuration: ReportingDeliveryConfigurationSchema,
13350
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13351
+ destination_ref: z.string().min(1).max(255).optional(),
13352
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13353
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13354
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13355
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13356
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13357
+ current_coverage: ReportingCoverageSchema.optional(),
13358
+ setup: z.object({
13359
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13360
+ message: z.string().min(1).max(2e3),
13361
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13362
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13363
+ }).passthrough().optional(),
13364
+ issues: z.array(ReportingStatusIssueSchema).optional()
13365
+ }).passthrough()).merge(z.object({
13366
+ configuration: ReportingDeliveryConfigurationSchema,
13367
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13368
+ destination_ref: z.string().min(1).max(255).optional(),
13369
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13370
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13371
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13372
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13373
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13374
+ current_coverage: ReportingCoverageSchema.optional(),
13375
+ setup: z.object({
13376
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13377
+ message: z.string().min(1).max(2e3),
13378
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13379
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13380
+ }).passthrough().optional(),
13381
+ issues: z.array(ReportingStatusIssueSchema).optional()
13382
+ }).passthrough()).merge(z.object({
13383
+ configuration: ReportingDeliveryConfigurationSchema,
13384
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13385
+ destination_ref: z.string().min(1).max(255).optional(),
13386
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13387
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13388
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13389
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13390
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13391
+ current_coverage: ReportingCoverageSchema.optional(),
13392
+ setup: z.object({
13393
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13394
+ message: z.string().min(1).max(2e3),
13395
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13396
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13397
+ }).passthrough().optional(),
13398
+ issues: z.array(ReportingStatusIssueSchema).optional()
13399
+ }).passthrough()).merge(z.object({
13400
+ configuration: ReportingDeliveryConfigurationSchema,
13401
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13402
+ destination_ref: z.string().min(1).max(255).optional(),
13403
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13404
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13405
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13406
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13407
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13408
+ current_coverage: ReportingCoverageSchema.optional(),
13409
+ setup: z.object({
13410
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13411
+ message: z.string().min(1).max(2e3),
13412
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13413
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13414
+ }).passthrough().optional(),
13415
+ issues: z.array(ReportingStatusIssueSchema).optional()
13416
+ }).passthrough()).merge(z.object({
13417
+ configuration: ReportingDeliveryConfigurationSchema,
13418
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13419
+ destination_ref: z.string().min(1).max(255).optional(),
13420
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13421
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13422
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13423
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13424
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13425
+ current_coverage: ReportingCoverageSchema.optional(),
13426
+ setup: z.object({
13427
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13428
+ message: z.string().min(1).max(2e3),
13429
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13430
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13431
+ }).passthrough().optional(),
13432
+ issues: z.array(ReportingStatusIssueSchema).optional()
13433
+ }).passthrough()).merge(z.object({
13434
+ configuration: ReportingDeliveryConfigurationSchema,
13435
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13436
+ destination_ref: z.string().min(1).max(255).optional(),
13437
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13438
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13439
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13440
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13441
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13442
+ current_coverage: ReportingCoverageSchema.optional(),
13443
+ setup: z.object({
13444
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13445
+ message: z.string().min(1).max(2e3),
13446
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13447
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13448
+ }).passthrough().optional(),
13449
+ issues: z.array(ReportingStatusIssueSchema).optional()
13450
+ }).passthrough()).merge(z.object({
13451
+ configuration: ReportingDeliveryConfigurationSchema,
13452
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13453
+ destination_ref: z.string().min(1).max(255).optional(),
13454
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13455
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13456
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13457
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13458
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13459
+ current_coverage: ReportingCoverageSchema.optional(),
13460
+ setup: z.object({
13461
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13462
+ message: z.string().min(1).max(2e3),
13463
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13464
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13465
+ }).passthrough().optional(),
13466
+ issues: z.array(ReportingStatusIssueSchema).optional()
13467
+ }).passthrough()).merge(z.object({
13468
+ configuration: ReportingDeliveryConfigurationSchema,
13469
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13470
+ destination_ref: z.string().min(1).max(255).optional(),
13471
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13472
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13473
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13474
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13475
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13476
+ current_coverage: ReportingCoverageSchema.optional(),
13477
+ setup: z.object({
13478
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13479
+ message: z.string().min(1).max(2e3),
13480
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13481
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13482
+ }).passthrough().optional(),
13483
+ issues: z.array(ReportingStatusIssueSchema).optional()
13484
+ }).passthrough()).merge(z.object({
13485
+ configuration: ReportingDeliveryConfigurationSchema,
13486
+ state: ReportingDeliveryConfigurationLifecycleStateSchema,
13487
+ destination_ref: z.string().min(1).max(255).optional(),
13488
+ validated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13489
+ activated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13490
+ deactivated_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13491
+ publication_stopped_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13492
+ seller_managed_access_ends_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
13493
+ current_coverage: ReportingCoverageSchema.optional(),
13494
+ setup: z.object({
13495
+ action: z.union([z.literal("grant_access"), z.literal("activate_recipient"), z.literal("authorize_provider"), z.literal("repair_access")]),
13496
+ message: z.string().min(1).max(2e3),
13497
+ url: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional(),
13498
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13499
+ }).passthrough().optional(),
13500
+ issues: z.array(ReportingStatusIssueSchema).optional()
13521
13501
  }).passthrough());
13522
- const CreateMediaBuySuccessSchema = z.object({
13523
- proposal_id: z.string().min(1).optional(),
13524
- media_buy_id: z.string(),
13525
- name: z.string().min(1).max(255).regex(/\S/).optional(),
13526
- account: AccountSchema.optional(),
13527
- invoice_recipient: BusinessEntitySchema.optional(),
13528
- media_buy_status: MediaBuyStatusSchema.optional(),
13529
- confirmed_at: z.iso.datetime().optional().nullable(),
13530
- creative_deadline: z.iso.datetime().optional(),
13531
- revision: z.int().min(1).optional(),
13532
- currency: z.string().regex(/^[A-Z]{3}$/).optional(),
13533
- total_budget: z.number().min(0).optional(),
13534
- daily_budget_cap: z.number().min(0).optional(),
13535
- budget_cap_timezone: z.string().optional(),
13536
- budget_allocation: BudgetAllocationSchema.optional(),
13537
- pacing: PacingSchema.optional(),
13538
- bidding: BiddingPolicySchema.optional(),
13539
- valid_actions: z.array(MediaBuyValidActionSchema).optional(),
13540
- available_actions: z.array(MediaBuyAvailableActionSchema).optional(),
13541
- packages: z.array(PackageSchema),
13542
- planned_delivery: PlannedDeliverySchema.optional(),
13543
- warnings: z.array(WarningSchema).optional(),
13544
- sandbox: z.boolean().optional(),
13545
- context: ContextObjectSchema.optional(),
13546
- ext: ExtensionObjectSchema.optional()
13547
- }).passthrough();
13548
13502
  const PackageUpdateSchema = z.object({
13549
13503
  package_id: z.string(),
13550
13504
  budget: z.number().min(0).optional().nullable(),
@@ -13606,6 +13560,53 @@ const UpdateMediaBuySuccessSchema = z.object({
13606
13560
  context: ContextObjectSchema.optional(),
13607
13561
  ext: ExtensionObjectSchema.optional()
13608
13562
  }).passthrough();
13563
+ const AccountSchema = z.object({
13564
+ account_id: z.string(),
13565
+ name: z.string(),
13566
+ advertiser: z.string().optional(),
13567
+ billing_proxy: z.string().optional(),
13568
+ status: AccountStatusSchema,
13569
+ brand: BrandReferenceSchema.optional(),
13570
+ operator: z.string().regex(new RegExp("^[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$")).optional(),
13571
+ operator_unit: OperatorUnitSchema.optional(),
13572
+ revision: z.number().int().gte(1).optional(),
13573
+ identity_change: AccountIdentityChangeSchema.optional(),
13574
+ currency: z.string().regex(new RegExp("^[A-Z]{3}$")).optional(),
13575
+ timezone: z.string().min(1).optional(),
13576
+ billing: BillingPartySchema.optional(),
13577
+ billing_entity: BusinessEntitySchema.optional(),
13578
+ destination_billing_entity: z.object({}).passthrough().optional(),
13579
+ rate_card: z.string().optional(),
13580
+ payment_terms: PaymentTermsSchema.optional(),
13581
+ credit_limit: z.object({
13582
+ amount: z.number().gte(0),
13583
+ currency: z.string().regex(new RegExp("^[A-Z]{3}$"))
13584
+ }).passthrough().optional(),
13585
+ setup: z.object({
13586
+ url: z.string().optional(),
13587
+ message: z.string(),
13588
+ expires_at: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional()
13589
+ }).passthrough().optional(),
13590
+ account_scope: AccountScopeSchema.optional(),
13591
+ governance_agents: z.tuple([z.object({
13592
+ url: z.string()
13593
+ }).passthrough()]).optional(),
13594
+ reporting_bucket: z.object({
13595
+ protocol: CloudStorageProtocolSchema,
13596
+ bucket: z.string().min(3).max(63).regex(new RegExp("^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$")),
13597
+ prefix: z.string().max(512).regex(new RegExp("^[a-zA-Z0-9/_.-]+$")).optional(),
13598
+ region: z.string().max(64).regex(new RegExp("^[a-z0-9-]+$")).optional(),
13599
+ format: z.union([z.literal("jsonl"), z.literal("csv"), z.literal("parquet"), z.literal("avro"), z.literal("orc")]).optional(),
13600
+ compression: z.union([z.literal("gzip"), z.literal("none")]).optional(),
13601
+ file_retention_days: z.number().int().gte(1),
13602
+ setup_instructions: z.string().regex(new RegExp("^https://")).refine(adcpJsonSchemaUri, "Invalid URI").optional()
13603
+ }).passthrough().optional(),
13604
+ sandbox: z.boolean().optional(),
13605
+ notification_configs: z.array(NotificationConfigSchema).optional(),
13606
+ reporting_delivery_configs: z.array(ReportingDeliveryConfigurationStateSchema).optional(),
13607
+ webhook_activity: z.array(WebhookActivityRecordSchema).optional(),
13608
+ ext: ExtensionObjectSchema.optional()
13609
+ }).passthrough();
13609
13610
  const PackageStatusSchema = z.object({
13610
13611
  package_id: z.string(),
13611
13612
  product_id: z.string().optional(),
@@ -16596,21 +16597,6 @@ const RefineProposalsResponseSchema = z.union([z.object({
16596
16597
  });
16597
16598
  });
16598
16599
  });
16599
- const CreateMediaBuyResponseSchema = z.object({
16600
- context_id: z.string().optional(),
16601
- context: ContextObjectSchema.optional(),
16602
- task_id: z.string().optional(),
16603
- status: TaskStatusSchema,
16604
- message: z.string().optional(),
16605
- timestamp: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
16606
- replayed: z.boolean().optional(),
16607
- adcp_error: ErrorSchema.optional(),
16608
- push_notification_config: PushNotificationConfigSchema.optional(),
16609
- governance_context: z.string().min(1).max(4096).regex(new RegExp("^[\\x20-\\x7E]+$")).optional(),
16610
- payload: z.object({}).passthrough().optional(),
16611
- adcp_version: z.string().regex(new RegExp("^(?:0|[1-9]\\d*)\\.(?:0|[1-9]\\d*)(?:-[a-zA-Z0-9](?:[a-zA-Z0-9.-]*[a-zA-Z0-9])?)?$")).optional(),
16612
- adcp_major_version: z.number().int().gte(1).lte(99).optional()
16613
- }).passthrough().and(z.union([CreateMediaBuySuccessSchema, CreateMediaBuyErrorSchema, CreateMediaBuySubmittedSchema]));
16614
16600
  const UpdateMediaBuyResponseSchema = z.object({
16615
16601
  context_id: z.string().optional(),
16616
16602
  context: ContextObjectSchema.optional(),
@@ -16679,6 +16665,32 @@ const CommittedMediaBuySchema = z.object({
16679
16665
  ext: ExtensionObjectSchema.optional(),
16680
16666
  replayed: z.literal(true).optional()
16681
16667
  }).passthrough();
16668
+ const CreateMediaBuySuccessSchema = z.object({
16669
+ proposal_id: z.string().min(1).optional(),
16670
+ media_buy_id: z.string(),
16671
+ name: z.string().min(1).max(255).regex(/\S/).optional(),
16672
+ account: AccountSchema.optional(),
16673
+ invoice_recipient: BusinessEntitySchema.optional(),
16674
+ media_buy_status: MediaBuyStatusSchema.optional(),
16675
+ confirmed_at: z.iso.datetime().optional().nullable(),
16676
+ creative_deadline: z.iso.datetime().optional(),
16677
+ revision: z.int().min(1).optional(),
16678
+ currency: z.string().regex(/^[A-Z]{3}$/).optional(),
16679
+ total_budget: z.number().min(0).optional(),
16680
+ daily_budget_cap: z.number().min(0).optional(),
16681
+ budget_cap_timezone: z.string().optional(),
16682
+ budget_allocation: BudgetAllocationSchema.optional(),
16683
+ pacing: PacingSchema.optional(),
16684
+ bidding: BiddingPolicySchema.optional(),
16685
+ valid_actions: z.array(MediaBuyValidActionSchema).optional(),
16686
+ available_actions: z.array(MediaBuyAvailableActionSchema).optional(),
16687
+ packages: z.array(PackageSchema),
16688
+ planned_delivery: PlannedDeliverySchema.optional(),
16689
+ warnings: z.array(WarningSchema).optional(),
16690
+ sandbox: z.boolean().optional(),
16691
+ context: ContextObjectSchema.optional(),
16692
+ ext: ExtensionObjectSchema.optional()
16693
+ }).passthrough();
16682
16694
  const AcquireRightsResponseSchema = z.object({
16683
16695
  context_id: z.string().optional(),
16684
16696
  context: ContextObjectSchema.optional(),
@@ -16925,6 +16937,21 @@ const ExplicitPackagesWithFixedAllocationSchema = z.object({
16925
16937
  }).passthrough().optional(),
16926
16938
  packages: z.array(PackageRequestSchema.and(z.object({}).passthrough()))
16927
16939
  }).passthrough();
16940
+ const CreateMediaBuyResponseSchema = z.object({
16941
+ context_id: z.string().optional(),
16942
+ context: ContextObjectSchema.optional(),
16943
+ task_id: z.string().optional(),
16944
+ status: TaskStatusSchema,
16945
+ message: z.string().optional(),
16946
+ timestamp: z.string().refine(adcpJsonSchemaDateTime, "Invalid date-time").optional(),
16947
+ replayed: z.boolean().optional(),
16948
+ adcp_error: ErrorSchema.optional(),
16949
+ push_notification_config: PushNotificationConfigSchema.optional(),
16950
+ governance_context: z.string().min(1).max(4096).regex(new RegExp("^[\\x20-\\x7E]+$")).optional(),
16951
+ payload: z.object({}).passthrough().optional(),
16952
+ adcp_version: z.string().regex(new RegExp("^(?:0|[1-9]\\d*)\\.(?:0|[1-9]\\d*)(?:-[a-zA-Z0-9](?:[a-zA-Z0-9.-]*[a-zA-Z0-9])?)?$")).optional(),
16953
+ adcp_major_version: z.number().int().gte(1).lte(99).optional()
16954
+ }).passthrough().and(z.union([CreateMediaBuySuccessSchema, CreateMediaBuyErrorSchema, CreateMediaBuySubmittedSchema]));
16928
16955
  const UpdateMediaBuyRequestSchema = z.object({
16929
16956
  adcp_version: z.string().regex(new RegExp("^(?:0|[1-9]\\d*)\\.(?:0|[1-9]\\d*)(?:-[a-zA-Z0-9](?:[a-zA-Z0-9.-]*[a-zA-Z0-9])?)?$")).optional(),
16930
16957
  adcp_major_version: z.number().int().gte(1).lte(99).optional(),