@adcp/sdk 14.0.0-beta.0 → 14.0.0-beta.1

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 (140) hide show
  1. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/account/get-account-financials-request.json +610 -0
  2. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/account/get-account-financials-response.json +1055 -0
  3. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/account/list-accounts-request.json +629 -0
  4. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/account/list-accounts-response.json +1558 -0
  5. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/account/report-usage-request.json +702 -0
  6. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/account/report-usage-response.json +309 -0
  7. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/account/sync-accounts-request.json +1113 -0
  8. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/account/sync-accounts-response.json +1567 -0
  9. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/account/sync-governance-request.json +662 -0
  10. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/account/sync-governance-response.json +921 -0
  11. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/creative/list-creatives-request.json +992 -0
  12. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/creative/list-creatives-response.json +5965 -0
  13. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/creative/sync-creatives-request.json +3936 -0
  14. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/creative/sync-creatives-response.json +3859 -0
  15. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/manifest.json +206 -0
  16. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/accept-proposal-request.json +601 -0
  17. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/accept-proposal-response.json +4799 -0
  18. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/buy-products-request.json +4107 -0
  19. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/buy-products-response.json +4799 -0
  20. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/control-media-buy-request.json +3365 -0
  21. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/control-media-buy-response.json +656 -0
  22. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/decline-proposals-request.json +334 -0
  23. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/decline-proposals-response.json +271 -0
  24. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/get-media-buy-delivery-request.json +1236 -0
  25. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/get-media-buy-delivery-response.json +2861 -0
  26. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/get-media-buys-request.json +678 -0
  27. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/get-media-buys-response.json +10861 -0
  28. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/list-products-request.json +4229 -0
  29. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/list-products-response.json +3824 -0
  30. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/log-event-request.json +421 -0
  31. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/log-event-response.json +394 -0
  32. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/media-buy-delivery-webhook-result.json +1366 -0
  33. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/provide-performance-feedback-request.json +884 -0
  34. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/provide-performance-feedback-response.json +422 -0
  35. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/refine-proposals-request.json +4335 -0
  36. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/refine-proposals-response.json +7328 -0
  37. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/request-proposals-request.json +4307 -0
  38. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/request-proposals-response.json +7105 -0
  39. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/sync-audiences-request.json +760 -0
  40. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/sync-audiences-response.json +541 -0
  41. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/sync-catalogs-request.json +1142 -0
  42. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/sync-catalogs-response.json +1153 -0
  43. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/sync-event-sources-request.json +743 -0
  44. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/sync-event-sources-response.json +619 -0
  45. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/account/get-account-financials-request.json +544 -0
  46. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/account/list-accounts-request.json +557 -0
  47. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/account/report-usage-request.json +617 -0
  48. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/account/sync-accounts-request.json +984 -0
  49. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/account/sync-governance-request.json +581 -0
  50. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/creative/list-creatives-request.json +878 -0
  51. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/creative/sync-creatives-request.json +3456 -0
  52. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/manifest.json +175 -0
  53. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/media-buy/accept-proposal-request.json +498 -0
  54. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/media-buy/buy-products-request.json +3675 -0
  55. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/media-buy/control-media-buy-request.json +3030 -0
  56. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/media-buy/decline-proposals-request.json +282 -0
  57. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/media-buy/get-media-buy-delivery-request.json +1136 -0
  58. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/media-buy/get-media-buys-request.json +597 -0
  59. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/media-buy/list-products-request.json +3780 -0
  60. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/media-buy/log-event-request.json +386 -0
  61. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/media-buy/provide-performance-feedback-request.json +784 -0
  62. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/media-buy/refine-proposals-request.json +3878 -0
  63. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/media-buy/request-proposals-request.json +3852 -0
  64. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/media-buy/sync-audiences-request.json +682 -0
  65. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/media-buy/sync-catalogs-request.json +1016 -0
  66. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/media-buy/sync-event-sources-request.json +660 -0
  67. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/protocol/get-adcp-capabilities-request.json +51 -0
  68. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/protocol/get-task-status-request.json +534 -0
  69. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/protocol/list-tasks-request.json +692 -0
  70. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/model-context/protocol/sync-agent-notification-configs-request.json +129 -0
  71. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/protocol/get-adcp-capabilities-request.json +58 -0
  72. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/protocol/get-adcp-capabilities-response.json +8069 -0
  73. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/protocol/get-task-status-request.json +601 -0
  74. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/protocol/get-task-status-response.json +612 -0
  75. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/protocol/list-tasks-request.json +775 -0
  76. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/protocol/list-tasks-response.json +483 -0
  77. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/protocol/sync-agent-notification-configs-request.json +155 -0
  78. package/dist/lib/schemas-data/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/protocol/sync-agent-notification-configs-response.json +382 -0
  79. package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
  80. package/dist/lib/server/create-adcp-server.d.mts +27 -0
  81. package/dist/lib/server/create-adcp-server.d.ts +27 -0
  82. package/dist/lib/server/create-adcp-server.d.ts.map +1 -1
  83. package/dist/lib/server/create-adcp-server.js +120 -4
  84. package/dist/lib/server/create-adcp-server.js.map +1 -1
  85. package/dist/lib/server/create-adcp-server.mjs +121 -6
  86. package/dist/lib/server/create-adcp-server.mjs.map +1 -1
  87. package/dist/lib/server/decisioning/context.d.mts +6 -0
  88. package/dist/lib/server/decisioning/context.d.ts +6 -0
  89. package/dist/lib/server/decisioning/context.d.ts.map +1 -1
  90. package/dist/lib/server/decisioning/context.js.map +1 -1
  91. package/dist/lib/server/decisioning/index.d.mts +1 -1
  92. package/dist/lib/server/decisioning/index.d.ts +1 -1
  93. package/dist/lib/server/decisioning/index.d.ts.map +1 -1
  94. package/dist/lib/server/decisioning/index.js.map +1 -1
  95. package/dist/lib/server/decisioning/index.mjs.map +1 -1
  96. package/dist/lib/server/decisioning/platform.d.mts +21 -6
  97. package/dist/lib/server/decisioning/platform.d.ts +21 -6
  98. package/dist/lib/server/decisioning/platform.d.ts.map +1 -1
  99. package/dist/lib/server/decisioning/platform.js.map +1 -1
  100. package/dist/lib/server/decisioning/runtime/from-platform.d.ts.map +1 -1
  101. package/dist/lib/server/decisioning/runtime/from-platform.js +201 -18
  102. package/dist/lib/server/decisioning/runtime/from-platform.js.map +1 -1
  103. package/dist/lib/server/decisioning/runtime/from-platform.mjs +203 -19
  104. package/dist/lib/server/decisioning/runtime/from-platform.mjs.map +1 -1
  105. package/dist/lib/server/decisioning/runtime/to-context.d.ts.map +1 -1
  106. package/dist/lib/server/decisioning/runtime/to-context.js +6 -0
  107. package/dist/lib/server/decisioning/runtime/to-context.js.map +1 -1
  108. package/dist/lib/server/decisioning/runtime/to-context.mjs +6 -0
  109. package/dist/lib/server/decisioning/runtime/to-context.mjs.map +1 -1
  110. package/dist/lib/server/decisioning/runtime/validate-platform.d.ts.map +1 -1
  111. package/dist/lib/server/decisioning/runtime/validate-platform.js +35 -4
  112. package/dist/lib/server/decisioning/runtime/validate-platform.js.map +1 -1
  113. package/dist/lib/server/decisioning/runtime/validate-platform.mjs +35 -4
  114. package/dist/lib/server/decisioning/runtime/validate-platform.mjs.map +1 -1
  115. package/dist/lib/server/decisioning/specialisms/sales.d.mts +39 -0
  116. package/dist/lib/server/decisioning/specialisms/sales.d.ts +39 -0
  117. package/dist/lib/server/decisioning/specialisms/sales.d.ts.map +1 -1
  118. package/dist/lib/server/decisioning/specialisms/sales.js.map +1 -1
  119. package/dist/lib/testing/storyboard/validations.d.mts +1 -1
  120. package/dist/lib/testing/storyboard/validations.d.ts +1 -1
  121. package/dist/lib/validation/schema-loader.d.mts +2 -0
  122. package/dist/lib/validation/schema-loader.d.ts +2 -0
  123. package/dist/lib/validation/schema-loader.d.ts.map +1 -1
  124. package/dist/lib/validation/schema-loader.js +31 -0
  125. package/dist/lib/validation/schema-loader.js.map +1 -1
  126. package/dist/lib/validation/schema-loader.mjs +30 -0
  127. package/dist/lib/validation/schema-loader.mjs.map +1 -1
  128. package/dist/lib/version.d.mts +3 -3
  129. package/dist/lib/version.d.ts +3 -3
  130. package/dist/lib/version.js +3 -3
  131. package/dist/lib/version.js.map +1 -1
  132. package/dist/lib/version.mjs +3 -3
  133. package/dist/lib/version.mjs.map +1 -1
  134. package/docs/guides/BUILD-AN-AGENT.md +10 -1
  135. package/docs/guides/MEDIA-BUY-3.2-COMPATIBILITY.md +119 -0
  136. package/docs/llms.txt +1 -1
  137. package/docs/migration-12-to-14.md +8 -0
  138. package/docs/migration-13-to-14.md +30 -4
  139. package/docs/releases/14.0.0-beta.0.md +19 -1
  140. package/package.json +2 -1
