@adcp/sdk 16.0.0-beta.7 → 16.0.0-beta.9

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 (408) hide show
  1. package/AGENTS.md +3 -3
  2. package/README.md +20 -0
  3. package/bin/adcp.js +10 -13
  4. package/dist/lib/conformance/index.d.mts +2 -0
  5. package/dist/lib/conformance/index.d.ts +2 -0
  6. package/dist/lib/conformance/index.js +3 -0
  7. package/dist/lib/conformance/index.mjs +2 -0
  8. package/dist/lib/conformance/property-lists.d.mts +14 -0
  9. package/dist/lib/conformance/property-lists.d.ts +14 -0
  10. package/dist/lib/conformance/property-lists.js +45 -0
  11. package/dist/lib/conformance/property-lists.mjs +21 -0
  12. package/dist/lib/conformance/runConformance.js +20 -1
  13. package/dist/lib/conformance/runConformance.mjs +20 -1
  14. package/dist/lib/conformance/types.d.mts +3 -0
  15. package/dist/lib/conformance/types.d.ts +3 -0
  16. package/dist/lib/core/AgentClient.d.mts +8 -5
  17. package/dist/lib/core/AgentClient.d.ts +8 -5
  18. package/dist/lib/core/AgentClient.js +9 -4
  19. package/dist/lib/core/AgentClient.mjs +9 -4
  20. package/dist/lib/core/SingleAgentClient.d.mts +32 -115
  21. package/dist/lib/core/SingleAgentClient.d.ts +32 -115
  22. package/dist/lib/core/SingleAgentClient.js +379 -273
  23. package/dist/lib/core/SingleAgentClient.mjs +387 -275
  24. package/dist/lib/core/TaskExecutor.d.mts +1 -16
  25. package/dist/lib/core/TaskExecutor.d.ts +1 -16
  26. package/dist/lib/core/TaskExecutor.js +34 -51
  27. package/dist/lib/core/TaskExecutor.mjs +12 -29
  28. package/dist/lib/core/product-cache.d.mts +3 -1
  29. package/dist/lib/core/product-cache.d.ts +3 -1
  30. package/dist/lib/core/product-cache.js +2 -1
  31. package/dist/lib/core/product-cache.mjs +2 -1
  32. package/dist/lib/errors/index.d.mts +2 -8
  33. package/dist/lib/errors/index.d.ts +2 -8
  34. package/dist/lib/errors/index.js +4 -4
  35. package/dist/lib/errors/index.mjs +4 -4
  36. package/dist/lib/identifiers.d.mts +53 -0
  37. package/dist/lib/identifiers.d.ts +53 -0
  38. package/dist/lib/identifiers.js +212 -0
  39. package/dist/lib/identifiers.mjs +163 -0
  40. package/dist/lib/index.d.mts +7 -5
  41. package/dist/lib/index.d.ts +7 -5
  42. package/dist/lib/index.js +2 -14
  43. package/dist/lib/index.mjs +1 -14
  44. package/dist/lib/media-buy/compatibility.d.mts +1 -1
  45. package/dist/lib/media-buy/compatibility.d.ts +1 -1
  46. package/dist/lib/media-buy/compatibility.js +26 -45
  47. package/dist/lib/media-buy/compatibility.mjs +26 -45
  48. package/dist/lib/media-buy/index.d.mts +1 -1
  49. package/dist/lib/media-buy/index.d.ts +1 -1
  50. package/dist/lib/media-buy/legacy-purchase-continuation.d.mts +2 -2
  51. package/dist/lib/media-buy/legacy-purchase-continuation.d.ts +2 -2
  52. package/dist/lib/media-buy/property-policy.d.mts +15 -1
  53. package/dist/lib/media-buy/property-policy.d.ts +15 -1
  54. package/dist/lib/media-buy/property-policy.js +135 -3
  55. package/dist/lib/media-buy/property-policy.mjs +134 -3
  56. package/dist/lib/protocols/index.js +14 -22
  57. package/dist/lib/protocols/index.mjs +5 -13
  58. package/dist/lib/registry/index.d.mts +12 -0
  59. package/dist/lib/registry/index.d.ts +12 -0
  60. package/dist/lib/registry/index.js +159 -5
  61. package/dist/lib/registry/index.mjs +156 -4
  62. package/dist/lib/registry/types.d.mts +26 -2
  63. package/dist/lib/registry/types.d.ts +26 -2
  64. package/dist/lib/registry/types.generated.d.mts +51 -11
  65. package/dist/lib/registry/types.generated.d.ts +51 -11
  66. package/dist/lib/reporting/source/conformance.d.mts +8 -8
  67. package/dist/lib/reporting/source/conformance.d.ts +8 -8
  68. package/dist/lib/reporting/source/manifest.d.mts +27 -27
  69. package/dist/lib/reporting/source/manifest.d.ts +27 -27
  70. package/dist/lib/server/create-adcp-server.js +6 -0
  71. package/dist/lib/server/create-adcp-server.mjs +6 -0
  72. package/dist/lib/server/decisioning/specialisms/lists.d.mts +4 -4
  73. package/dist/lib/server/decisioning/specialisms/lists.d.ts +4 -4
  74. package/dist/lib/server/index.d.mts +3 -0
  75. package/dist/lib/server/index.d.ts +3 -0
  76. package/dist/lib/server/index.js +8 -1
  77. package/dist/lib/server/index.mjs +4 -0
  78. package/dist/lib/server/property-lists.d.mts +36 -0
  79. package/dist/lib/server/property-lists.d.ts +36 -0
  80. package/dist/lib/server/property-lists.js +154 -0
  81. package/dist/lib/server/property-lists.mjs +129 -0
  82. package/dist/lib/server/targeting-helpers.d.mts +2 -0
  83. package/dist/lib/server/targeting-helpers.d.ts +2 -0
  84. package/dist/lib/server/targeting-helpers.js +28 -1
  85. package/dist/lib/server/targeting-helpers.mjs +18 -1
  86. package/dist/lib/signing/parser.js +2 -2
  87. package/dist/lib/signing/parser.mjs +2 -2
  88. package/dist/lib/signing/server.d.mts +1 -1
  89. package/dist/lib/signing/server.d.ts +1 -1
  90. package/dist/lib/signing/server.mjs +5 -1
  91. package/dist/lib/signing/webhook-verifier.d.mts +11 -0
  92. package/dist/lib/signing/webhook-verifier.d.ts +11 -0
  93. package/dist/lib/signing/webhook-verifier.js +11 -3
  94. package/dist/lib/signing/webhook-verifier.mjs +11 -3
  95. package/dist/lib/supply-path/verify.js +12 -2
  96. package/dist/lib/supply-path/verify.mjs +2 -2
  97. package/dist/lib/testing/compliance/comply.js +0 -8
  98. package/dist/lib/testing/compliance/comply.mjs +0 -8
  99. package/dist/lib/testing/compliance/storyboard-tracks.js +11 -0
  100. package/dist/lib/testing/compliance/storyboard-tracks.mjs +11 -0
  101. package/dist/lib/testing/index.d.mts +2 -0
  102. package/dist/lib/testing/index.d.ts +2 -0
  103. package/dist/lib/testing/index.js +5 -0
  104. package/dist/lib/testing/index.mjs +3 -0
  105. package/dist/lib/testing/scenarios/capabilities.d.mts +2 -2
  106. package/dist/lib/testing/scenarios/capabilities.d.ts +2 -2
  107. package/dist/lib/testing/scenarios/capabilities.js +8 -41
  108. package/dist/lib/testing/scenarios/capabilities.mjs +9 -42
  109. package/dist/lib/testing/storyboard/creative-build-probe.d.mts +34 -0
  110. package/dist/lib/testing/storyboard/creative-build-probe.d.ts +34 -0
  111. package/dist/lib/testing/storyboard/creative-build-probe.js +395 -0
  112. package/dist/lib/testing/storyboard/creative-build-probe.mjs +373 -0
  113. package/dist/lib/testing/storyboard/index.d.mts +2 -0
  114. package/dist/lib/testing/storyboard/index.d.ts +2 -0
  115. package/dist/lib/testing/storyboard/index.js +5 -0
  116. package/dist/lib/testing/storyboard/index.mjs +3 -0
  117. package/dist/lib/testing/storyboard/loader.js +12 -0
  118. package/dist/lib/testing/storyboard/loader.mjs +12 -0
  119. package/dist/lib/testing/storyboard/property-list-reference.d.mts +15 -0
  120. package/dist/lib/testing/storyboard/property-list-reference.d.ts +15 -0
  121. package/dist/lib/testing/storyboard/property-list-reference.js +514 -0
  122. package/dist/lib/testing/storyboard/property-list-reference.mjs +487 -0
  123. package/dist/lib/testing/storyboard/runner.js +318 -58
  124. package/dist/lib/testing/storyboard/runner.mjs +322 -58
  125. package/dist/lib/testing/storyboard/types.d.mts +38 -16
  126. package/dist/lib/testing/storyboard/types.d.ts +38 -16
  127. package/dist/lib/testing/storyboard/types.js +1 -0
  128. package/dist/lib/testing/storyboard/types.mjs +1 -0
  129. package/dist/lib/testing/storyboard/validations.d.mts +1 -1
  130. package/dist/lib/testing/storyboard/validations.d.ts +1 -1
  131. package/dist/lib/testing/storyboard/validations.js +64 -0
  132. package/dist/lib/testing/storyboard/validations.mjs +67 -1
  133. package/dist/lib/testing/types.d.mts +15 -1
  134. package/dist/lib/testing/types.d.ts +15 -1
  135. package/dist/lib/types/schemas.generated.d.ts +65 -65
  136. package/dist/lib/types/wellknown-schemas.generated.d.mts +21 -21
  137. package/dist/lib/types/wellknown-schemas.generated.d.ts +21 -21
  138. package/dist/lib/utils/adcp-version-config.js +6 -0
  139. package/dist/lib/utils/adcp-version-config.mjs +6 -0
  140. package/dist/lib/utils/capabilities.d.mts +7 -9
  141. package/dist/lib/utils/capabilities.d.ts +7 -9
  142. package/dist/lib/utils/capabilities.js +14 -28
  143. package/dist/lib/utils/capabilities.mjs +14 -27
  144. package/dist/lib/utils/creative-adapter.d.mts +15 -113
  145. package/dist/lib/utils/creative-adapter.d.ts +15 -113
  146. package/dist/lib/utils/creative-adapter.js +7 -106
  147. package/dist/lib/utils/creative-adapter.mjs +7 -102
  148. package/dist/lib/utils/format-renders.d.mts +20 -80
  149. package/dist/lib/utils/format-renders.d.ts +20 -80
  150. package/dist/lib/utils/format-renders.js +7 -67
  151. package/dist/lib/utils/format-renders.mjs +7 -66
  152. package/dist/lib/utils/index.d.mts +1 -2
  153. package/dist/lib/utils/index.d.ts +1 -2
  154. package/dist/lib/utils/index.js +0 -7
  155. package/dist/lib/utils/index.mjs +0 -6
  156. package/dist/lib/utils/preview-normalizer.d.mts +31 -80
  157. package/dist/lib/utils/preview-normalizer.d.ts +31 -80
  158. package/dist/lib/utils/preview-normalizer.js +5 -50
  159. package/dist/lib/utils/preview-normalizer.mjs +5 -49
  160. package/dist/lib/utils/pricing-adapter.d.mts +2 -36
  161. package/dist/lib/utils/pricing-adapter.d.ts +2 -36
  162. package/dist/lib/utils/pricing-adapter.js +0 -105
  163. package/dist/lib/utils/pricing-adapter.mjs +0 -100
  164. package/dist/lib/utils/request-normalizer.d.mts +1 -2
  165. package/dist/lib/utils/request-normalizer.d.ts +1 -2
  166. package/dist/lib/v2/projection/creative-delivery.d.mts +2 -0
  167. package/dist/lib/v2/projection/creative-delivery.d.ts +2 -0
  168. package/dist/lib/v2/projection/creative-delivery.js +7 -0
  169. package/dist/lib/v2/projection/creative-delivery.mjs +6 -0
  170. package/dist/lib/v2/projection/legacy-metadata.d.mts +12 -0
  171. package/dist/lib/v2/projection/legacy-metadata.d.ts +12 -0
  172. package/dist/lib/v2/projection/legacy-metadata.js +41 -1
  173. package/dist/lib/v2/projection/legacy-metadata.mjs +37 -1
  174. package/dist/lib/v2/projection/legacy-normalization.d.mts +1 -1
  175. package/dist/lib/v2/projection/legacy-normalization.d.ts +1 -1
  176. package/dist/lib/v2/projection/v1-to-v2.js +13 -0
  177. package/dist/lib/v2/projection/v1-to-v2.mjs +14 -0
  178. package/dist/lib/validation/client-hooks.d.mts +1 -4
  179. package/dist/lib/validation/client-hooks.d.ts +1 -4
  180. package/dist/lib/validation/get-products-request.d.mts +1 -1
  181. package/dist/lib/validation/get-products-request.d.ts +1 -1
  182. package/dist/lib/validation/schema-loader.js +6 -0
  183. package/dist/lib/validation/schema-loader.mjs +6 -0
  184. package/dist/lib/validation/schema-validator.js +1 -26
  185. package/dist/lib/validation/schema-validator.mjs +1 -26
  186. package/dist/lib/version.d.mts +5 -5
  187. package/dist/lib/version.d.ts +5 -5
  188. package/dist/lib/version.js +3 -5
  189. package/dist/lib/version.mjs +3 -5
  190. package/docs/TYPE-SUMMARY.md +2 -2
  191. package/docs/development/PROTOCOL_DIFFERENCES.md +1 -1
  192. package/docs/guides/CONFORMANCE.md +25 -0
  193. package/docs/guides/CREATIVE-BUILD-PROBE.md +156 -0
  194. package/docs/guides/CREATIVE-DELIVERY.md +45 -6
  195. package/docs/guides/MEDIA-BUY-3.2-COMPATIBILITY.md +15 -18
  196. package/docs/guides/PROPERTY-LISTS.md +264 -0
  197. package/docs/guides/SIGNING-GUIDE.md +25 -0
  198. package/docs/guides/VALIDATE-YOUR-AGENT.md +5 -0
  199. package/docs/llms.txt +2 -2
  200. package/docs/migration-13-to-14.md +20 -16
  201. package/docs/migration-14.x-rc-worksheet.md +5 -5
  202. package/docs/migration-4.x-to-5.x.md +12 -7
  203. package/docs/migration-drop-adcp-2.md +25 -0
  204. package/package.json +3 -18
  205. package/skills/call-adcp-agent/SKILL.md +23 -25
  206. package/dist/lib/adapters/legacy/v2-5/create_media_buy.d.mts +0 -3
  207. package/dist/lib/adapters/legacy/v2-5/create_media_buy.d.ts +0 -3
  208. package/dist/lib/adapters/legacy/v2-5/create_media_buy.js +0 -33
  209. package/dist/lib/adapters/legacy/v2-5/create_media_buy.mjs +0 -9
  210. package/dist/lib/adapters/legacy/v2-5/get_products.d.mts +0 -8
  211. package/dist/lib/adapters/legacy/v2-5/get_products.d.ts +0 -8
  212. package/dist/lib/adapters/legacy/v2-5/get_products.js +0 -33
  213. package/dist/lib/adapters/legacy/v2-5/get_products.mjs +0 -9
  214. package/dist/lib/adapters/legacy/v2-5/index.d.mts +0 -34
  215. package/dist/lib/adapters/legacy/v2-5/index.d.ts +0 -34
  216. package/dist/lib/adapters/legacy/v2-5/index.js +0 -50
  217. package/dist/lib/adapters/legacy/v2-5/index.mjs +0 -25
  218. package/dist/lib/adapters/legacy/v2-5/list_creative_formats.d.mts +0 -8
  219. package/dist/lib/adapters/legacy/v2-5/list_creative_formats.d.ts +0 -8
  220. package/dist/lib/adapters/legacy/v2-5/list_creative_formats.js +0 -33
  221. package/dist/lib/adapters/legacy/v2-5/list_creative_formats.mjs +0 -9
  222. package/dist/lib/adapters/legacy/v2-5/preview_creative.d.mts +0 -3
  223. package/dist/lib/adapters/legacy/v2-5/preview_creative.d.ts +0 -3
  224. package/dist/lib/adapters/legacy/v2-5/preview_creative.js +0 -33
  225. package/dist/lib/adapters/legacy/v2-5/preview_creative.mjs +0 -9
  226. package/dist/lib/adapters/legacy/v2-5/sync_creatives.d.mts +0 -11
  227. package/dist/lib/adapters/legacy/v2-5/sync_creatives.d.ts +0 -11
  228. package/dist/lib/adapters/legacy/v2-5/sync_creatives.js +0 -32
  229. package/dist/lib/adapters/legacy/v2-5/sync_creatives.mjs +0 -8
  230. package/dist/lib/adapters/legacy/v2-5/types.d.mts +0 -39
  231. package/dist/lib/adapters/legacy/v2-5/types.d.ts +0 -39
  232. package/dist/lib/adapters/legacy/v2-5/types.js +0 -16
  233. package/dist/lib/adapters/legacy/v2-5/types.mjs +0 -0
  234. package/dist/lib/adapters/legacy/v2-5/update_media_buy.d.mts +0 -3
  235. package/dist/lib/adapters/legacy/v2-5/update_media_buy.d.ts +0 -3
  236. package/dist/lib/adapters/legacy/v2-5/update_media_buy.js +0 -35
  237. package/dist/lib/adapters/legacy/v2-5/update_media_buy.mjs +0 -11
  238. package/dist/lib/schemas-data/v2.5/_provenance.json +0 -8
  239. package/dist/lib/schemas-data/v2.5/adagents.json +0 -494
  240. package/dist/lib/schemas-data/v2.5/core/activation-key.json +0 -50
  241. package/dist/lib/schemas-data/v2.5/core/assets/audio-asset.json +0 -32
  242. package/dist/lib/schemas-data/v2.5/core/assets/css-asset.json +0 -21
  243. package/dist/lib/schemas-data/v2.5/core/assets/daast-asset.json +0 -87
  244. package/dist/lib/schemas-data/v2.5/core/assets/html-asset.json +0 -21
  245. package/dist/lib/schemas-data/v2.5/core/assets/image-asset.json +0 -38
  246. package/dist/lib/schemas-data/v2.5/core/assets/javascript-asset.json +0 -21
  247. package/dist/lib/schemas-data/v2.5/core/assets/markdown-asset.json +0 -31
  248. package/dist/lib/schemas-data/v2.5/core/assets/text-asset.json +0 -21
  249. package/dist/lib/schemas-data/v2.5/core/assets/url-asset.json +0 -26
  250. package/dist/lib/schemas-data/v2.5/core/assets/vast-asset.json +0 -87
  251. package/dist/lib/schemas-data/v2.5/core/assets/video-asset.json +0 -44
  252. package/dist/lib/schemas-data/v2.5/core/assets/webhook-asset.json +0 -71
  253. package/dist/lib/schemas-data/v2.5/core/async-response-data.json +0 -88
  254. package/dist/lib/schemas-data/v2.5/core/brand-manifest-ref.json +0 -33
  255. package/dist/lib/schemas-data/v2.5/core/brand-manifest.json +0 -409
  256. package/dist/lib/schemas-data/v2.5/core/context.json +0 -8
  257. package/dist/lib/schemas-data/v2.5/core/creative-asset.json +0 -125
  258. package/dist/lib/schemas-data/v2.5/core/creative-assignment.json +0 -31
  259. package/dist/lib/schemas-data/v2.5/core/creative-filters.json +0 -111
  260. package/dist/lib/schemas-data/v2.5/core/creative-manifest.json +0 -72
  261. package/dist/lib/schemas-data/v2.5/core/creative-policy.json +0 -27
  262. package/dist/lib/schemas-data/v2.5/core/delivery-metrics.json +0 -171
  263. package/dist/lib/schemas-data/v2.5/core/deployment.json +0 -93
  264. package/dist/lib/schemas-data/v2.5/core/destination.json +0 -53
  265. package/dist/lib/schemas-data/v2.5/core/error.json +0 -40
  266. package/dist/lib/schemas-data/v2.5/core/ext.json +0 -8
  267. package/dist/lib/schemas-data/v2.5/core/format-id.json +0 -47
  268. package/dist/lib/schemas-data/v2.5/core/format.json +0 -324
  269. package/dist/lib/schemas-data/v2.5/core/frequency-cap.json +0 -18
  270. package/dist/lib/schemas-data/v2.5/core/mcp-webhook-payload.json +0 -152
  271. package/dist/lib/schemas-data/v2.5/core/measurement.json +0 -48
  272. package/dist/lib/schemas-data/v2.5/core/media-buy.json +0 -62
  273. package/dist/lib/schemas-data/v2.5/core/package.json +0 -72
  274. package/dist/lib/schemas-data/v2.5/core/performance-feedback.json +0 -90
  275. package/dist/lib/schemas-data/v2.5/core/placement.json +0 -34
  276. package/dist/lib/schemas-data/v2.5/core/pricing-option.json +0 -35
  277. package/dist/lib/schemas-data/v2.5/core/product-filters.json +0 -102
  278. package/dist/lib/schemas-data/v2.5/core/product.json +0 -153
  279. package/dist/lib/schemas-data/v2.5/core/promoted-offerings.json +0 -115
  280. package/dist/lib/schemas-data/v2.5/core/promoted-products.json +0 -67
  281. package/dist/lib/schemas-data/v2.5/core/property-id.json +0 -14
  282. package/dist/lib/schemas-data/v2.5/core/property-tag.json +0 -16
  283. package/dist/lib/schemas-data/v2.5/core/property.json +0 -62
  284. package/dist/lib/schemas-data/v2.5/core/protocol-envelope.json +0 -146
  285. package/dist/lib/schemas-data/v2.5/core/publisher-property-selector.json +0 -92
  286. package/dist/lib/schemas-data/v2.5/core/push-notification-config.json +0 -48
  287. package/dist/lib/schemas-data/v2.5/core/reporting-capabilities.json +0 -71
  288. package/dist/lib/schemas-data/v2.5/core/response.json +0 -24
  289. package/dist/lib/schemas-data/v2.5/core/signal-filters.json +0 -35
  290. package/dist/lib/schemas-data/v2.5/core/start-timing.json +0 -18
  291. package/dist/lib/schemas-data/v2.5/core/sub-asset.json +0 -79
  292. package/dist/lib/schemas-data/v2.5/core/targeting.json +0 -50
  293. package/dist/lib/schemas-data/v2.5/core/tasks-get-request.json +0 -43
  294. package/dist/lib/schemas-data/v2.5/core/tasks-get-response.json +0 -166
  295. package/dist/lib/schemas-data/v2.5/core/tasks-list-request.json +0 -192
  296. package/dist/lib/schemas-data/v2.5/core/tasks-list-response.json +0 -183
  297. package/dist/lib/schemas-data/v2.5/creative/asset-types/index.json +0 -101
  298. package/dist/lib/schemas-data/v2.5/creative/list-creative-formats-request.json +0 -73
  299. package/dist/lib/schemas-data/v2.5/creative/list-creative-formats-response.json +0 -61
  300. package/dist/lib/schemas-data/v2.5/creative/preview-creative-request.json +0 -164
  301. package/dist/lib/schemas-data/v2.5/creative/preview-creative-response.json +0 -245
  302. package/dist/lib/schemas-data/v2.5/creative/preview-render.json +0 -225
  303. package/dist/lib/schemas-data/v2.5/enums/adcp-domain.json +0 -11
  304. package/dist/lib/schemas-data/v2.5/enums/asset-content-type.json +0 -22
  305. package/dist/lib/schemas-data/v2.5/enums/auth-scheme.json +0 -11
  306. package/dist/lib/schemas-data/v2.5/enums/available-metric.json +0 -18
  307. package/dist/lib/schemas-data/v2.5/enums/channels.json +0 -18
  308. package/dist/lib/schemas-data/v2.5/enums/co-branding-requirement.json +0 -12
  309. package/dist/lib/schemas-data/v2.5/enums/creative-action.json +0 -14
  310. package/dist/lib/schemas-data/v2.5/enums/creative-agent-capability.json +0 -13
  311. package/dist/lib/schemas-data/v2.5/enums/creative-sort-field.json +0 -15
  312. package/dist/lib/schemas-data/v2.5/enums/creative-status.json +0 -19
  313. package/dist/lib/schemas-data/v2.5/enums/daast-tracking-event.json +0 -20
  314. package/dist/lib/schemas-data/v2.5/enums/daast-version.json +0 -11
  315. package/dist/lib/schemas-data/v2.5/enums/delivery-type.json +0 -15
  316. package/dist/lib/schemas-data/v2.5/enums/dimension-unit.json +0 -13
  317. package/dist/lib/schemas-data/v2.5/enums/feed-format.json +0 -12
  318. package/dist/lib/schemas-data/v2.5/enums/feedback-source.json +0 -13
  319. package/dist/lib/schemas-data/v2.5/enums/format-category.json +0 -16
  320. package/dist/lib/schemas-data/v2.5/enums/format-id-parameter.json +0 -11
  321. package/dist/lib/schemas-data/v2.5/enums/frequency-cap-scope.json +0 -13
  322. package/dist/lib/schemas-data/v2.5/enums/history-entry-type.json +0 -11
  323. package/dist/lib/schemas-data/v2.5/enums/http-method.json +0 -11
  324. package/dist/lib/schemas-data/v2.5/enums/identifier-types.json +0 -34
  325. package/dist/lib/schemas-data/v2.5/enums/javascript-module-type.json +0 -12
  326. package/dist/lib/schemas-data/v2.5/enums/landing-page-requirement.json +0 -12
  327. package/dist/lib/schemas-data/v2.5/enums/markdown-flavor.json +0 -11
  328. package/dist/lib/schemas-data/v2.5/enums/media-buy-status.json +0 -19
  329. package/dist/lib/schemas-data/v2.5/enums/metric-type.json +0 -17
  330. package/dist/lib/schemas-data/v2.5/enums/notification-type.json +0 -13
  331. package/dist/lib/schemas-data/v2.5/enums/pacing.json +0 -17
  332. package/dist/lib/schemas-data/v2.5/enums/preview-output-format.json +0 -11
  333. package/dist/lib/schemas-data/v2.5/enums/pricing-model.json +0 -25
  334. package/dist/lib/schemas-data/v2.5/enums/property-type.json +0 -16
  335. package/dist/lib/schemas-data/v2.5/enums/publisher-identifier-types.json +0 -19
  336. package/dist/lib/schemas-data/v2.5/enums/reporting-frequency.json +0 -12
  337. package/dist/lib/schemas-data/v2.5/enums/signal-catalog-type.json +0 -12
  338. package/dist/lib/schemas-data/v2.5/enums/sort-direction.json +0 -11
  339. package/dist/lib/schemas-data/v2.5/enums/standard-format-ids.json +0 -103
  340. package/dist/lib/schemas-data/v2.5/enums/task-status.json +0 -29
  341. package/dist/lib/schemas-data/v2.5/enums/task-type.json +0 -27
  342. package/dist/lib/schemas-data/v2.5/enums/update-frequency.json +0 -13
  343. package/dist/lib/schemas-data/v2.5/enums/url-asset-type.json +0 -12
  344. package/dist/lib/schemas-data/v2.5/enums/validation-mode.json +0 -11
  345. package/dist/lib/schemas-data/v2.5/enums/vast-tracking-event.json +0 -25
  346. package/dist/lib/schemas-data/v2.5/enums/vast-version.json +0 -14
  347. package/dist/lib/schemas-data/v2.5/enums/webhook-response-type.json +0 -13
  348. package/dist/lib/schemas-data/v2.5/enums/webhook-security-method.json +0 -12
  349. package/dist/lib/schemas-data/v2.5/index.json +0 -604
  350. package/dist/lib/schemas-data/v2.5/media-buy/build-creative-request.json +0 -31
  351. package/dist/lib/schemas-data/v2.5/media-buy/build-creative-response.json +0 -65
  352. package/dist/lib/schemas-data/v2.5/media-buy/create-media-buy-async-response-input-required.json +0 -31
  353. package/dist/lib/schemas-data/v2.5/media-buy/create-media-buy-async-response-submitted.json +0 -16
  354. package/dist/lib/schemas-data/v2.5/media-buy/create-media-buy-async-response-working.json +0 -36
  355. package/dist/lib/schemas-data/v2.5/media-buy/create-media-buy-request.json +0 -126
  356. package/dist/lib/schemas-data/v2.5/media-buy/create-media-buy-response.json +0 -97
  357. package/dist/lib/schemas-data/v2.5/media-buy/get-media-buy-delivery-request.json +0 -54
  358. package/dist/lib/schemas-data/v2.5/media-buy/get-media-buy-delivery-response.json +0 -285
  359. package/dist/lib/schemas-data/v2.5/media-buy/get-products-async-response-input-required.json +0 -38
  360. package/dist/lib/schemas-data/v2.5/media-buy/get-products-async-response-submitted.json +0 -21
  361. package/dist/lib/schemas-data/v2.5/media-buy/get-products-async-response-working.json +0 -34
  362. package/dist/lib/schemas-data/v2.5/media-buy/get-products-request.json +0 -28
  363. package/dist/lib/schemas-data/v2.5/media-buy/get-products-response.json +0 -33
  364. package/dist/lib/schemas-data/v2.5/media-buy/list-authorized-properties-request.json +0 -26
  365. package/dist/lib/schemas-data/v2.5/media-buy/list-authorized-properties-response.json +0 -70
  366. package/dist/lib/schemas-data/v2.5/media-buy/list-creative-formats-request.json +0 -58
  367. package/dist/lib/schemas-data/v2.5/media-buy/list-creative-formats-response.json +0 -61
  368. package/dist/lib/schemas-data/v2.5/media-buy/list-creatives-request.json +0 -137
  369. package/dist/lib/schemas-data/v2.5/media-buy/list-creatives-response.json +0 -437
  370. package/dist/lib/schemas-data/v2.5/media-buy/package-request.json +0 -80
  371. package/dist/lib/schemas-data/v2.5/media-buy/provide-performance-feedback-request.json +0 -88
  372. package/dist/lib/schemas-data/v2.5/media-buy/provide-performance-feedback-response.json +0 -66
  373. package/dist/lib/schemas-data/v2.5/media-buy/sync-creatives-async-response-input-required.json +0 -25
  374. package/dist/lib/schemas-data/v2.5/media-buy/sync-creatives-async-response-submitted.json +0 -16
  375. package/dist/lib/schemas-data/v2.5/media-buy/sync-creatives-async-response-working.json +0 -46
  376. package/dist/lib/schemas-data/v2.5/media-buy/sync-creatives-request.json +0 -178
  377. package/dist/lib/schemas-data/v2.5/media-buy/sync-creatives-response.json +0 -149
  378. package/dist/lib/schemas-data/v2.5/media-buy/update-media-buy-async-response-input-required.json +0 -24
  379. package/dist/lib/schemas-data/v2.5/media-buy/update-media-buy-async-response-submitted.json +0 -16
  380. package/dist/lib/schemas-data/v2.5/media-buy/update-media-buy-async-response-working.json +0 -36
  381. package/dist/lib/schemas-data/v2.5/media-buy/update-media-buy-request.json +0 -129
  382. package/dist/lib/schemas-data/v2.5/media-buy/update-media-buy-response.json +0 -99
  383. package/dist/lib/schemas-data/v2.5/pricing-options/cpc-option.json +0 -52
  384. package/dist/lib/schemas-data/v2.5/pricing-options/cpcv-option.json +0 -52
  385. package/dist/lib/schemas-data/v2.5/pricing-options/cpm-auction-option.json +0 -81
  386. package/dist/lib/schemas-data/v2.5/pricing-options/cpm-fixed-option.json +0 -52
  387. package/dist/lib/schemas-data/v2.5/pricing-options/cpp-option.json +0 -73
  388. package/dist/lib/schemas-data/v2.5/pricing-options/cpv-option.json +0 -88
  389. package/dist/lib/schemas-data/v2.5/pricing-options/flat-rate-option.json +0 -93
  390. package/dist/lib/schemas-data/v2.5/pricing-options/vcpm-auction-option.json +0 -81
  391. package/dist/lib/schemas-data/v2.5/pricing-options/vcpm-fixed-option.json +0 -52
  392. package/dist/lib/schemas-data/v2.5/protocols/adcp-extension.json +0 -33
  393. package/dist/lib/schemas-data/v2.5/signals/activate-signal-request.json +0 -32
  394. package/dist/lib/schemas-data/v2.5/signals/activate-signal-response.json +0 -68
  395. package/dist/lib/schemas-data/v2.5/signals/get-signals-request.json +0 -59
  396. package/dist/lib/schemas-data/v2.5/signals/get-signals-response.json +0 -100
  397. package/dist/lib/types/v2-5/index.d.mts +0 -1
  398. package/dist/lib/types/v2-5/index.d.ts +0 -1
  399. package/dist/lib/types/v2-5/index.js +0 -22
  400. package/dist/lib/types/v2-5/index.mjs +0 -1
  401. package/dist/lib/types/v2-5/tools.generated.d.mts +0 -3568
  402. package/dist/lib/types/v2-5/tools.generated.d.ts +0 -3568
  403. package/dist/lib/types/v2-5/tools.generated.js +0 -16
  404. package/dist/lib/types/v2-5/tools.generated.mjs +0 -0
  405. package/dist/lib/utils/sync-creatives-adapter.d.mts +0 -33
  406. package/dist/lib/utils/sync-creatives-adapter.d.ts +0 -33
  407. package/dist/lib/utils/sync-creatives-adapter.js +0 -83
  408. package/dist/lib/utils/sync-creatives-adapter.mjs +0 -59
