@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,656 @@
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/control-media-buy-response.json",
4
+ "type": "object",
5
+ "discriminator": {
6
+ "propertyName": "status"
7
+ },
8
+ "oneOf": [
9
+ {
10
+ "type": "object",
11
+ "properties": {
12
+ "status": {
13
+ "type": "string",
14
+ "const": "completed"
15
+ },
16
+ "media_buy_id": {
17
+ "type": "string",
18
+ "minLength": 1,
19
+ "x-entity": "media_buy"
20
+ },
21
+ "revision": {
22
+ "type": "integer",
23
+ "minimum": 1
24
+ },
25
+ "media_buy_status": {
26
+ "$ref": "#/$defs/external:enums~1media-buy-status.json"
27
+ },
28
+ "implementation_date": {
29
+ "type": [
30
+ "string",
31
+ "null"
32
+ ],
33
+ "format": "date-time"
34
+ },
35
+ "affected_package_ids": {
36
+ "type": "array",
37
+ "items": {
38
+ "type": "string",
39
+ "minLength": 1,
40
+ "x-entity": "package"
41
+ },
42
+ "uniqueItems": true
43
+ },
44
+ "available_actions": {
45
+ "type": "array",
46
+ "items": {
47
+ "$ref": "#/$defs/external:core~1canonical-media-buy-action.json"
48
+ },
49
+ "uniqueItems": true
50
+ },
51
+ "warnings": {
52
+ "type": "array",
53
+ "items": {
54
+ "allOf": [
55
+ {
56
+ "$ref": "#/$defs/external:core~1warning.json"
57
+ },
58
+ {
59
+ "properties": {
60
+ "code": {
61
+ "const": "inventory_shortfall_forecast"
62
+ }
63
+ }
64
+ }
65
+ ]
66
+ },
67
+ "minItems": 1
68
+ },
69
+ "context": {
70
+ "$ref": "#/$defs/external:core~1context.json"
71
+ },
72
+ "ext": {
73
+ "$ref": "#/$defs/external:core~1ext.json"
74
+ },
75
+ "replayed": {
76
+ "type": "boolean",
77
+ "const": true
78
+ }
79
+ },
80
+ "required": [
81
+ "status",
82
+ "media_buy_id",
83
+ "revision"
84
+ ],
85
+ "additionalProperties": false,
86
+ "not": {
87
+ "required": [
88
+ "errors"
89
+ ]
90
+ }
91
+ },
92
+ {
93
+ "type": "object",
94
+ "properties": {
95
+ "status": {
96
+ "type": "string",
97
+ "const": "failed"
98
+ },
99
+ "errors": {
100
+ "type": "array",
101
+ "items": {
102
+ "$ref": "#/$defs/external:core~1error.json"
103
+ },
104
+ "minItems": 1
105
+ },
106
+ "context": {
107
+ "$ref": "#/$defs/external:core~1context.json"
108
+ },
109
+ "ext": {
110
+ "$ref": "#/$defs/external:core~1ext.json"
111
+ },
112
+ "replayed": {
113
+ "type": "boolean",
114
+ "const": true
115
+ }
116
+ },
117
+ "required": [
118
+ "status",
119
+ "errors"
120
+ ],
121
+ "additionalProperties": false,
122
+ "not": {
123
+ "required": [
124
+ "media_buy_id"
125
+ ]
126
+ }
127
+ },
128
+ {
129
+ "type": "object",
130
+ "properties": {
131
+ "status": {
132
+ "type": "string",
133
+ "const": "submitted"
134
+ },
135
+ "task_id": {
136
+ "type": "string",
137
+ "minLength": 1,
138
+ "x-entity": "task"
139
+ },
140
+ "message": {
141
+ "type": "string",
142
+ "maxLength": 2000
143
+ },
144
+ "errors": {
145
+ "type": "array",
146
+ "items": {
147
+ "$ref": "#/$defs/external:core~1error.json"
148
+ }
149
+ },
150
+ "context": {
151
+ "$ref": "#/$defs/external:core~1context.json"
152
+ },
153
+ "ext": {
154
+ "$ref": "#/$defs/external:core~1ext.json"
155
+ },
156
+ "replayed": {
157
+ "type": "boolean",
158
+ "const": true
159
+ }
160
+ },
161
+ "required": [
162
+ "status",
163
+ "task_id"
164
+ ],
165
+ "additionalProperties": false,
166
+ "not": {
167
+ "required": [
168
+ "media_buy_id"
169
+ ]
170
+ }
171
+ }
172
+ ],
173
+ "$defs": {
174
+ "external:enums/media-buy-status.json": {
175
+ "type": "string",
176
+ "enum": [
177
+ "pending_creatives",
178
+ "pending_start",
179
+ "active",
180
+ "paused",
181
+ "completed",
182
+ "rejected",
183
+ "canceled"
184
+ ]
185
+ },
186
+ "external:core/canonical-media-buy-action.json": {
187
+ "type": "object",
188
+ "discriminator": {
189
+ "propertyName": "task"
190
+ },
191
+ "oneOf": [
192
+ {
193
+ "properties": {
194
+ "task": {
195
+ "type": "string",
196
+ "const": "control_media_buy"
197
+ },
198
+ "action": {
199
+ "type": "string",
200
+ "enum": [
201
+ "pause",
202
+ "resume",
203
+ "cancel",
204
+ "increase_budget",
205
+ "decrease_budget",
206
+ "reallocate_budget",
207
+ "update_budget_allocation",
208
+ "update_targeting",
209
+ "update_pacing",
210
+ "update_bidding",
211
+ "update_frequency_caps",
212
+ "update_catalog_assignments",
213
+ "update_keywords",
214
+ "update_optimization_goals",
215
+ "update_impression_goal",
216
+ "update_spend_target",
217
+ "update_reporting_webhook",
218
+ "remove_packages"
219
+ ]
220
+ },
221
+ "mode": {
222
+ "$ref": "#/$defs/external:enums~1canonical-media-buy-action-mode.json"
223
+ },
224
+ "sla": {
225
+ "$ref": "#/$defs/external:core~1sla-window.json"
226
+ },
227
+ "terms_ref": {
228
+ "type": "string"
229
+ }
230
+ },
231
+ "required": [
232
+ "task",
233
+ "action",
234
+ "mode"
235
+ ],
236
+ "additionalProperties": false
237
+ },
238
+ {
239
+ "properties": {
240
+ "task": {
241
+ "type": "string",
242
+ "const": "refine_proposals"
243
+ },
244
+ "action": {
245
+ "type": "string",
246
+ "enum": [
247
+ "cancel",
248
+ "extend_flight",
249
+ "shorten_flight",
250
+ "update_flight_dates",
251
+ "increase_budget",
252
+ "decrease_budget",
253
+ "reallocate_budget",
254
+ "update_budget_allocation",
255
+ "update_targeting",
256
+ "update_pacing",
257
+ "update_bidding",
258
+ "update_frequency_caps",
259
+ "add_packages",
260
+ "remove_packages"
261
+ ]
262
+ },
263
+ "mode": {
264
+ "$ref": "#/$defs/external:enums~1canonical-media-buy-action-mode.json"
265
+ },
266
+ "sla": {
267
+ "$ref": "#/$defs/external:core~1sla-window.json"
268
+ },
269
+ "terms_ref": {
270
+ "type": "string"
271
+ }
272
+ },
273
+ "required": [
274
+ "task",
275
+ "action",
276
+ "mode"
277
+ ],
278
+ "additionalProperties": false
279
+ },
280
+ {
281
+ "properties": {
282
+ "task": {
283
+ "type": "string",
284
+ "const": "sync_creatives"
285
+ },
286
+ "action": {
287
+ "type": "string",
288
+ "enum": [
289
+ "replace_creative",
290
+ "update_creative_assignments",
291
+ "remove_creative"
292
+ ]
293
+ },
294
+ "mode": {
295
+ "$ref": "#/$defs/external:enums~1canonical-media-buy-action-mode.json"
296
+ },
297
+ "sla": {
298
+ "$ref": "#/$defs/external:core~1sla-window.json"
299
+ },
300
+ "terms_ref": {
301
+ "type": "string"
302
+ }
303
+ },
304
+ "required": [
305
+ "task",
306
+ "action",
307
+ "mode"
308
+ ],
309
+ "additionalProperties": false
310
+ }
311
+ ]
312
+ },
313
+ "external:enums/canonical-media-buy-action-mode.json": {
314
+ "type": "string",
315
+ "enum": [
316
+ "self_serve",
317
+ "conditional_self_serve",
318
+ "requires_approval"
319
+ ]
320
+ },
321
+ "external:core/sla-window.json": {
322
+ "type": "object",
323
+ "properties": {
324
+ "response_max": {
325
+ "type": "string",
326
+ "pattern": "^P(?!$)(\\d+Y)?(\\d+M)?(\\d+D)?(T(\\d+H)?(\\d+M)?(\\d+S)?)?$"
327
+ },
328
+ "completion_max": {
329
+ "type": "string",
330
+ "pattern": "^P(?!$)(\\d+Y)?(\\d+M)?(\\d+D)?(T(\\d+H)?(\\d+M)?(\\d+S)?)?$"
331
+ }
332
+ },
333
+ "additionalProperties": false
334
+ },
335
+ "external:core/warning.json": {
336
+ "type": "object",
337
+ "properties": {
338
+ "code": {
339
+ "$ref": "#/$defs/external:enums~1warning-code.json"
340
+ },
341
+ "message": {
342
+ "type": "string",
343
+ "minLength": 1,
344
+ "maxLength": 2000
345
+ },
346
+ "affected_resource": {
347
+ "$ref": "#/$defs/external:core~1warning-resource.json"
348
+ },
349
+ "details": {
350
+ "type": "object",
351
+ "additionalProperties": true
352
+ },
353
+ "ext": {
354
+ "$ref": "#/$defs/external:core~1ext.json"
355
+ }
356
+ },
357
+ "required": [
358
+ "code",
359
+ "message",
360
+ "affected_resource"
361
+ ],
362
+ "allOf": [
363
+ {
364
+ "if": {
365
+ "properties": {
366
+ "code": {
367
+ "enum": [
368
+ "inventory_shortfall_forecast",
369
+ "flight_change_creates_pacing_risk"
370
+ ]
371
+ }
372
+ },
373
+ "required": [
374
+ "code"
375
+ ]
376
+ },
377
+ "then": {
378
+ "properties": {
379
+ "affected_resource": {
380
+ "properties": {
381
+ "resource_type": {
382
+ "const": "package"
383
+ }
384
+ }
385
+ }
386
+ }
387
+ }
388
+ },
389
+ {
390
+ "if": {
391
+ "properties": {
392
+ "code": {
393
+ "const": "fields_ignored_due_to_precedence"
394
+ }
395
+ },
396
+ "required": [
397
+ "code"
398
+ ]
399
+ },
400
+ "then": {
401
+ "properties": {
402
+ "affected_resource": {
403
+ "properties": {
404
+ "resource_type": {
405
+ "enum": [
406
+ "media_buy",
407
+ "package"
408
+ ]
409
+ }
410
+ }
411
+ }
412
+ }
413
+ }
414
+ }
415
+ ],
416
+ "x-adcp-validation": {
417
+ "verifier_constraints": {
418
+ "warning_capability_requirements": {
419
+ "inventory_shortfall_forecast": {
420
+ "supported_indicator_type": "inventory_shortfall_forecast"
421
+ },
422
+ "flight_change_creates_pacing_risk": {
423
+ "supported_indicator_type": "pacing_risk"
424
+ },
425
+ "fields_ignored_due_to_precedence": null
426
+ }
427
+ },
428
+ "spec": "specs/relationship-scoped-indicators.md#warning-contract"
429
+ },
430
+ "additionalProperties": true
431
+ },
432
+ "external:enums/warning-code.json": {
433
+ "type": "string",
434
+ "enum": [
435
+ "inventory_shortfall_forecast",
436
+ "flight_change_creates_pacing_risk",
437
+ "fields_ignored_due_to_precedence"
438
+ ]
439
+ },
440
+ "external:core/warning-resource.json": {
441
+ "type": "object",
442
+ "properties": {
443
+ "resource_type": {
444
+ "type": "string",
445
+ "enum": [
446
+ "media_buy",
447
+ "package",
448
+ "creative",
449
+ "creative_assignment"
450
+ ]
451
+ },
452
+ "media_buy_id": {
453
+ "type": "string",
454
+ "x-entity": "media_buy"
455
+ },
456
+ "package_id": {
457
+ "type": "string",
458
+ "x-entity": "package"
459
+ },
460
+ "creative_id": {
461
+ "type": "string",
462
+ "x-entity": "creative"
463
+ }
464
+ },
465
+ "required": [
466
+ "resource_type"
467
+ ],
468
+ "allOf": [
469
+ {
470
+ "if": {
471
+ "properties": {
472
+ "resource_type": {
473
+ "const": "media_buy"
474
+ }
475
+ },
476
+ "required": [
477
+ "resource_type"
478
+ ]
479
+ },
480
+ "then": {
481
+ "required": [
482
+ "media_buy_id"
483
+ ]
484
+ }
485
+ },
486
+ {
487
+ "if": {
488
+ "properties": {
489
+ "resource_type": {
490
+ "const": "package"
491
+ }
492
+ },
493
+ "required": [
494
+ "resource_type"
495
+ ]
496
+ },
497
+ "then": {
498
+ "required": [
499
+ "media_buy_id",
500
+ "package_id"
501
+ ]
502
+ }
503
+ },
504
+ {
505
+ "if": {
506
+ "properties": {
507
+ "resource_type": {
508
+ "const": "creative"
509
+ }
510
+ },
511
+ "required": [
512
+ "resource_type"
513
+ ]
514
+ },
515
+ "then": {
516
+ "required": [
517
+ "creative_id"
518
+ ]
519
+ }
520
+ },
521
+ {
522
+ "if": {
523
+ "properties": {
524
+ "resource_type": {
525
+ "const": "creative_assignment"
526
+ }
527
+ },
528
+ "required": [
529
+ "resource_type"
530
+ ]
531
+ },
532
+ "then": {
533
+ "required": [
534
+ "media_buy_id",
535
+ "package_id",
536
+ "creative_id"
537
+ ]
538
+ }
539
+ }
540
+ ],
541
+ "additionalProperties": false
542
+ },
543
+ "external:core/ext.json": {
544
+ "type": "object",
545
+ "additionalProperties": true
546
+ },
547
+ "external:core/context.json": {
548
+ "type": "object",
549
+ "additionalProperties": true
550
+ },
551
+ "external:core/error.json": {
552
+ "type": "object",
553
+ "properties": {
554
+ "code": {
555
+ "type": "string",
556
+ "minLength": 1,
557
+ "maxLength": 64
558
+ },
559
+ "message": {
560
+ "type": "string"
561
+ },
562
+ "field": {
563
+ "type": "string"
564
+ },
565
+ "suggestion": {
566
+ "type": "string"
567
+ },
568
+ "retry_after": {
569
+ "type": "number",
570
+ "minimum": 1,
571
+ "maximum": 3600
572
+ },
573
+ "issues": {
574
+ "type": "array",
575
+ "items": {
576
+ "type": "object",
577
+ "properties": {
578
+ "pointer": {
579
+ "type": "string"
580
+ },
581
+ "message": {
582
+ "type": "string"
583
+ },
584
+ "keyword": {
585
+ "type": "string"
586
+ },
587
+ "schemaPath": {
588
+ "type": "string"
589
+ },
590
+ "schema_id": {
591
+ "type": "string"
592
+ },
593
+ "discriminator": {
594
+ "type": "array",
595
+ "items": {
596
+ "type": "object",
597
+ "properties": {
598
+ "property_name": {
599
+ "type": "string"
600
+ },
601
+ "value": {
602
+ "type": [
603
+ "string",
604
+ "number",
605
+ "boolean",
606
+ "null"
607
+ ]
608
+ }
609
+ },
610
+ "required": [
611
+ "property_name",
612
+ "value"
613
+ ],
614
+ "additionalProperties": false
615
+ }
616
+ }
617
+ },
618
+ "required": [
619
+ "pointer",
620
+ "message",
621
+ "keyword"
622
+ ],
623
+ "additionalProperties": true
624
+ }
625
+ },
626
+ "details": {
627
+ "type": "object",
628
+ "additionalProperties": true
629
+ },
630
+ "recovery": {
631
+ "type": "string",
632
+ "enum": [
633
+ "transient",
634
+ "correctable",
635
+ "terminal"
636
+ ]
637
+ },
638
+ "source": {
639
+ "type": "string",
640
+ "enum": [
641
+ "producer",
642
+ "sdk"
643
+ ]
644
+ },
645
+ "sdk_id": {
646
+ "type": "string"
647
+ }
648
+ },
649
+ "required": [
650
+ "code",
651
+ "message"
652
+ ],
653
+ "additionalProperties": true
654
+ }
655
+ }
656
+ }