@@ -0,0 +1,1142 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://adcontextprotocol.org/schemas/3.2.0-beta.0/mcp/2026-07-28/profiles/media-buy/media-buy/sync-catalogs-request.json",
4
+ "type": "object",
5
+ "allOf": [
6
+ {
7
+ "$ref": "#/$defs/external:core~1version-envelope.json"
8
+ },
9
+ {
10
+ "not": {
11
+ "properties": {
12
+ "dry_run": {
13
+ "const": true
14
+ }
15
+ },
16
+ "required": [
17
+ "dry_run",
18
+ "item_availability_updates"
19
+ ]
20
+ },
21
+ "errorMessage": "dry_run cannot be combined with item_availability_updates because immediate availability acknowledgements represent applied state, not a preview"
22
+ }
23
+ ],
24
+ "x-mutates-state": true,
25
+ "properties": {
26
+ "idempotency_key": {
27
+ "type": "string",
28
+ "minLength": 16,
29
+ "maxLength": 255,
30
+ "pattern": "^[A-Za-z0-9_.:-]{16,255}$"
31
+ },
32
+ "account": {
33
+ "$ref": "#/$defs/external:core~1account-ref.json"
34
+ },
35
+ "catalogs": {
36
+ "type": "array",
37
+ "items": {
38
+ "$ref": "#/$defs/external:core~1catalog.json"
39
+ },
40
+ "minItems": 1,
41
+ "maxItems": 50
42
+ },
43
+ "item_availability_updates": {
44
+ "type": "array",
45
+ "items": {
46
+ "$ref": "#/$defs/external:core~1catalog-item-availability-update.json"
47
+ },
48
+ "minItems": 1,
49
+ "maxItems": 1000
50
+ },
51
+ "item_availability_queries": {
52
+ "type": "array",
53
+ "items": {
54
+ "$ref": "#/$defs/external:core~1catalog-item-availability-ref.json"
55
+ },
56
+ "minItems": 1,
57
+ "maxItems": 1000
58
+ },
59
+ "catalog_ids": {
60
+ "type": "array",
61
+ "items": {
62
+ "type": "string",
63
+ "x-entity": "catalog"
64
+ },
65
+ "minItems": 1,
66
+ "maxItems": 50
67
+ },
68
+ "delete_missing": {
69
+ "type": "boolean",
70
+ "default": false
71
+ },
72
+ "dry_run": {
73
+ "type": "boolean",
74
+ "default": false
75
+ },
76
+ "validation_mode": {
77
+ "$ref": "#/$defs/external:enums~1validation-mode.json",
78
+ "default": "strict"
79
+ },
80
+ "push_notification_config": {
81
+ "$ref": "#/$defs/external:core~1push-notification-config.json"
82
+ },
83
+ "context": {
84
+ "$ref": "#/$defs/external:core~1context.json"
85
+ },
86
+ "ext": {
87
+ "$ref": "#/$defs/external:core~1ext.json"
88
+ }
89
+ },
90
+ "required": [
91
+ "idempotency_key",
92
+ "account"
93
+ ],
94
+ "if": {
95
+ "properties": {
96
+ "delete_missing": {
97
+ "const": true
98
+ }
99
+ },
100
+ "required": [
101
+ "delete_missing"
102
+ ]
103
+ },
104
+ "then": {
105
+ "required": [
106
+ "catalogs"
107
+ ],
108
+ "errorMessage": "catalogs is required when delete_missing is true — omitting it would delete all buyer-managed catalogs on the account"
109
+ },
110
+ "additionalProperties": true,
111
+ "$defs": {
112
+ "external:core/version-envelope.json": {
113
+ "type": "object",
114
+ "properties": {
115
+ "adcp_version": {
116
+ "type": "string",
117
+ "pattern": "^(?:0|[1-9]\\d*)\\.(?:0|[1-9]\\d*)(?:-[a-zA-Z0-9](?:[a-zA-Z0-9.-]*[a-zA-Z0-9])?)?$"
118
+ },
119
+ "adcp_major_version": {
120
+ "type": "integer",
121
+ "deprecated": true,
122
+ "minimum": 1,
123
+ "maximum": 99
124
+ }
125
+ }
126
+ },
127
+ "external:core/account-ref.json": {
128
+ "type": "object",
129
+ "oneOf": [
130
+ {
131
+ "properties": {
132
+ "account_id": {
133
+ "type": "string",
134
+ "x-entity": "account"
135
+ }
136
+ },
137
+ "required": [
138
+ "account_id"
139
+ ],
140
+ "additionalProperties": false
141
+ },
142
+ {
143
+ "properties": {
144
+ "brand": {
145
+ "$ref": "#/$defs/external:core~1brand-ref.json"
146
+ },
147
+ "operator": {
148
+ "type": "string",
149
+ "pattern": "^[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$",
150
+ "x-entity": "operator"
151
+ },
152
+ "operator_unit": {
153
+ "$ref": "#/$defs/external:core~1operator-unit.json"
154
+ },
155
+ "currency": {
156
+ "type": "string",
157
+ "pattern": "^[A-Z]{3}$"
158
+ },
159
+ "timezone": {
160
+ "type": "string",
161
+ "minLength": 1
162
+ },
163
+ "sandbox": {
164
+ "type": "boolean",
165
+ "default": false
166
+ }
167
+ },
168
+ "required": [
169
+ "brand",
170
+ "operator"
171
+ ],
172
+ "additionalProperties": false
173
+ }
174
+ ]
175
+ },
176
+ "external:core/brand-ref.json": {
177
+ "type": "object",
178
+ "properties": {
179
+ "domain": {
180
+ "type": "string",
181
+ "pattern": "^[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$"
182
+ },
183
+ "brand_id": {
184
+ "$ref": "#/$defs/external:core~1brand-id.json"
185
+ },
186
+ "countries": {
187
+ "type": "array",
188
+ "items": {
189
+ "type": "string",
190
+ "pattern": "^[A-Z]{2}$"
191
+ },
192
+ "minItems": 1,
193
+ "uniqueItems": true
194
+ },
195
+ "industries": {
196
+ "type": "array",
197
+ "items": {
198
+ "type": "string"
199
+ }
200
+ },
201
+ "data_subject_contestation": {
202
+ "type": "object",
203
+ "properties": {
204
+ "url": {
205
+ "type": "string",
206
+ "format": "uri",
207
+ "pattern": "^https://"
208
+ },
209
+ "email": {
210
+ "type": "string",
211
+ "format": "email"
212
+ },
213
+ "languages": {
214
+ "type": "array",
215
+ "items": {
216
+ "type": "string"
217
+ }
218
+ }
219
+ },
220
+ "anyOf": [
221
+ {
222
+ "required": [
223
+ "url"
224
+ ]
225
+ },
226
+ {
227
+ "required": [
228
+ "email"
229
+ ]
230
+ }
231
+ ],
232
+ "additionalProperties": false
233
+ },
234
+ "brand_kit_override": {
235
+ "type": "object",
236
+ "properties": {
237
+ "logo": {
238
+ "$ref": "#/$defs/external:core~1assets~1image-asset.json"
239
+ },
240
+ "colors": {
241
+ "type": "object",
242
+ "properties": {
243
+ "primary": {
244
+ "type": "string",
245
+ "pattern": "^#[0-9a-fA-F]{6}$"
246
+ },
247
+ "secondary": {
248
+ "type": "string",
249
+ "pattern": "^#[0-9a-fA-F]{6}$"
250
+ },
251
+ "accent": {
252
+ "type": "string",
253
+ "pattern": "^#[0-9a-fA-F]{6}$"
254
+ }
255
+ },
256
+ "additionalProperties": true
257
+ },
258
+ "voice": {
259
+ "type": "string"
260
+ },
261
+ "tagline": {
262
+ "type": "string"
263
+ }
264
+ },
265
+ "additionalProperties": true
266
+ }
267
+ },
268
+ "required": [
269
+ "domain"
270
+ ],
271
+ "additionalProperties": false
272
+ },
273
+ "external:core/brand-id.json": {
274
+ "type": "string",
275
+ "pattern": "^[a-z0-9_]+$",
276
+ "x-entity": "advertiser_brand"
277
+ },
278
+ "external:core/assets/image-asset.json": {
279
+ "type": "object",
280
+ "properties": {
281
+ "asset_type": {
282
+ "type": "string",
283
+ "const": "image"
284
+ },
285
+ "url": {
286
+ "type": "string",
287
+ "format": "uri"
288
+ },
289
+ "width": {
290
+ "type": "integer",
291
+ "minimum": 1
292
+ },
293
+ "height": {
294
+ "type": "integer",
295
+ "minimum": 1
296
+ },
297
+ "pixel_ratio": {
298
+ "type": "number",
299
+ "exclusiveMinimum": 0
300
+ },
301
+ "format": {
302
+ "type": "string"
303
+ },
304
+ "alt_text": {
305
+ "type": "string",
306
+ "x-accessibility": true
307
+ },
308
+ "provenance": {
309
+ "$ref": "#/$defs/external:core~1provenance.json"
310
+ }
311
+ },
312
+ "required": [
313
+ "asset_type",
314
+ "url",
315
+ "width",
316
+ "height"
317
+ ],
318
+ "additionalProperties": true
319
+ },
320
+ "external:core/provenance.json": {
321
+ "type": "object",
322
+ "properties": {
323
+ "digital_source_type": {
324
+ "$ref": "#/$defs/external:enums~1digital-source-type.json"
325
+ },
326
+ "synthetic_depiction": {
327
+ "type": "boolean"
328
+ },
329
+ "ai_tool": {
330
+ "type": "object",
331
+ "properties": {
332
+ "name": {
333
+ "type": "string"
334
+ },
335
+ "version": {
336
+ "type": "string"
337
+ },
338
+ "provider": {
339
+ "type": "string"
340
+ }
341
+ },
342
+ "required": [
343
+ "name"
344
+ ]
345
+ },
346
+ "human_oversight": {
347
+ "type": "string",
348
+ "enum": [
349
+ "none",
350
+ "prompt_only",
351
+ "selected",
352
+ "edited",
353
+ "directed"
354
+ ]
355
+ },
356
+ "declared_by": {
357
+ "type": "object",
358
+ "properties": {
359
+ "agent_url": {
360
+ "type": "string",
361
+ "format": "uri"
362
+ },
363
+ "role": {
364
+ "type": "string",
365
+ "enum": [
366
+ "creator",
367
+ "advertiser",
368
+ "agency",
369
+ "platform",
370
+ "tool"
371
+ ]
372
+ }
373
+ },
374
+ "required": [
375
+ "role"
376
+ ]
377
+ },
378
+ "declared_at": {
379
+ "type": "string",
380
+ "format": "date-time"
381
+ },
382
+ "created_time": {
383
+ "type": "string",
384
+ "format": "date-time"
385
+ },
386
+ "c2pa": {
387
+ "type": "object",
388
+ "properties": {
389
+ "manifest_url": {
390
+ "type": "string",
391
+ "format": "uri"
392
+ }
393
+ },
394
+ "required": [
395
+ "manifest_url"
396
+ ]
397
+ },
398
+ "embedded_provenance": {
399
+ "type": "array",
400
+ "minItems": 1,
401
+ "items": {
402
+ "type": "object",
403
+ "properties": {
404
+ "method": {
405
+ "$ref": "#/$defs/external:enums~1embedded-provenance-method.json"
406
+ },
407
+ "standard": {
408
+ "type": "string"
409
+ },
410
+ "provider": {
411
+ "type": "string"
412
+ },
413
+ "verify_agent": {
414
+ "type": "object",
415
+ "properties": {
416
+ "agent_url": {
417
+ "type": "string",
418
+ "format": "uri",
419
+ "pattern": "^https://"
420
+ },
421
+ "feature_id": {
422
+ "type": "string"
423
+ }
424
+ },
425
+ "required": [
426
+ "agent_url"
427
+ ],
428
+ "additionalProperties": false
429
+ },
430
+ "embedded_at": {
431
+ "type": "string",
432
+ "format": "date-time"
433
+ }
434
+ },
435
+ "required": [
436
+ "method",
437
+ "provider"
438
+ ]
439
+ }
440
+ },
441
+ "watermarks": {
442
+ "type": "array",
443
+ "minItems": 1,
444
+ "items": {
445
+ "type": "object",
446
+ "properties": {
447
+ "media_type": {
448
+ "$ref": "#/$defs/external:enums~1watermark-media-type.json"
449
+ },
450
+ "provider": {
451
+ "type": "string"
452
+ },
453
+ "verify_agent": {
454
+ "type": "object",
455
+ "properties": {
456
+ "agent_url": {
457
+ "type": "string",
458
+ "format": "uri",
459
+ "pattern": "^https://"
460
+ },
461
+ "feature_id": {
462
+ "type": "string"
463
+ }
464
+ },
465
+ "required": [
466
+ "agent_url"
467
+ ],
468
+ "additionalProperties": false
469
+ },
470
+ "c2pa_action": {
471
+ "$ref": "#/$defs/external:enums~1c2pa-watermark-action.json"
472
+ },
473
+ "embedded_at": {
474
+ "type": "string",
475
+ "format": "date-time"
476
+ }
477
+ },
478
+ "required": [
479
+ "media_type",
480
+ "provider"
481
+ ]
482
+ }
483
+ },
484
+ "disclosure": {
485
+ "type": "object",
486
+ "properties": {
487
+ "required": {
488
+ "type": "boolean"
489
+ },
490
+ "jurisdictions": {
491
+ "type": "array",
492
+ "items": {
493
+ "type": "object",
494
+ "properties": {
495
+ "country": {
496
+ "type": "string"
497
+ },
498
+ "region": {
499
+ "type": "string"
500
+ },
501
+ "regulation": {
502
+ "type": "string"
503
+ },
504
+ "label_text": {
505
+ "type": "string"
506
+ },
507
+ "render_guidance": {
508
+ "type": "object",
509
+ "minProperties": 1,
510
+ "properties": {
511
+ "persistence": {
512
+ "$ref": "#/$defs/external:enums~1disclosure-persistence.json"
513
+ },
514
+ "min_duration_ms": {
515
+ "type": "integer",
516
+ "minimum": 1
517
+ },
518
+ "positions": {
519
+ "type": "array",
520
+ "items": {
521
+ "$ref": "#/$defs/external:enums~1disclosure-position.json"
522
+ },
523
+ "minItems": 1,
524
+ "uniqueItems": true
525
+ },
526
+ "ext": {
527
+ "$ref": "#/$defs/external:core~1ext.json"
528
+ }
529
+ }
530
+ }
531
+ },
532
+ "required": [
533
+ "country",
534
+ "regulation"
535
+ ]
536
+ },
537
+ "minItems": 1
538
+ }
539
+ },
540
+ "required": [
541
+ "required"
542
+ ]
543
+ },
544
+ "verification": {
545
+ "type": "array",
546
+ "minItems": 1,
547
+ "items": {
548
+ "type": "object",
549
+ "properties": {
550
+ "verified_by": {
551
+ "type": "string"
552
+ },
553
+ "verified_time": {
554
+ "type": "string",
555
+ "format": "date-time"
556
+ },
557
+ "result": {
558
+ "type": "string",
559
+ "enum": [
560
+ "authentic",
561
+ "ai_generated",
562
+ "ai_modified",
563
+ "inconclusive"
564
+ ]
565
+ },
566
+ "confidence": {
567
+ "type": "number",
568
+ "minimum": 0,
569
+ "maximum": 1
570
+ },
571
+ "details_url": {
572
+ "type": "string",
573
+ "format": "uri"
574
+ }
575
+ },
576
+ "required": [
577
+ "verified_by",
578
+ "result"
579
+ ]
580
+ }
581
+ },
582
+ "ext": {
583
+ "$ref": "#/$defs/external:core~1ext.json"
584
+ }
585
+ }
586
+ },
587
+ "external:enums/digital-source-type.json": {
588
+ "type": "string",
589
+ "enum": [
590
+ "digital_capture",
591
+ "digital_creation",
592
+ "trained_algorithmic_media",
593
+ "composite_with_trained_algorithmic_media",
594
+ "algorithmic_media",
595
+ "composite_capture",
596
+ "composite_synthetic",
597
+ "human_edits",
598
+ "data_driven_media"
599
+ ]
600
+ },
601
+ "external:enums/embedded-provenance-method.json": {
602
+ "type": "string",
603
+ "enum": [
604
+ "manifest_wrapper",
605
+ "provenance_markers"
606
+ ]
607
+ },
608
+ "external:enums/watermark-media-type.json": {
609
+ "type": "string",
610
+ "enum": [
611
+ "audio",
612
+ "image",
613
+ "video",
614
+ "text"
615
+ ]
616
+ },
617
+ "external:enums/c2pa-watermark-action.json": {
618
+ "type": "string",
619
+ "enum": [
620
+ "c2pa.watermarked.bound",
621
+ "c2pa.watermarked.unbound"
622
+ ]
623
+ },
624
+ "external:enums/disclosure-persistence.json": {
625
+ "type": "string",
626
+ "enum": [
627
+ "continuous",
628
+ "initial",
629
+ "flexible"
630
+ ]
631
+ },
632
+ "external:enums/disclosure-position.json": {
633
+ "type": "string",
634
+ "enum": [
635
+ "prominent",
636
+ "footer",
637
+ "audio",
638
+ "subtitle",
639
+ "overlay",
640
+ "end_card",
641
+ "pre_roll",
642
+ "companion"
643
+ ]
644
+ },
645
+ "external:core/ext.json": {
646
+ "type": "object",
647
+ "additionalProperties": true
648
+ },
649
+ "external:core/operator-unit.json": {
650
+ "x-entity": "operator_unit",
651
+ "type": "object",
652
+ "properties": {
653
+ "id": {
654
+ "type": "string",
655
+ "minLength": 1,
656
+ "maxLength": 255,
657
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$"
658
+ },
659
+ "name": {
660
+ "type": "string",
661
+ "minLength": 1,
662
+ "maxLength": 200
663
+ }
664
+ },
665
+ "required": [
666
+ "id"
667
+ ],
668
+ "additionalProperties": false
669
+ },
670
+ "external:core/catalog.json": {
671
+ "type": "object",
672
+ "properties": {
673
+ "catalog_id": {
674
+ "type": "string",
675
+ "x-entity": "catalog"
676
+ },
677
+ "name": {
678
+ "type": "string"
679
+ },
680
+ "type": {
681
+ "$ref": "#/$defs/external:enums~1catalog-type.json"
682
+ },
683
+ "url": {
684
+ "type": "string",
685
+ "format": "uri"
686
+ },
687
+ "feed_format": {
688
+ "$ref": "#/$defs/external:enums~1feed-format.json"
689
+ },
690
+ "update_frequency": {
691
+ "$ref": "#/$defs/external:enums~1update-frequency.json"
692
+ },
693
+ "items": {
694
+ "type": "array",
695
+ "items": {
696
+ "type": "object"
697
+ },
698
+ "minItems": 1
699
+ },
700
+ "ids": {
701
+ "type": "array",
702
+ "items": {
703
+ "type": "string"
704
+ },
705
+ "minItems": 1
706
+ },
707
+ "gtins": {
708
+ "type": "array",
709
+ "items": {
710
+ "type": "string",
711
+ "pattern": "^[0-9]{8,14}$"
712
+ },
713
+ "minItems": 1
714
+ },
715
+ "tags": {
716
+ "type": "array",
717
+ "items": {
718
+ "type": "string"
719
+ },
720
+ "minItems": 1
721
+ },
722
+ "category": {
723
+ "type": "string"
724
+ },
725
+ "query": {
726
+ "type": "string"
727
+ },
728
+ "conversion_events": {
729
+ "type": "array",
730
+ "items": {
731
+ "$ref": "#/$defs/external:enums~1event-type.json"
732
+ },
733
+ "minItems": 1,
734
+ "uniqueItems": true
735
+ },
736
+ "content_id_type": {
737
+ "$ref": "#/$defs/external:enums~1content-id-type.json"
738
+ },
739
+ "feed_field_mappings": {
740
+ "type": "array",
741
+ "items": {
742
+ "$ref": "#/$defs/external:core~1catalog-field-mapping.json"
743
+ },
744
+ "minItems": 1
745
+ }
746
+ },
747
+ "required": [
748
+ "type"
749
+ ],
750
+ "additionalProperties": true
751
+ },
752
+ "external:enums/catalog-type.json": {
753
+ "type": "string",
754
+ "enum": [
755
+ "offering",
756
+ "product",
757
+ "inventory",
758
+ "store",
759
+ "promotion",
760
+ "hotel",
761
+ "flight",
762
+ "job",
763
+ "vehicle",
764
+ "real_estate",
765
+ "education",
766
+ "destination",
767
+ "app"
768
+ ]
769
+ },
770
+ "external:enums/feed-format.json": {
771
+ "type": "string",
772
+ "enum": [
773
+ "google_merchant_center",
774
+ "facebook_catalog",
775
+ "shopify",
776
+ "linkedin_jobs",
777
+ "tiktok_shop",
778
+ "pinterest_catalog",
779
+ "openai_product_feed",
780
+ "custom"
781
+ ]
782
+ },
783
+ "external:enums/update-frequency.json": {
784
+ "type": "string",
785
+ "enum": [
786
+ "realtime",
787
+ "hourly",
788
+ "daily",
789
+ "weekly"
790
+ ]
791
+ },
792
+ "external:enums/event-type.json": {
793
+ "type": "string",
794
+ "enum": [
795
+ "page_view",
796
+ "view_content",
797
+ "select_content",
798
+ "select_item",
799
+ "search",
800
+ "share",
801
+ "add_to_cart",
802
+ "remove_from_cart",
803
+ "viewed_cart",
804
+ "add_to_wishlist",
805
+ "initiate_checkout",
806
+ "add_payment_info",
807
+ "purchase",
808
+ "refund",
809
+ "lead",
810
+ "qualify_lead",
811
+ "close_convert_lead",
812
+ "disqualify_lead",
813
+ "complete_registration",
814
+ "subscribe",
815
+ "follow",
816
+ "content_view",
817
+ "watch_milestone",
818
+ "start_trial",
819
+ "app_install",
820
+ "app_launch",
821
+ "contact",
822
+ "schedule",
823
+ "donate",
824
+ "submit_application",
825
+ "custom"
826
+ ]
827
+ },
828
+ "external:enums/content-id-type.json": {
829
+ "type": "string",
830
+ "enum": [
831
+ "sku",
832
+ "gtin",
833
+ "offering_id",
834
+ "job_id",
835
+ "hotel_id",
836
+ "flight_id",
837
+ "vehicle_id",
838
+ "listing_id",
839
+ "store_id",
840
+ "program_id",
841
+ "destination_id",
842
+ "app_id"
843
+ ]
844
+ },
845
+ "external:core/catalog-field-mapping.json": {
846
+ "type": "object",
847
+ "properties": {
848
+ "feed_field": {
849
+ "type": "string"
850
+ },
851
+ "catalog_field": {
852
+ "type": "string"
853
+ },
854
+ "asset_group_id": {
855
+ "type": "string"
856
+ },
857
+ "value": {},
858
+ "transform": {
859
+ "type": "string",
860
+ "enum": [
861
+ "date",
862
+ "divide",
863
+ "boolean",
864
+ "split"
865
+ ]
866
+ },
867
+ "format": {
868
+ "type": "string"
869
+ },
870
+ "timezone": {
871
+ "type": "string"
872
+ },
873
+ "by": {
874
+ "type": "number",
875
+ "exclusiveMinimum": 0
876
+ },
877
+ "separator": {
878
+ "type": "string",
879
+ "default": ","
880
+ },
881
+ "default": {},
882
+ "ext": {
883
+ "$ref": "#/$defs/external:core~1ext.json"
884
+ }
885
+ },
886
+ "allOf": [
887
+ {
888
+ "not": {
889
+ "required": [
890
+ "feed_field",
891
+ "value"
892
+ ]
893
+ }
894
+ },
895
+ {
896
+ "not": {
897
+ "required": [
898
+ "catalog_field",
899
+ "asset_group_id"
900
+ ]
901
+ }
902
+ }
903
+ ],
904
+ "additionalProperties": true
905
+ },
906
+ "external:core/catalog-item-availability-update.json": {
907
+ "type": "object",
908
+ "properties": {
909
+ "catalog_id": {
910
+ "type": "string",
911
+ "minLength": 1,
912
+ "maxLength": 255,
913
+ "x-entity": "catalog"
914
+ },
915
+ "catalog_generation": {
916
+ "type": "string",
917
+ "minLength": 1,
918
+ "maxLength": 255,
919
+ "x-entity": "catalog_generation"
920
+ },
921
+ "item_id": {
922
+ "type": "string",
923
+ "minLength": 1,
924
+ "maxLength": 255,
925
+ "x-entity": "catalog_item"
926
+ },
927
+ "expected_overlay_revision": {
928
+ "type": "integer",
929
+ "minimum": 0
930
+ },
931
+ "action": {
932
+ "type": "string",
933
+ "enum": [
934
+ "suppress",
935
+ "restore"
936
+ ]
937
+ },
938
+ "reason": {
939
+ "type": "string",
940
+ "enum": [
941
+ "out_of_stock",
942
+ "back_in_stock",
943
+ "content_unavailable",
944
+ "content_available",
945
+ "promotion_start",
946
+ "promotion_end",
947
+ "time_window_started",
948
+ "time_window_expired",
949
+ "buyer_request",
950
+ "other"
951
+ ]
952
+ },
953
+ "reason_detail": {
954
+ "type": "string",
955
+ "minLength": 1,
956
+ "maxLength": 1000
957
+ },
958
+ "expires_at": {
959
+ "type": "string",
960
+ "format": "date-time"
961
+ },
962
+ "ext": {
963
+ "$ref": "#/$defs/external:core~1ext.json"
964
+ }
965
+ },
966
+ "required": [
967
+ "catalog_id",
968
+ "catalog_generation",
969
+ "item_id",
970
+ "expected_overlay_revision",
971
+ "action",
972
+ "reason"
973
+ ],
974
+ "if": {
975
+ "properties": {
976
+ "reason": {
977
+ "const": "other"
978
+ }
979
+ },
980
+ "required": [
981
+ "reason"
982
+ ]
983
+ },
984
+ "then": {
985
+ "required": [
986
+ "reason_detail"
987
+ ]
988
+ },
989
+ "allOf": [
990
+ {
991
+ "if": {
992
+ "properties": {
993
+ "action": {
994
+ "const": "suppress"
995
+ }
996
+ },
997
+ "required": [
998
+ "action"
999
+ ]
1000
+ },
1001
+ "then": {
1002
+ "properties": {
1003
+ "reason": {
1004
+ "enum": [
1005
+ "out_of_stock",
1006
+ "content_unavailable",
1007
+ "promotion_end",
1008
+ "time_window_expired",
1009
+ "buyer_request",
1010
+ "other"
1011
+ ]
1012
+ }
1013
+ }
1014
+ },
1015
+ "else": {
1016
+ "properties": {
1017
+ "reason": {
1018
+ "enum": [
1019
+ "back_in_stock",
1020
+ "content_available",
1021
+ "promotion_start",
1022
+ "time_window_started",
1023
+ "buyer_request",
1024
+ "other"
1025
+ ]
1026
+ }
1027
+ }
1028
+ }
1029
+ },
1030
+ {
1031
+ "if": {
1032
+ "required": [
1033
+ "expires_at"
1034
+ ]
1035
+ },
1036
+ "then": {
1037
+ "properties": {
1038
+ "action": {
1039
+ "const": "suppress"
1040
+ }
1041
+ }
1042
+ }
1043
+ }
1044
+ ],
1045
+ "additionalProperties": true
1046
+ },
1047
+ "external:core/catalog-item-availability-ref.json": {
1048
+ "type": "object",
1049
+ "properties": {
1050
+ "catalog_id": {
1051
+ "type": "string",
1052
+ "minLength": 1,
1053
+ "maxLength": 255,
1054
+ "x-entity": "catalog"
1055
+ },
1056
+ "catalog_generation": {
1057
+ "type": "string",
1058
+ "minLength": 1,
1059
+ "maxLength": 255,
1060
+ "x-entity": "catalog_generation"
1061
+ },
1062
+ "item_id": {
1063
+ "type": "string",
1064
+ "minLength": 1,
1065
+ "maxLength": 255,
1066
+ "x-entity": "catalog_item"
1067
+ }
1068
+ },
1069
+ "required": [
1070
+ "catalog_id",
1071
+ "catalog_generation",
1072
+ "item_id"
1073
+ ],
1074
+ "additionalProperties": true
1075
+ },
1076
+ "external:enums/validation-mode.json": {
1077
+ "type": "string",
1078
+ "enum": [
1079
+ "strict",
1080
+ "lenient"
1081
+ ]
1082
+ },
1083
+ "external:core/push-notification-config.json": {
1084
+ "type": "object",
1085
+ "properties": {
1086
+ "url": {
1087
+ "type": "string",
1088
+ "format": "uri"
1089
+ },
1090
+ "operation_id": {
1091
+ "type": "string",
1092
+ "minLength": 1,
1093
+ "maxLength": 255,
1094
+ "pattern": "^[A-Za-z0-9_.:-]{1,255}$"
1095
+ },
1096
+ "token": {
1097
+ "type": "string",
1098
+ "minLength": 16,
1099
+ "maxLength": 4096
1100
+ },
1101
+ "authentication": {
1102
+ "type": "object",
1103
+ "deprecated": true,
1104
+ "properties": {
1105
+ "schemes": {
1106
+ "type": "array",
1107
+ "items": {
1108
+ "$ref": "#/$defs/external:enums~1auth-scheme.json"
1109
+ },
1110
+ "minItems": 1,
1111
+ "maxItems": 1
1112
+ },
1113
+ "credentials": {
1114
+ "type": "string",
1115
+ "minLength": 32
1116
+ }
1117
+ },
1118
+ "required": [
1119
+ "schemes",
1120
+ "credentials"
1121
+ ],
1122
+ "additionalProperties": false
1123
+ }
1124
+ },
1125
+ "required": [
1126
+ "url"
1127
+ ]
1128
+ },
1129
+ "external:enums/auth-scheme.json": {
1130
+ "deprecated": true,
1131
+ "type": "string",
1132
+ "enum": [
1133
+ "Bearer",
1134
+ "HMAC-SHA256"
1135
+ ]
1136
+ },
1137
+ "external:core/context.json": {
1138
+ "type": "object",
1139
+ "additionalProperties": true
1140
+ }
1141
+ }
1142
+ }