@@ -283,7 +283,7 @@ export interface paths {
283
283
  put?: never;
284
284
  /**
285
285
  * Save property
286
- * @description Save or update a hosted property in the registry. Requires authentication. For existing properties, creates a revision-tracked edit. For new properties, creates the property directly. Cannot edit authoritative properties managed via adagents.json.
286
+ * @description Save or update a hosted property in the registry. Requires authentication. For bulk identifier contributions use resolveIdentifiers instead (up to 10,000 identifiers per request). This endpoint is limited to 60 requests/hour per user/IP. publisher_domain must be a lowercase hostname without a URL, port, whitespace, wildcard, or trailing dot. Reserved test domains are rejected unless sandbox is true. With sandbox: true the request is validated and a simulated result is returned without reading or writing a hosted property; the ID is ephemeral. For existing properties, creates a revision-tracked edit. For new properties, creates the property directly. Cannot edit authoritative properties managed via adagents.json.
287
287
  *
288
288
  * This is an identity-only write surface: the stored document always carries `authorized_agents: []`. Sales authorization lives solely in the publisher's own origin `adagents.json`; the community registry cannot mint or carry it. Any `authorized_agents` sent in the request body is ignored.
289
289
  */
@@ -525,6 +525,8 @@ export interface paths {
525
525
  * @description Given a percent-encoded `agent_url`, returns the publishers whose adagents.json authorizes that agent, with provenance (`discovery_method`, `manager_domain`), per-publisher property counts (`properties_authorized`, `properties_total`, scoped to this publisher only — never network-wide), signing-key pin status, and lifecycle state (`authorized` / `revoked`).
526
526
  *
527
527
  * Spec: [docs/aao/directory-api.mdx](/docs/aao/directory-api) (adcp#4823). This endpoint is the spec-compliant richer-shape replacement for the legacy `/api/registry/lookup/agent/{agentUrl}/domains`, which returns domain strings only.
528
+ *
529
+ * `agent_url` is matched with [AdCP URL canonicalization](/docs/reference/url-canonicalization) and a **non-root trailing slash is significant**: `https://a.example/mcp` and `https://a.example/mcp/` are different agents and can return different publisher sets, the same rule the SDK applies in `verify_agent_authorization`. Ask for the spelling the publisher's adagents.json lists. (Through 2026-10-18 this endpoint folded the two spellings together and answered both with the slashless agent's publishers; that disagreed with the spec and with the validator.) The `agent_url` in the response echoes the canonicalized lookup key, slash included.
528
530
  */
529
531
  get: operations["getPublishersForAgentLegacyApiPrefix"];
530
532
  put?: never;
@@ -547,6 +549,8 @@ export interface paths {
547
549
  * @description Given a percent-encoded `agent_url`, returns the publishers whose adagents.json authorizes that agent, with provenance (`discovery_method`, `manager_domain`), per-publisher property counts (`properties_authorized`, `properties_total`, scoped to this publisher only — never network-wide), signing-key pin status, and lifecycle state (`authorized` / `revoked`).
548
550
  *
549
551
  * Spec: [docs/aao/directory-api.mdx](/docs/aao/directory-api) (adcp#4823). This endpoint is the spec-compliant richer-shape replacement for the legacy `/api/registry/lookup/agent/{agentUrl}/domains`, which returns domain strings only.
552
+ *
553
+ * `agent_url` is matched with [AdCP URL canonicalization](/docs/reference/url-canonicalization) and a **non-root trailing slash is significant**: `https://a.example/mcp` and `https://a.example/mcp/` are different agents and can return different publisher sets, the same rule the SDK applies in `verify_agent_authorization`. Ask for the spelling the publisher's adagents.json lists. (Through 2026-10-18 this endpoint folded the two spellings together and answered both with the slashless agent's publishers; that disagreed with the spec and with the validator.) The `agent_url` in the response echoes the canonicalized lookup key, slash included.
550
554
  */
551
555
  get: operations["getPublishersForAgent"];
552
556
  put?: never;
@@ -2526,6 +2530,8 @@ export interface components {
2526
2530
  stats?: components["schemas"]["AgentStats"];
2527
2531
  capabilities?: components["schemas"]["AgentCapabilities"];
2528
2532
  compliance?: components["schemas"]["AgentCompliance"];
2533
+ /** @description Every raw agent_url spelling the directory has indexed under this agent's identity, with the listed (canonical) url first. The registry keys an agent by identity, folding a non-root trailing slash, but GET /v1/agents/{agent_url}/publishers matches spec-exactly with the slash significant — so a client answering "which publishers authorize this agent" must query once per spelling here and merge the results. */
2534
+ declared_urls?: string[];
2529
2535
  publisher_domains?: string[];
2530
2536
  property_summary?: components["schemas"]["PropertySummary"];
2531
2537
  };
@@ -2661,6 +2667,8 @@ export interface components {
2661
2667
  timeout_ms: number | null;
2662
2668
  storyboard_start_offset: number | null;
2663
2669
  auth_type: string | null;
2670
+ /** @description Declared specialisms the graded compliance release does not define. Capability resolution skipped them instead of voiding the run; they were not graded. Absent on ordinary runs. */
2671
+ tolerated_undefined_specialisms?: string[];
2664
2672
  } | null;
2665
2673
  /** @enum {string} */
2666
2674
  BadgeRole: "media-buy" | "creative" | "signals" | "governance" | "brand" | "sponsored-intelligence";
@@ -4246,13 +4254,31 @@ export interface components {
4246
4254
  storyboards_total: number | null;
4247
4255
  first_blocker: string | null;
4248
4256
  } | null;
4257
+ /** @description Owner/operator-only. Present while the newest scheduled heartbeat ran out of time, so the owner can see that the published result is not being refreshed. Null for other viewers and once a later heartbeat completes. This does not change the public verdict. */
4258
+ heartbeat_timeout?: {
4259
+ /** Format: uuid */
4260
+ run_id: string;
4261
+ /** Format: date-time */
4262
+ timed_out_at: string;
4263
+ duration_ms: number | null;
4264
+ timeout_ms: number | null;
4265
+ storyboards_completed: number | null;
4266
+ storyboards_total: number | null;
4267
+ consecutive: number;
4268
+ /** @description True when the streak filled the lookback window, so the real run of timeouts may be longer than `consecutive`. */
4269
+ consecutive_capped: boolean;
4270
+ /** Format: date-time */
4271
+ published_at: string | null;
4272
+ /** @description Ready-to-render owner-facing sentence. Built only from platform- and runner-generated values; no agent response text. */
4273
+ summary: string;
4274
+ } | null;
4249
4275
  /** @description How often the heartbeat re-tests this agent, in hours */
4250
4276
  check_interval_hours?: number;
4251
4277
  /** @description Specialisms the agent declared in get_adcp_capabilities, from the latest run */
4252
4278
  declared_specialisms?: string[];
4253
- /** @description Per-specialism pass/fail/untested status — keyed on declared specialism, derived from the matching storyboard's status */
4279
+ /** @description Per-specialism pass/fail/untested status — keyed on declared specialism, derived from the matching storyboard's status. `not_applicable` means AdCP introduced the specialism after the compliance release this run graded, so it could not be tested. */
4254
4280
  specialism_status?: {
4255
- [key: string]: "passing" | "failing" | "untested" | "unknown";
4281
+ [key: string]: "passing" | "failing" | "untested" | "unknown" | "not_applicable";
4256
4282
  };
4257
4283
  eligibility?: components["schemas"]["ComplianceEligibility"];
4258
4284
  /** @description Public per-storyboard verdicts and aggregate step counts. First-failure diagnostic fields are populated only for owners; scalar diagnostics are null and validation evidence is empty for other callers. */
@@ -4892,6 +4918,11 @@ export interface components {
4892
4918
  */
4893
4919
  OrganizationRevenueTier: "under_1m" | "1m_5m" | "5m_50m" | "50m_250m" | "250m_1b" | "1b_plus";
4894
4920
  ResolveResponse: {
4921
+ /**
4922
+ * @description Present for a non-persistent sandbox simulation. New property handles are ephemeral.
4923
+ * @enum {boolean}
4924
+ */
4925
+ sandbox?: true;
4895
4926
  resolved: components["schemas"]["ResolvedEntry"][];
4896
4927
  summary: {
4897
4928
  total: number;
@@ -4915,30 +4946,30 @@ export interface components {
4915
4946
  CatalogIdentifier: {
4916
4947
  /** @example domain */
4917
4948
  type: string;
4918
- /** @example nytimes.com */
4949
+ /** @example streamhaus.com */
4919
4950
  value: string;
4920
4951
  };
4952
+ /** @description Up to 10,000 identifiers plus provenance. resolve requires authentication and contributes unknown identifiers; lookup is read-only. Domain/subdomain values must follow core/identifier.json; production rejects reserved test domains. sandbox: true simulates contributions without writes. */
4921
4953
  ResolveRequest: {
4922
4954
  /** @description Identifiers to resolve (and, in resolve mode, contribute). Max 10,000 per call for all callers. */
4923
4955
  identifiers: components["schemas"]["CatalogIdentifier"][];
4924
4956
  provenance: components["schemas"]["FactProvenance"];
4925
4957
  /**
4926
- * @description `resolve` (default) contributes the identifiers, auto-creates missing catalog entries, logs demand activity, and returns rids — requires authentication. `lookup` is a pure read: no write, no activity log, no auth.
4958
+ * @description resolve (default) contributes identifiers, creates missing catalog entries, and logs activity; authentication is required. lookup is a public read with no writes or activity logging.
4927
4959
  * @default resolve
4928
4960
  * @enum {string}
4929
4961
  */
4930
4962
  mode: "resolve" | "lookup";
4963
+ /** @description Simulate contributions without storing properties, identifiers, facts, or activity. Reads existing catalog data; new handles are ephemeral. Reserved test domains are allowed only in sandbox mode. Defaults to false when omitted. */
4964
+ sandbox?: boolean;
4931
4965
  };
4932
4966
  FactProvenance: {
4933
4967
  /**
4934
- * @description How the caller knows these identifiers — the trust/audit envelope on the fact. Determines the confidence the catalog assigns. `crawl` is reserved for server-side pipelines; callers use the others.
4968
+ * @description How the caller knows these identifiers — the trust/audit envelope on the fact. Determines the confidence the catalog assigns. crawl is reserved for server-side pipelines; callers use the others.
4935
4969
  * @enum {string}
4936
4970
  */
4937
4971
  type: "agency_allowlist" | "publisher_declaration" | "impression_log" | "ssp_inventory" | "deal_history" | "crawl" | "data_partner" | "member_assertion";
4938
- /**
4939
- * @description Optional free-text annotation (campaign, dataset).
4940
- * @example unilever_q3
4941
- */
4972
+ /** @description Optional free-text annotation (campaign, dataset). */
4942
4973
  context?: string;
4943
4974
  };
4944
4975
  CatalogDisputeTriageResult: {
@@ -5731,6 +5762,11 @@ export interface operations {
5731
5762
  "application/json": {
5732
5763
  /** @example examplepub.com */
5733
5764
  publisher_domain: string;
5765
+ /**
5766
+ * @description Validate and simulate a save without persisting it. Allows reserved test hostnames.
5767
+ * @default false
5768
+ */
5769
+ sandbox?: boolean;
5734
5770
  /**
5735
5771
  * @description Ignored. Community-registry rows never assert sales authorization — the owner's origin adagents.json is the sole authorization source — so any value here is dropped and the stored document carries authorized_agents:[].
5736
5772
  * @example []
@@ -5770,6 +5806,8 @@ export interface operations {
5770
5806
  success: true;
5771
5807
  message: string;
5772
5808
  id: string;
5809
+ /** @enum {boolean} */
5810
+ sandbox?: true;
5773
5811
  revision_number?: number;
5774
5812
  };
5775
5813
  };
@@ -8475,7 +8513,7 @@ export interface operations {
8475
8513
  getAgentAuthorizations: {
8476
8514
  parameters: {
8477
8515
  query: {
8478
- /** @description Agent URL to look up. Canonicalized server-side (lowercased, trailing slashes trimmed). */
8516
+ /** @description Agent URL to look up. Canonicalized server-side per AdCP URL canonicalization: the scheme and host fold, the path does not. */
8479
8517
  agent_url: string;
8480
8518
  /** @description `effective` (default) applies override layer; `raw` reads base table. */
8481
8519
  include?: "raw" | "effective";
@@ -10954,6 +10992,8 @@ export interface operations {
10954
10992
  }[];
10955
10993
  }[];
10956
10994
  total_storyboards: number;
10995
+ /** @description Declared specialisms AdCP introduced after this compliance release. They have no bundle to run here, so they are listed separately instead of failing resolution. */
10996
+ specialisms_not_applicable?: string[];
10957
10997
  };
10958
10998
  };
10959
10999
  };
@@ -283,7 +283,7 @@ export interface paths {
283
283
  put?: never;
284
284
  /**
285
285
  * Save property
286
- * @description Save or update a hosted property in the registry. Requires authentication. For existing properties, creates a revision-tracked edit. For new properties, creates the property directly. Cannot edit authoritative properties managed via adagents.json.
286
+ * @description Save or update a hosted property in the registry. Requires authentication. For bulk identifier contributions use resolveIdentifiers instead (up to 10,000 identifiers per request). This endpoint is limited to 60 requests/hour per user/IP. publisher_domain must be a lowercase hostname without a URL, port, whitespace, wildcard, or trailing dot. Reserved test domains are rejected unless sandbox is true. With sandbox: true the request is validated and a simulated result is returned without reading or writing a hosted property; the ID is ephemeral. For existing properties, creates a revision-tracked edit. For new properties, creates the property directly. Cannot edit authoritative properties managed via adagents.json.
287
287
  *
288
288
  * This is an identity-only write surface: the stored document always carries `authorized_agents: []`. Sales authorization lives solely in the publisher's own origin `adagents.json`; the community registry cannot mint or carry it. Any `authorized_agents` sent in the request body is ignored.
289
289
  */
@@ -525,6 +525,8 @@ export interface paths {
525
525
  * @description Given a percent-encoded `agent_url`, returns the publishers whose adagents.json authorizes that agent, with provenance (`discovery_method`, `manager_domain`), per-publisher property counts (`properties_authorized`, `properties_total`, scoped to this publisher only — never network-wide), signing-key pin status, and lifecycle state (`authorized` / `revoked`).
526
526
  *
527
527
  * Spec: [docs/aao/directory-api.mdx](/docs/aao/directory-api) (adcp#4823). This endpoint is the spec-compliant richer-shape replacement for the legacy `/api/registry/lookup/agent/{agentUrl}/domains`, which returns domain strings only.
528
+ *
529
+ * `agent_url` is matched with [AdCP URL canonicalization](/docs/reference/url-canonicalization) and a **non-root trailing slash is significant**: `https://a.example/mcp` and `https://a.example/mcp/` are different agents and can return different publisher sets, the same rule the SDK applies in `verify_agent_authorization`. Ask for the spelling the publisher's adagents.json lists. (Through 2026-10-18 this endpoint folded the two spellings together and answered both with the slashless agent's publishers; that disagreed with the spec and with the validator.) The `agent_url` in the response echoes the canonicalized lookup key, slash included.
528
530
  */
529
531
  get: operations["getPublishersForAgentLegacyApiPrefix"];
530
532
  put?: never;
@@ -547,6 +549,8 @@ export interface paths {
547
549
  * @description Given a percent-encoded `agent_url`, returns the publishers whose adagents.json authorizes that agent, with provenance (`discovery_method`, `manager_domain`), per-publisher property counts (`properties_authorized`, `properties_total`, scoped to this publisher only — never network-wide), signing-key pin status, and lifecycle state (`authorized` / `revoked`).
548
550
  *
549
551
  * Spec: [docs/aao/directory-api.mdx](/docs/aao/directory-api) (adcp#4823). This endpoint is the spec-compliant richer-shape replacement for the legacy `/api/registry/lookup/agent/{agentUrl}/domains`, which returns domain strings only.
552
+ *
553
+ * `agent_url` is matched with [AdCP URL canonicalization](/docs/reference/url-canonicalization) and a **non-root trailing slash is significant**: `https://a.example/mcp` and `https://a.example/mcp/` are different agents and can return different publisher sets, the same rule the SDK applies in `verify_agent_authorization`. Ask for the spelling the publisher's adagents.json lists. (Through 2026-10-18 this endpoint folded the two spellings together and answered both with the slashless agent's publishers; that disagreed with the spec and with the validator.) The `agent_url` in the response echoes the canonicalized lookup key, slash included.
550
554
  */
551
555
  get: operations["getPublishersForAgent"];
552
556
  put?: never;
@@ -2526,6 +2530,8 @@ export interface components {
2526
2530
  stats?: components["schemas"]["AgentStats"];
2527
2531
  capabilities?: components["schemas"]["AgentCapabilities"];
2528
2532
  compliance?: components["schemas"]["AgentCompliance"];
2533
+ /** @description Every raw agent_url spelling the directory has indexed under this agent's identity, with the listed (canonical) url first. The registry keys an agent by identity, folding a non-root trailing slash, but GET /v1/agents/{agent_url}/publishers matches spec-exactly with the slash significant — so a client answering "which publishers authorize this agent" must query once per spelling here and merge the results. */
2534
+ declared_urls?: string[];
2529
2535
  publisher_domains?: string[];
2530
2536
  property_summary?: components["schemas"]["PropertySummary"];
2531
2537
  };
@@ -2661,6 +2667,8 @@ export interface components {
2661
2667
  timeout_ms: number | null;
2662
2668
  storyboard_start_offset: number | null;
2663
2669
  auth_type: string | null;
2670
+ /** @description Declared specialisms the graded compliance release does not define. Capability resolution skipped them instead of voiding the run; they were not graded. Absent on ordinary runs. */
2671
+ tolerated_undefined_specialisms?: string[];
2664
2672
  } | null;
2665
2673
  /** @enum {string} */
2666
2674
  BadgeRole: "media-buy" | "creative" | "signals" | "governance" | "brand" | "sponsored-intelligence";
@@ -4246,13 +4254,31 @@ export interface components {
4246
4254
  storyboards_total: number | null;
4247
4255
  first_blocker: string | null;
4248
4256
  } | null;
4257
+ /** @description Owner/operator-only. Present while the newest scheduled heartbeat ran out of time, so the owner can see that the published result is not being refreshed. Null for other viewers and once a later heartbeat completes. This does not change the public verdict. */
4258
+ heartbeat_timeout?: {
4259
+ /** Format: uuid */
4260
+ run_id: string;
4261
+ /** Format: date-time */
4262
+ timed_out_at: string;
4263
+ duration_ms: number | null;
4264
+ timeout_ms: number | null;
4265
+ storyboards_completed: number | null;
4266
+ storyboards_total: number | null;
4267
+ consecutive: number;
4268
+ /** @description True when the streak filled the lookback window, so the real run of timeouts may be longer than `consecutive`. */
4269
+ consecutive_capped: boolean;
4270
+ /** Format: date-time */
4271
+ published_at: string | null;
4272
+ /** @description Ready-to-render owner-facing sentence. Built only from platform- and runner-generated values; no agent response text. */
4273
+ summary: string;
4274
+ } | null;
4249
4275
  /** @description How often the heartbeat re-tests this agent, in hours */
4250
4276
  check_interval_hours?: number;
4251
4277
  /** @description Specialisms the agent declared in get_adcp_capabilities, from the latest run */
4252
4278
  declared_specialisms?: string[];
4253
- /** @description Per-specialism pass/fail/untested status — keyed on declared specialism, derived from the matching storyboard's status */
4279
+ /** @description Per-specialism pass/fail/untested status — keyed on declared specialism, derived from the matching storyboard's status. `not_applicable` means AdCP introduced the specialism after the compliance release this run graded, so it could not be tested. */
4254
4280
  specialism_status?: {
4255
- [key: string]: "passing" | "failing" | "untested" | "unknown";
4281
+ [key: string]: "passing" | "failing" | "untested" | "unknown" | "not_applicable";
4256
4282
  };
4257
4283
  eligibility?: components["schemas"]["ComplianceEligibility"];
4258
4284
  /** @description Public per-storyboard verdicts and aggregate step counts. First-failure diagnostic fields are populated only for owners; scalar diagnostics are null and validation evidence is empty for other callers. */
@@ -4892,6 +4918,11 @@ export interface components {
4892
4918
  */
4893
4919
  OrganizationRevenueTier: "under_1m" | "1m_5m" | "5m_50m" | "50m_250m" | "250m_1b" | "1b_plus";
4894
4920
  ResolveResponse: {
4921
+ /**
4922
+ * @description Present for a non-persistent sandbox simulation. New property handles are ephemeral.
4923
+ * @enum {boolean}
4924
+ */
4925
+ sandbox?: true;
4895
4926
  resolved: components["schemas"]["ResolvedEntry"][];
4896
4927
  summary: {
4897
4928
  total: number;
@@ -4915,30 +4946,30 @@ export interface components {
4915
4946
  CatalogIdentifier: {
4916
4947
  /** @example domain */
4917
4948
  type: string;
4918
- /** @example nytimes.com */
4949
+ /** @example streamhaus.com */
4919
4950
  value: string;
4920
4951
  };
4952
+ /** @description Up to 10,000 identifiers plus provenance. resolve requires authentication and contributes unknown identifiers; lookup is read-only. Domain/subdomain values must follow core/identifier.json; production rejects reserved test domains. sandbox: true simulates contributions without writes. */
4921
4953
  ResolveRequest: {
4922
4954
  /** @description Identifiers to resolve (and, in resolve mode, contribute). Max 10,000 per call for all callers. */
4923
4955
  identifiers: components["schemas"]["CatalogIdentifier"][];
4924
4956
  provenance: components["schemas"]["FactProvenance"];
4925
4957
  /**
4926
- * @description `resolve` (default) contributes the identifiers, auto-creates missing catalog entries, logs demand activity, and returns rids — requires authentication. `lookup` is a pure read: no write, no activity log, no auth.
4958
+ * @description resolve (default) contributes identifiers, creates missing catalog entries, and logs activity; authentication is required. lookup is a public read with no writes or activity logging.
4927
4959
  * @default resolve
4928
4960
  * @enum {string}
4929
4961
  */
4930
4962
  mode: "resolve" | "lookup";
4963
+ /** @description Simulate contributions without storing properties, identifiers, facts, or activity. Reads existing catalog data; new handles are ephemeral. Reserved test domains are allowed only in sandbox mode. Defaults to false when omitted. */
4964
+ sandbox?: boolean;
4931
4965
  };
4932
4966
  FactProvenance: {
4933
4967
  /**
4934
- * @description How the caller knows these identifiers — the trust/audit envelope on the fact. Determines the confidence the catalog assigns. `crawl` is reserved for server-side pipelines; callers use the others.
4968
+ * @description How the caller knows these identifiers — the trust/audit envelope on the fact. Determines the confidence the catalog assigns. crawl is reserved for server-side pipelines; callers use the others.
4935
4969
  * @enum {string}
4936
4970
  */
4937
4971
  type: "agency_allowlist" | "publisher_declaration" | "impression_log" | "ssp_inventory" | "deal_history" | "crawl" | "data_partner" | "member_assertion";
4938
- /**
4939
- * @description Optional free-text annotation (campaign, dataset).
4940
- * @example unilever_q3
4941
- */
4972
+ /** @description Optional free-text annotation (campaign, dataset). */
4942
4973
  context?: string;
4943
4974
  };
4944
4975
  CatalogDisputeTriageResult: {
@@ -5731,6 +5762,11 @@ export interface operations {
5731
5762
  "application/json": {
5732
5763
  /** @example examplepub.com */
5733
5764
  publisher_domain: string;
5765
+ /**
5766
+ * @description Validate and simulate a save without persisting it. Allows reserved test hostnames.
5767
+ * @default false
5768
+ */
5769
+ sandbox?: boolean;
5734
5770
  /**
5735
5771
  * @description Ignored. Community-registry rows never assert sales authorization — the owner's origin adagents.json is the sole authorization source — so any value here is dropped and the stored document carries authorized_agents:[].
5736
5772
  * @example []
@@ -5770,6 +5806,8 @@ export interface operations {
5770
5806
  success: true;
5771
5807
  message: string;
5772
5808
  id: string;
5809
+ /** @enum {boolean} */
5810
+ sandbox?: true;
5773
5811
  revision_number?: number;
5774
5812
  };
5775
5813
  };
@@ -8475,7 +8513,7 @@ export interface operations {
8475
8513
  getAgentAuthorizations: {
8476
8514
  parameters: {
8477
8515
  query: {
8478
- /** @description Agent URL to look up. Canonicalized server-side (lowercased, trailing slashes trimmed). */
8516
+ /** @description Agent URL to look up. Canonicalized server-side per AdCP URL canonicalization: the scheme and host fold, the path does not. */
8479
8517
  agent_url: string;
8480
8518
  /** @description `effective` (default) applies override layer; `raw` reads base table. */
8481
8519
  include?: "raw" | "effective";
@@ -10954,6 +10992,8 @@ export interface operations {
10954
10992
  }[];
10955
10993
  }[];
10956
10994
  total_storyboards: number;
10995
+ /** @description Declared specialisms AdCP introduced after this compliance release. They have no bundle to run here, so they are listed separately instead of failing resolution. */
10996
+ specialisms_not_applicable?: string[];
10957
10997
  };
10958
10998
  };
10959
10999
  };
@@ -197,7 +197,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
197
197
  semanticContractId: string;
198
198
  semanticContractVersion: string;
199
199
  semanticContractSha256: string;
200
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
200
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
201
201
  dataThrough?: string | undefined;
202
202
  reason?: string | undefined;
203
203
  }[];
@@ -209,7 +209,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
209
209
  constituentId: string;
210
210
  constituentKind: "product";
211
211
  productId: string;
212
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
212
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
213
213
  packageId?: undefined;
214
214
  mediaBuyId?: undefined;
215
215
  productBinding?: undefined;
@@ -229,7 +229,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
229
229
  bindingSha256: string;
230
230
  productId: string;
231
231
  };
232
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
232
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
233
233
  mediaBuyId?: undefined;
234
234
  dataThrough?: string | undefined;
235
235
  reason?: string | undefined;
@@ -247,7 +247,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
247
247
  bindingSha256: string;
248
248
  productId: string;
249
249
  };
250
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
250
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
251
251
  packageId?: undefined;
252
252
  dataThrough?: string | undefined;
253
253
  reason?: string | undefined;
@@ -449,7 +449,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
449
449
  semanticContractId: string;
450
450
  semanticContractVersion: string;
451
451
  semanticContractSha256: string;
452
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
452
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
453
453
  dataThrough?: string | undefined;
454
454
  reason?: string | undefined;
455
455
  }[];
@@ -461,7 +461,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
461
461
  constituentId: string;
462
462
  constituentKind: "product";
463
463
  productId: string;
464
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
464
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
465
465
  packageId?: undefined;
466
466
  mediaBuyId?: undefined;
467
467
  productBinding?: undefined;
@@ -481,7 +481,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
481
481
  bindingSha256: string;
482
482
  productId: string;
483
483
  };
484
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
484
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
485
485
  mediaBuyId?: undefined;
486
486
  dataThrough?: string | undefined;
487
487
  reason?: string | undefined;
@@ -499,7 +499,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
499
499
  bindingSha256: string;
500
500
  productId: string;
501
501
  };
502
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
502
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
503
503
  packageId?: undefined;
504
504
  dataThrough?: string | undefined;
505
505
  reason?: string | undefined;
@@ -197,7 +197,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
197
197
  semanticContractId: string;
198
198
  semanticContractVersion: string;
199
199
  semanticContractSha256: string;
200
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
200
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
201
201
  dataThrough?: string | undefined;
202
202
  reason?: string | undefined;
203
203
  }[];
@@ -209,7 +209,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
209
209
  constituentId: string;
210
210
  constituentKind: "product";
211
211
  productId: string;
212
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
212
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
213
213
  packageId?: undefined;
214
214
  mediaBuyId?: undefined;
215
215
  productBinding?: undefined;
@@ -229,7 +229,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
229
229
  bindingSha256: string;
230
230
  productId: string;
231
231
  };
232
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
232
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
233
233
  mediaBuyId?: undefined;
234
234
  dataThrough?: string | undefined;
235
235
  reason?: string | undefined;
@@ -247,7 +247,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
247
247
  bindingSha256: string;
248
248
  productId: string;
249
249
  };
250
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
250
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
251
251
  packageId?: undefined;
252
252
  dataThrough?: string | undefined;
253
253
  reason?: string | undefined;
@@ -449,7 +449,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
449
449
  semanticContractId: string;
450
450
  semanticContractVersion: string;
451
451
  semanticContractSha256: string;
452
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
452
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
453
453
  dataThrough?: string | undefined;
454
454
  reason?: string | undefined;
455
455
  }[];
@@ -461,7 +461,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
461
461
  constituentId: string;
462
462
  constituentKind: "product";
463
463
  productId: string;
464
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
464
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
465
465
  packageId?: undefined;
466
466
  mediaBuyId?: undefined;
467
467
  productBinding?: undefined;
@@ -481,7 +481,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
481
481
  bindingSha256: string;
482
482
  productId: string;
483
483
  };
484
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
484
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
485
485
  mediaBuyId?: undefined;
486
486
  dataThrough?: string | undefined;
487
487
  reason?: string | undefined;
@@ -499,7 +499,7 @@ export declare function validateReportingRevisionSequenceV1(manifests: readonly
499
499
  bindingSha256: string;
500
500
  productId: string;
501
501
  };
502
- status: "delayed" | "present" | "missing" | "unsupported" | "partial" | "stale" | "explicit_zero";
502
+ status: "delayed" | "partial" | "present" | "missing" | "unsupported" | "stale" | "explicit_zero";
503
503
  packageId?: undefined;
504
504
  dataThrough?: string | undefined;
505
505
  reason?: string | undefined;