adcp 2.5.0__tar.gz → 2.7.0__tar.gz

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 (148) hide show
  1. {adcp-2.5.0/src/adcp.egg-info → adcp-2.7.0}/PKG-INFO +1 -1
  2. {adcp-2.5.0 → adcp-2.7.0}/pyproject.toml +1 -1
  3. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/__init__.py +69 -43
  4. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/client.py +11 -9
  5. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/simple.py +1 -1
  6. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/__init__.py +12 -0
  7. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/_generated.py +15 -9
  8. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/aliases.py +245 -5
  9. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/adagents.py +34 -77
  10. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/product.py +9 -76
  11. adcp-2.7.0/src/adcp/types/generated_poc/publisher_property_selector.py +81 -0
  12. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/stable.py +14 -3
  13. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/utils/preview_cache.py +7 -7
  14. {adcp-2.5.0 → adcp-2.7.0/src/adcp.egg-info}/PKG-INFO +1 -1
  15. {adcp-2.5.0 → adcp-2.7.0}/src/adcp.egg-info/SOURCES.txt +1 -0
  16. {adcp-2.5.0 → adcp-2.7.0}/tests/test_discriminated_unions.py +8 -4
  17. {adcp-2.5.0 → adcp-2.7.0}/tests/test_type_aliases.py +267 -5
  18. {adcp-2.5.0 → adcp-2.7.0}/LICENSE +0 -0
  19. {adcp-2.5.0 → adcp-2.7.0}/README.md +0 -0
  20. {adcp-2.5.0 → adcp-2.7.0}/setup.cfg +0 -0
  21. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/__main__.py +0 -0
  22. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/adagents.py +0 -0
  23. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/config.py +0 -0
  24. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/exceptions.py +0 -0
  25. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/protocols/__init__.py +0 -0
  26. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/protocols/a2a.py +0 -0
  27. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/protocols/base.py +0 -0
  28. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/protocols/mcp.py +0 -0
  29. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/py.typed +0 -0
  30. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/testing/__init__.py +0 -0
  31. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/testing/test_helpers.py +0 -0
  32. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/base.py +0 -0
  33. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/core.py +0 -0
  34. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/__init__.py +0 -0
  35. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/activate_signal_request.py +0 -0
  36. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/activate_signal_response.py +0 -0
  37. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/activation_key.py +0 -0
  38. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/asset_type.py +0 -0
  39. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/audio_asset.py +0 -0
  40. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/brand_manifest.py +0 -0
  41. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/build_creative_request.py +0 -0
  42. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/build_creative_response.py +0 -0
  43. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/channels.py +0 -0
  44. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/cpc_option.py +0 -0
  45. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/cpcv_option.py +0 -0
  46. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/cpm_auction_option.py +0 -0
  47. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/cpm_fixed_option.py +0 -0
  48. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/cpp_option.py +0 -0
  49. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/cpv_option.py +0 -0
  50. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/create_media_buy_request.py +0 -0
  51. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/create_media_buy_response.py +0 -0
  52. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/creative_asset.py +0 -0
  53. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/creative_assignment.py +0 -0
  54. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/creative_manifest.py +0 -0
  55. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/creative_policy.py +0 -0
  56. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/creative_status.py +0 -0
  57. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/css_asset.py +0 -0
  58. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/daast_asset.py +0 -0
  59. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/delivery_metrics.py +0 -0
  60. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/delivery_type.py +0 -0
  61. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/deployment.py +0 -0
  62. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/destination.py +0 -0
  63. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/error.py +0 -0
  64. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/flat_rate_option.py +0 -0
  65. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/format.py +0 -0
  66. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/format_id.py +0 -0
  67. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/frequency_cap.py +0 -0
  68. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/frequency_cap_scope.py +0 -0
  69. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/get_media_buy_delivery_request.py +0 -0
  70. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/get_media_buy_delivery_response.py +0 -0
  71. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/get_products_request.py +0 -0
  72. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/get_products_response.py +0 -0
  73. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/get_signals_request.py +0 -0
  74. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/get_signals_response.py +0 -0
  75. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/html_asset.py +0 -0
  76. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/identifier_types.py +0 -0
  77. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/image_asset.py +0 -0
  78. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/javascript_asset.py +0 -0
  79. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/list_authorized_properties_request.py +0 -0
  80. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/list_authorized_properties_response.py +0 -0
  81. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/list_creative_formats_request.py +0 -0
  82. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/list_creative_formats_response.py +0 -0
  83. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/list_creatives_request.py +0 -0
  84. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/list_creatives_response.py +0 -0
  85. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/markdown_asset.py +0 -0
  86. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/measurement.py +0 -0
  87. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/media_buy.py +0 -0
  88. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/media_buy_status.py +0 -0
  89. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/pacing.py +0 -0
  90. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/package.py +0 -0
  91. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/package_request.py +0 -0
  92. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/package_status.py +0 -0
  93. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/performance_feedback.py +0 -0
  94. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/placement.py +0 -0
  95. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/preview_creative_request.py +0 -0
  96. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/preview_creative_response.py +0 -0
  97. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/preview_render.py +0 -0
  98. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/pricing_model.py +0 -0
  99. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/promoted_offerings.py +0 -0
  100. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/promoted_products.py +0 -0
  101. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/property.py +0 -0
  102. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/protocol_envelope.py +0 -0
  103. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/provide_performance_feedback_request.py +0 -0
  104. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/provide_performance_feedback_response.py +0 -0
  105. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/publisher_identifier_types.py +0 -0
  106. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/push_notification_config.py +0 -0
  107. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/reporting_capabilities.py +0 -0
  108. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/response.py +0 -0
  109. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/standard_format_ids.py +0 -0
  110. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/sub_asset.py +0 -0
  111. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/sync_creatives_request.py +0 -0
  112. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/sync_creatives_response.py +0 -0
  113. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/targeting.py +0 -0
  114. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/task_status.py +0 -0
  115. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/task_type.py +0 -0
  116. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/tasks_get_request.py +0 -0
  117. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/tasks_get_response.py +0 -0
  118. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/tasks_list_request.py +0 -0
  119. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/tasks_list_response.py +0 -0
  120. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/text_asset.py +0 -0
  121. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/update_media_buy_request.py +0 -0
  122. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/update_media_buy_response.py +0 -0
  123. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/url_asset.py +0 -0
  124. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/vast_asset.py +0 -0
  125. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/vcpm_auction_option.py +0 -0
  126. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/vcpm_fixed_option.py +0 -0
  127. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/video_asset.py +0 -0
  128. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/webhook_asset.py +0 -0
  129. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/types/generated_poc/webhook_payload.py +0 -0
  130. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/utils/__init__.py +0 -0
  131. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/utils/operation_id.py +0 -0
  132. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/utils/response_parser.py +0 -0
  133. {adcp-2.5.0 → adcp-2.7.0}/src/adcp/validation.py +0 -0
  134. {adcp-2.5.0 → adcp-2.7.0}/src/adcp.egg-info/dependency_links.txt +0 -0
  135. {adcp-2.5.0 → adcp-2.7.0}/src/adcp.egg-info/entry_points.txt +0 -0
  136. {adcp-2.5.0 → adcp-2.7.0}/src/adcp.egg-info/requires.txt +0 -0
  137. {adcp-2.5.0 → adcp-2.7.0}/src/adcp.egg-info/top_level.txt +0 -0
  138. {adcp-2.5.0 → adcp-2.7.0}/tests/test_adagents.py +0 -0
  139. {adcp-2.5.0 → adcp-2.7.0}/tests/test_cli.py +0 -0
  140. {adcp-2.5.0 → adcp-2.7.0}/tests/test_client.py +0 -0
  141. {adcp-2.5.0 → adcp-2.7.0}/tests/test_code_generation.py +0 -0
  142. {adcp-2.5.0 → adcp-2.7.0}/tests/test_format_id_validation.py +0 -0
  143. {adcp-2.5.0 → adcp-2.7.0}/tests/test_helpers.py +0 -0
  144. {adcp-2.5.0 → adcp-2.7.0}/tests/test_preview_html.py +0 -0
  145. {adcp-2.5.0 → adcp-2.7.0}/tests/test_protocols.py +0 -0
  146. {adcp-2.5.0 → adcp-2.7.0}/tests/test_public_api.py +0 -0
  147. {adcp-2.5.0 → adcp-2.7.0}/tests/test_response_parser.py +0 -0
  148. {adcp-2.5.0 → adcp-2.7.0}/tests/test_simple_api.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: adcp
3
- Version: 2.5.0
3
+ Version: 2.7.0
4
4
  Summary: Official Python client for the Ad Context Protocol (AdCP)
5
5
  Author-email: AdCP Community <maintainers@adcontextprotocol.org>
6
6
  License: Apache-2.0
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "adcp"
7
- version = "2.5.0"
7
+ version = "2.7.0"
8
8
  description = "Official Python client for the Ad Context Protocol (AdCP)"
9
9
  authors = [
10
10
  {name = "AdCP Community", email = "maintainers@adcontextprotocol.org"}
@@ -56,51 +56,12 @@ from adcp.testing import (
56
56
  from adcp.types import _generated as generated
57
57
  from adcp.types import aliases
58
58
 
59
- # Re-export commonly-used request/response types for convenience
60
- # Users should import from main package (e.g., `from adcp import GetProductsRequest`)
61
- # rather than internal modules for better API stability
62
- from adcp.types._generated import (
63
- # Audience & Targeting
64
- ActivateSignalRequest,
65
- ActivateSignalResponse,
66
- # Creative Operations
67
- BuildCreativeRequest,
68
- BuildCreativeResponse,
69
- # Media Buy Operations
70
- CreateMediaBuyRequest,
71
- CreateMediaBuyResponse,
72
- # Common data types
73
- Error,
74
- Format,
75
- GetMediaBuyDeliveryRequest,
76
- GetMediaBuyDeliveryResponse,
77
- GetProductsRequest,
78
- GetProductsResponse,
79
- GetSignalsRequest,
80
- GetSignalsResponse,
81
- ListAuthorizedPropertiesRequest,
82
- ListAuthorizedPropertiesResponse,
83
- ListCreativeFormatsRequest,
84
- ListCreativeFormatsResponse,
85
- ListCreativesRequest,
86
- ListCreativesResponse,
87
- PreviewCreativeRequest,
88
- PreviewCreativeResponse,
89
- Product,
90
- Property,
91
- ProvidePerformanceFeedbackRequest,
92
- ProvidePerformanceFeedbackResponse,
93
- SyncCreativesRequest,
94
- SyncCreativesResponse,
95
- UpdateMediaBuyRequest,
96
- UpdateMediaBuyResponse,
97
- )
98
- from adcp.types._generated import TaskStatus as GeneratedTaskStatus
99
-
100
59
  # Re-export semantic type aliases for better ergonomics
101
60
  from adcp.types.aliases import (
102
61
  ActivateSignalErrorResponse,
103
62
  ActivateSignalSuccessResponse,
63
+ AgentDeployment,
64
+ AgentDestination,
104
65
  BothPreviewRender,
105
66
  BuildCreativeErrorResponse,
106
67
  BuildCreativeSuccessResponse,
@@ -111,14 +72,21 @@ from adcp.types.aliases import (
111
72
  InlineDaastAsset,
112
73
  InlineVastAsset,
113
74
  MediaSubAsset,
75
+ PlatformDeployment,
76
+ PlatformDestination,
114
77
  PreviewCreativeFormatRequest,
115
78
  PreviewCreativeInteractiveResponse,
116
79
  PreviewCreativeManifestRequest,
117
80
  PreviewCreativeStaticResponse,
81
+ PropertyId,
118
82
  PropertyIdActivationKey,
83
+ PropertyTag,
119
84
  PropertyTagActivationKey,
120
85
  ProvidePerformanceFeedbackErrorResponse,
121
86
  ProvidePerformanceFeedbackSuccessResponse,
87
+ PublisherPropertiesAll,
88
+ PublisherPropertiesById,
89
+ PublisherPropertiesByTag,
122
90
  SyncCreativesErrorResponse,
123
91
  SyncCreativesSuccessResponse,
124
92
  TextSubAsset,
@@ -132,11 +100,20 @@ from adcp.types.aliases import (
132
100
  )
133
101
  from adcp.types.core import AgentConfig, Protocol, TaskResult, TaskStatus, WebhookMetadata
134
102
 
103
+ # Re-export commonly-used request/response types for convenience
104
+ # Users should import from main package (e.g., `from adcp import GetProductsRequest`)
105
+ # rather than internal modules for better API stability
135
106
  # Re-export core domain types and pricing options from stable API
136
107
  # These are commonly used in typical workflows
137
108
  from adcp.types.stable import (
109
+ # Audience & Targeting
110
+ ActivateSignalRequest,
111
+ ActivateSignalResponse,
138
112
  # Core domain types
139
113
  BrandManifest,
114
+ # Creative Operations
115
+ BuildCreativeRequest,
116
+ BuildCreativeResponse,
140
117
  # Pricing options (all 9 types for product creation)
141
118
  CpcPricingOption,
142
119
  CpcvPricingOption,
@@ -144,19 +121,54 @@ from adcp.types.stable import (
144
121
  CpmFixedRatePricingOption,
145
122
  CppPricingOption,
146
123
  CpvPricingOption,
124
+ # Media Buy Operations
125
+ CreateMediaBuyRequest,
126
+ CreateMediaBuyResponse,
147
127
  Creative,
148
128
  CreativeManifest,
149
129
  # Status enums (for control flow)
150
130
  CreativeStatus,
131
+ # Common data types
132
+ Error,
151
133
  FlatRatePricingOption,
134
+ Format,
135
+ FormatId,
136
+ GetMediaBuyDeliveryRequest,
137
+ GetMediaBuyDeliveryResponse,
138
+ GetProductsRequest,
139
+ GetProductsResponse,
140
+ GetSignalsRequest,
141
+ GetSignalsResponse,
142
+ ListAuthorizedPropertiesRequest,
143
+ ListAuthorizedPropertiesResponse,
144
+ ListCreativeFormatsRequest,
145
+ ListCreativeFormatsResponse,
146
+ ListCreativesRequest,
147
+ ListCreativesResponse,
152
148
  MediaBuy,
153
149
  MediaBuyStatus,
154
150
  Package,
151
+ PackageRequest,
155
152
  PackageStatus,
153
+ PreviewCreativeRequest,
154
+ PreviewCreativeResponse,
155
+ PriceGuidance,
156
156
  PricingModel,
157
+ Product,
158
+ Property,
159
+ ProvidePerformanceFeedbackRequest,
160
+ ProvidePerformanceFeedbackResponse,
161
+ PushNotificationConfig,
162
+ SyncCreativesRequest,
163
+ SyncCreativesResponse,
164
+ UpdateMediaBuyRequest,
165
+ UpdateMediaBuyResponse,
157
166
  VcpmAuctionPricingOption,
158
167
  VcpmFixedRatePricingOption,
159
168
  )
169
+ from adcp.types.stable import (
170
+ TaskStatus as GeneratedTaskStatus,
171
+ )
160
172
  from adcp.validation import (
161
173
  ValidationError,
162
174
  validate_adagents,
@@ -165,7 +177,7 @@ from adcp.validation import (
165
177
  validate_publisher_properties_item,
166
178
  )
167
179
 
168
- __version__ = "2.5.0"
180
+ __version__ = "2.7.0"
169
181
 
170
182
  __all__ = [
171
183
  # Client classes
@@ -206,6 +218,7 @@ __all__ = [
206
218
  "ProvidePerformanceFeedbackResponse",
207
219
  "Error",
208
220
  "Format",
221
+ "FormatId",
209
222
  "Product",
210
223
  "Property",
211
224
  # Core domain types (from stable API)
@@ -214,6 +227,7 @@ __all__ = [
214
227
  "CreativeManifest",
215
228
  "MediaBuy",
216
229
  "Package",
230
+ "PackageRequest",
217
231
  # Package type aliases
218
232
  "CreatedPackageReference",
219
233
  # Status enums (for control flow)
@@ -221,7 +235,7 @@ __all__ = [
221
235
  "MediaBuyStatus",
222
236
  "PackageStatus",
223
237
  "PricingModel",
224
- # Pricing options (all 9 types)
238
+ # Pricing-related types
225
239
  "CpcPricingOption",
226
240
  "CpcvPricingOption",
227
241
  "CpmAuctionPricingOption",
@@ -229,8 +243,11 @@ __all__ = [
229
243
  "CppPricingOption",
230
244
  "CpvPricingOption",
231
245
  "FlatRatePricingOption",
246
+ "PriceGuidance",
232
247
  "VcpmAuctionPricingOption",
233
248
  "VcpmFixedRatePricingOption",
249
+ # Configuration types
250
+ "PushNotificationConfig",
234
251
  # Adagents validation
235
252
  "AuthorizationContext",
236
253
  "fetch_adagents",
@@ -281,6 +298,8 @@ __all__ = [
281
298
  # Semantic type aliases (for better API ergonomics)
282
299
  "ActivateSignalSuccessResponse",
283
300
  "ActivateSignalErrorResponse",
301
+ "AgentDeployment",
302
+ "AgentDestination",
284
303
  "BothPreviewRender",
285
304
  "BuildCreativeSuccessResponse",
286
305
  "BuildCreativeErrorResponse",
@@ -290,14 +309,21 @@ __all__ = [
290
309
  "InlineDaastAsset",
291
310
  "InlineVastAsset",
292
311
  "MediaSubAsset",
312
+ "PlatformDeployment",
313
+ "PlatformDestination",
293
314
  "PreviewCreativeFormatRequest",
294
315
  "PreviewCreativeManifestRequest",
295
316
  "PreviewCreativeStaticResponse",
296
317
  "PreviewCreativeInteractiveResponse",
318
+ "PropertyId",
297
319
  "PropertyIdActivationKey",
320
+ "PropertyTag",
298
321
  "PropertyTagActivationKey",
299
322
  "ProvidePerformanceFeedbackSuccessResponse",
300
323
  "ProvidePerformanceFeedbackErrorResponse",
324
+ "PublisherPropertiesAll",
325
+ "PublisherPropertiesById",
326
+ "PublisherPropertiesByTag",
301
327
  "SyncCreativesSuccessResponse",
302
328
  "SyncCreativesErrorResponse",
303
329
  "TextSubAsset",
@@ -17,7 +17,15 @@ from adcp.exceptions import ADCPWebhookSignatureError
17
17
  from adcp.protocols.a2a import A2AAdapter
18
18
  from adcp.protocols.base import ProtocolAdapter
19
19
  from adcp.protocols.mcp import MCPAdapter
20
- from adcp.types._generated import (
20
+ from adcp.types.core import (
21
+ Activity,
22
+ ActivityType,
23
+ AgentConfig,
24
+ Protocol,
25
+ TaskResult,
26
+ TaskStatus,
27
+ )
28
+ from adcp.types.stable import (
21
29
  ActivateSignalRequest,
22
30
  ActivateSignalResponse,
23
31
  GetMediaBuyDeliveryRequest,
@@ -40,15 +48,9 @@ from adcp.types._generated import (
40
48
  SyncCreativesResponse,
41
49
  WebhookPayload,
42
50
  )
43
- from adcp.types.core import (
44
- Activity,
45
- ActivityType,
46
- AgentConfig,
47
- Protocol,
48
- TaskResult,
49
- TaskStatus,
51
+ from adcp.types.stable import (
52
+ TaskStatus as GeneratedTaskStatus,
50
53
  )
51
- from adcp.types.generated_poc.task_status import TaskStatus as GeneratedTaskStatus
52
54
  from adcp.utils.operation_id import create_operation_id
53
55
 
54
56
  logger = logging.getLogger(__name__)
@@ -23,7 +23,7 @@ from __future__ import annotations
23
23
  from typing import TYPE_CHECKING, Any
24
24
 
25
25
  from adcp.exceptions import ADCPSimpleAPIError
26
- from adcp.types._generated import (
26
+ from adcp.types.stable import (
27
27
  ActivateSignalRequest,
28
28
  ActivateSignalResponse,
29
29
  GetMediaBuyDeliveryRequest,
@@ -17,6 +17,11 @@ from adcp.types.aliases import (
17
17
  InlineDaastAsset,
18
18
  InlineVastAsset,
19
19
  MediaSubAsset,
20
+ PropertyId,
21
+ PropertyTag,
22
+ PublisherPropertiesAll,
23
+ PublisherPropertiesById,
24
+ PublisherPropertiesByTag,
20
25
  TextSubAsset,
21
26
  UrlDaastAsset,
22
27
  UrlPreviewRender,
@@ -89,6 +94,13 @@ __all__ = [
89
94
  "UrlVastAsset",
90
95
  # Package type aliases
91
96
  "CreatedPackageReference",
97
+ # Publisher properties types
98
+ "PropertyId",
99
+ "PropertyTag",
100
+ # Publisher properties aliases
101
+ "PublisherPropertiesAll",
102
+ "PublisherPropertiesById",
103
+ "PublisherPropertiesByTag",
92
104
  # Stable API types (commonly used)
93
105
  "BrandManifest",
94
106
  "Creative",
@@ -10,7 +10,7 @@ Auto-generated by datamodel-code-generator from JSON schemas.
10
10
  DO NOT EDIT MANUALLY.
11
11
 
12
12
  Generated from: https://github.com/adcontextprotocol/adcp/tree/main/schemas
13
- Generation date: 2025-11-18 12:52:17 UTC
13
+ Generation date: 2025-11-19 02:03:09 UTC
14
14
  """
15
15
  # ruff: noqa: E501, I001
16
16
  from __future__ import annotations
@@ -19,7 +19,7 @@ from __future__ import annotations
19
19
  from adcp.types.generated_poc.activate_signal_request import ActivateSignalRequest
20
20
  from adcp.types.generated_poc.activate_signal_response import ActivateSignalResponse, ActivateSignalResponse1, ActivateSignalResponse2
21
21
  from adcp.types.generated_poc.activation_key import ActivationKey1, ActivationKey2
22
- from adcp.types.generated_poc.adagents import AuthorizedAgents, AuthorizedAgents1, AuthorizedAgents2, AuthorizedAgents3, AuthorizedSalesAgents, Contact, PropertyId, PropertyTag, PublisherProperties, PublisherProperties1, Tags
22
+ from adcp.types.generated_poc.adagents import AuthorizedAgents, AuthorizedAgents1, AuthorizedAgents2, AuthorizedAgents3, AuthorizedSalesAgents, Contact, PropertyId, PropertyTag, Tags
23
23
  from adcp.types.generated_poc.asset_type import AssetTypeSchema, ContentLength, Dimensions, Duration, FileSize, Quality, Requirements, Type
24
24
  from adcp.types.generated_poc.audio_asset import AudioAsset
25
25
  from adcp.types.generated_poc.brand_manifest import Asset, AssetType, BrandManifest, Colors, Disclaimer, FeedFormat, Fonts, Logo, Metadata, ProductCatalog, UpdateFrequency
@@ -33,7 +33,7 @@ from adcp.types.generated_poc.cpm_fixed_option import CpmFixedRatePricingOption
33
33
  from adcp.types.generated_poc.cpp_option import CppPricingOption, Parameters
34
34
  from adcp.types.generated_poc.cpv_option import CpvPricingOption, ViewThreshold, ViewThreshold1
35
35
  from adcp.types.generated_poc.create_media_buy_request import CreateMediaBuyRequest, ReportingFrequency, ReportingWebhook, RequestedMetric
36
- from adcp.types.generated_poc.create_media_buy_response import CreateMediaBuyResponse, CreateMediaBuyResponse1, CreateMediaBuyResponse2, Package
36
+ from adcp.types.generated_poc.create_media_buy_response import CreateMediaBuyResponse, CreateMediaBuyResponse1, CreateMediaBuyResponse2
37
37
  from adcp.types.generated_poc.creative_asset import CreativeAsset, Input
38
38
  from adcp.types.generated_poc.creative_assignment import CreativeAssignment
39
39
  from adcp.types.generated_poc.creative_manifest import CreativeManifest
@@ -80,7 +80,7 @@ from adcp.types.generated_poc.preview_creative_request import Input2, OutputForm
80
80
  from adcp.types.generated_poc.preview_creative_response import Input4, Preview, Preview1, Preview2, PreviewCreativeResponse, PreviewCreativeResponse1, PreviewCreativeResponse2, Response, Response1, Results, Results1
81
81
  from adcp.types.generated_poc.preview_render import Embedding, PreviewRender, PreviewRender1, PreviewRender2, PreviewRender3
82
82
  from adcp.types.generated_poc.pricing_model import PricingModel
83
- from adcp.types.generated_poc.product import DeliveryMeasurement, Product, ProductCard, ProductCardDetailed, PublisherProperties4, PublisherProperties5
83
+ from adcp.types.generated_poc.product import DeliveryMeasurement, Product, ProductCard, ProductCardDetailed
84
84
  from adcp.types.generated_poc.promoted_offerings import AssetSelectors, Offering, PromotedOfferings
85
85
  from adcp.types.generated_poc.promoted_products import PromotedProducts
86
86
  from adcp.types.generated_poc.property import Identifier, Property, PropertyType, Tag
@@ -88,6 +88,7 @@ from adcp.types.generated_poc.protocol_envelope import ProtocolEnvelope
88
88
  from adcp.types.generated_poc.provide_performance_feedback_request import ProvidePerformanceFeedbackRequest
89
89
  from adcp.types.generated_poc.provide_performance_feedback_response import ProvidePerformanceFeedbackResponse, ProvidePerformanceFeedbackResponse1, ProvidePerformanceFeedbackResponse2
90
90
  from adcp.types.generated_poc.publisher_identifier_types import PublisherIdentifierTypes
91
+ from adcp.types.generated_poc.publisher_property_selector import PublisherPropertySelector1, PublisherPropertySelector2, PublisherPropertySelector3
91
92
  from adcp.types.generated_poc.push_notification_config import Authentication, PushNotificationConfig, Scheme
92
93
  from adcp.types.generated_poc.reporting_capabilities import AvailableMetric, AvailableReportingFrequency, ReportingCapabilities
93
94
  from adcp.types.generated_poc.response import ProtocolResponse
@@ -113,6 +114,10 @@ from adcp.types.generated_poc.video_asset import VideoAsset
113
114
  from adcp.types.generated_poc.webhook_asset import Method, Method1, ResponseType, Security, WebhookAsset
114
115
  from adcp.types.generated_poc.webhook_payload import WebhookPayload
115
116
 
117
+ # Special imports for name collisions (qualified names for types defined in multiple modules)
118
+ from adcp.types.generated_poc.create_media_buy_response import Package as _PackageFromCreateMediaBuyResponse
119
+ from adcp.types.generated_poc.package import Package as _PackageFromPackage
120
+
116
121
  # Backward compatibility aliases for renamed types
117
122
  Channels = AdvertisingChannels
118
123
 
@@ -146,9 +151,9 @@ __all__ = [
146
151
  "ListCreativesResponse", "Logo", "MarkdownAsset", "MarkdownFlavor", "Measurement",
147
152
  "MeasurementPeriod", "MediaBuy", "MediaBuyDelivery", "MediaBuyStatus", "Metadata", "Method",
148
153
  "Method1", "MetricType", "ModuleType", "NotificationType", "Offering", "OutputFormat",
149
- "Pacing", "Package", "PackageRequest", "PackageStatus", "Packages", "Packages1", "Packages2",
150
- "Packages3", "Pagination", "Parameters", "Performance", "PerformanceFeedback", "Placement",
151
- "Preview", "Preview1", "Preview2", "PreviewCreativeRequest", "PreviewCreativeRequest1",
154
+ "Pacing", "PackageRequest", "PackageStatus", "Packages", "Packages1", "Packages2", "Packages3",
155
+ "Pagination", "Parameters", "Performance", "PerformanceFeedback", "Placement", "Preview",
156
+ "Preview1", "Preview2", "PreviewCreativeRequest", "PreviewCreativeRequest1",
152
157
  "PreviewCreativeRequest2", "PreviewCreativeResponse", "PreviewCreativeResponse1",
153
158
  "PreviewCreativeResponse2", "PreviewRender", "PreviewRender1", "PreviewRender2",
154
159
  "PreviewRender3", "PriceGuidance", "Pricing", "PricingModel", "PrimaryCountry", "Product",
@@ -157,7 +162,7 @@ __all__ = [
157
162
  "PropertyType", "ProtocolEnvelope", "ProtocolResponse", "ProvidePerformanceFeedbackRequest",
158
163
  "ProvidePerformanceFeedbackResponse", "ProvidePerformanceFeedbackResponse1",
159
164
  "ProvidePerformanceFeedbackResponse2", "PublisherDomain", "PublisherIdentifierTypes",
160
- "PublisherProperties", "PublisherProperties1", "PublisherProperties4", "PublisherProperties5",
165
+ "PublisherPropertySelector1", "PublisherPropertySelector2", "PublisherPropertySelector3",
161
166
  "PushNotificationConfig", "Quality", "QuartileData", "QuerySummary", "Render",
162
167
  "ReportingCapabilities", "ReportingFrequency", "ReportingPeriod", "ReportingWebhook",
163
168
  "Request", "RequestedMetric", "Requirements", "Response", "Response1", "ResponseType",
@@ -171,5 +176,6 @@ __all__ = [
171
176
  "UpdateMediaBuyResponse", "UpdateMediaBuyResponse1", "UpdateMediaBuyResponse2", "UrlAsset",
172
177
  "UrlType", "ValidationMode", "VastAsset1", "VastAsset2", "VastVersion",
173
178
  "VcpmAuctionPricingOption", "VcpmFixedRatePricingOption", "VenueBreakdownItem", "VideoAsset",
174
- "ViewThreshold", "ViewThreshold1", "WebhookAsset", "WebhookPayload"
179
+ "ViewThreshold", "ViewThreshold1", "WebhookAsset", "WebhookPayload",
180
+ "_PackageFromCreateMediaBuyResponse", "_PackageFromPackage"
175
181
  ]
@@ -31,7 +31,6 @@ immediately rather than at runtime when users try to use the aliases.
31
31
 
32
32
  from __future__ import annotations
33
33
 
34
- # Import all generated types that need semantic aliases
35
34
  from adcp.types._generated import (
36
35
  # Activation responses
37
36
  ActivateSignalResponse1,
@@ -48,6 +47,12 @@ from adcp.types._generated import (
48
47
  # DAAST assets
49
48
  DaastAsset1,
50
49
  DaastAsset2,
50
+ # Deployment types
51
+ Deployment1,
52
+ Deployment2,
53
+ # Destination types
54
+ Destination1,
55
+ Destination2,
51
56
  # Preview creative requests
52
57
  PreviewCreativeRequest1,
53
58
  PreviewCreativeRequest2,
@@ -58,6 +63,9 @@ from adcp.types._generated import (
58
63
  PreviewRender1,
59
64
  PreviewRender2,
60
65
  PreviewRender3,
66
+ # Publisher properties types
67
+ PropertyId,
68
+ PropertyTag,
61
69
  # Performance feedback responses
62
70
  ProvidePerformanceFeedbackResponse1,
63
71
  ProvidePerformanceFeedbackResponse2,
@@ -77,12 +85,24 @@ from adcp.types._generated import (
77
85
  VastAsset1,
78
86
  VastAsset2,
79
87
  )
88
+ from adcp.types._generated import (
89
+ PublisherPropertySelector1 as PublisherPropertiesInternal,
90
+ )
91
+ from adcp.types._generated import (
92
+ PublisherPropertySelector2 as PublisherPropertiesByIdInternal,
93
+ )
94
+ from adcp.types._generated import (
95
+ PublisherPropertySelector3 as PublisherPropertiesByTagInternal,
96
+ )
80
97
 
81
- # Import Package types directly from their modules to avoid collision issues
82
- from adcp.types.generated_poc.create_media_buy_response import (
83
- Package as CreatedPackageInternal,
98
+ # Import all generated types that need semantic aliases
99
+ from adcp.types._generated import (
100
+ # Package types (from name collision resolution)
101
+ _PackageFromCreateMediaBuyResponse as CreatedPackageInternal,
102
+ )
103
+ from adcp.types._generated import (
104
+ _PackageFromPackage as FullPackageInternal,
84
105
  )
85
- from adcp.types.generated_poc.package import Package as FullPackageInternal
86
106
 
87
107
  # ============================================================================
88
108
  # RESPONSE TYPE ALIASES - Success/Error Discriminated Unions
@@ -252,6 +272,213 @@ Used in:
252
272
  Fields: buyer_ref, package_id only
253
273
  """
254
274
 
275
+ # ============================================================================
276
+ # PUBLISHER PROPERTIES ALIASES - Selection Type Discriminated Unions
277
+ # ============================================================================
278
+ # The AdCP schemas define PublisherProperties as a discriminated union with
279
+ # three variants based on the `selection_type` field:
280
+ #
281
+ # 1. All Properties (selection_type='all'):
282
+ # - Includes all properties from the publisher
283
+ # - Only requires publisher_domain
284
+ #
285
+ # 2. By ID (selection_type='by_id'):
286
+ # - Specific properties selected by property_id
287
+ # - Requires publisher_domain + property_ids array
288
+ #
289
+ # 3. By Tag (selection_type='by_tag'):
290
+ # - Properties selected by tags
291
+ # - Requires publisher_domain + property_tags array
292
+ #
293
+ # These semantic aliases match the discriminator values and make code more
294
+ # readable when constructing or pattern-matching publisher properties.
295
+
296
+ PublisherPropertiesAll = PublisherPropertiesInternal
297
+ """Publisher properties covering all properties from the publisher.
298
+
299
+ This variant uses selection_type='all' and includes all properties listed
300
+ in the publisher's adagents.json file.
301
+
302
+ Fields:
303
+ - publisher_domain: Domain where adagents.json is hosted
304
+ - selection_type: Literal['all']
305
+
306
+ Example:
307
+ ```python
308
+ from adcp import PublisherPropertiesAll
309
+
310
+ props = PublisherPropertiesAll(
311
+ publisher_domain="example.com",
312
+ selection_type="all"
313
+ )
314
+ ```
315
+ """
316
+
317
+ PublisherPropertiesById = PublisherPropertiesByIdInternal
318
+ """Publisher properties selected by specific property IDs.
319
+
320
+ This variant uses selection_type='by_id' and specifies an explicit list
321
+ of property IDs from the publisher's adagents.json file.
322
+
323
+ Fields:
324
+ - publisher_domain: Domain where adagents.json is hosted
325
+ - selection_type: Literal['by_id']
326
+ - property_ids: List of PropertyId (non-empty)
327
+
328
+ Example:
329
+ ```python
330
+ from adcp import PublisherPropertiesById, PropertyId
331
+
332
+ props = PublisherPropertiesById(
333
+ publisher_domain="example.com",
334
+ selection_type="by_id",
335
+ property_ids=[PropertyId("homepage"), PropertyId("sports_section")]
336
+ )
337
+ ```
338
+ """
339
+
340
+ PublisherPropertiesByTag = PublisherPropertiesByTagInternal
341
+ """Publisher properties selected by tags.
342
+
343
+ This variant uses selection_type='by_tag' and specifies property tags.
344
+ The product covers all properties in the publisher's adagents.json that
345
+ have these tags.
346
+
347
+ Fields:
348
+ - publisher_domain: Domain where adagents.json is hosted
349
+ - selection_type: Literal['by_tag']
350
+ - property_tags: List of PropertyTag (non-empty)
351
+
352
+ Example:
353
+ ```python
354
+ from adcp import PublisherPropertiesByTag, PropertyTag
355
+
356
+ props = PublisherPropertiesByTag(
357
+ publisher_domain="example.com",
358
+ selection_type="by_tag",
359
+ property_tags=[PropertyTag("premium"), PropertyTag("video")]
360
+ )
361
+ ```
362
+ """
363
+
364
+ # ============================================================================
365
+ # DEPLOYMENT & DESTINATION ALIASES - Signal Deployment Type Discriminated Unions
366
+ # ============================================================================
367
+ # The AdCP schemas define Deployment and Destination as discriminated unions
368
+ # with two variants based on the `type` field:
369
+ #
370
+ # Deployment (where a signal is activated):
371
+ # - Platform (type='platform'): DSP platform with platform ID
372
+ # - Agent (type='agent'): Sales agent with agent URL
373
+ #
374
+ # Destination (where a signal can be activated):
375
+ # - Platform (type='platform'): Target DSP platform
376
+ # - Agent (type='agent'): Target sales agent
377
+ #
378
+ # These are used in GetSignalsResponse to describe signal availability and
379
+ # activation status across different advertising platforms and agents.
380
+
381
+ PlatformDeployment = Deployment1
382
+ """Signal deployment to a DSP platform.
383
+
384
+ This variant uses type='platform' for platform-based signal deployments
385
+ like The Trade Desk, Amazon DSP, etc.
386
+
387
+ Fields:
388
+ - type: Literal['platform']
389
+ - platform: Platform identifier (e.g., 'the-trade-desk')
390
+ - account: Optional account identifier
391
+ - is_live: Whether signal is currently active
392
+ - deployed_at: Activation timestamp if live
393
+ - activation_key: Targeting key if live and accessible
394
+ - estimated_activation_duration_minutes: Time to complete activation
395
+
396
+ Example:
397
+ ```python
398
+ from adcp import PlatformDeployment
399
+
400
+ deployment = PlatformDeployment(
401
+ type="platform",
402
+ platform="the-trade-desk",
403
+ account="advertiser-123",
404
+ is_live=True,
405
+ deployed_at=datetime.now(timezone.utc)
406
+ )
407
+ ```
408
+ """
409
+
410
+ AgentDeployment = Deployment2
411
+ """Signal deployment to a sales agent.
412
+
413
+ This variant uses type='agent' for agent-based signal deployments
414
+ using agent URLs.
415
+
416
+ Fields:
417
+ - type: Literal['agent']
418
+ - agent_url: URL identifying the destination agent
419
+ - account: Optional account identifier
420
+ - is_live: Whether signal is currently active
421
+ - deployed_at: Activation timestamp if live
422
+ - activation_key: Targeting key if live and accessible
423
+ - estimated_activation_duration_minutes: Time to complete activation
424
+
425
+ Example:
426
+ ```python
427
+ from adcp import AgentDeployment
428
+
429
+ deployment = AgentDeployment(
430
+ type="agent",
431
+ agent_url="https://agent.example.com",
432
+ is_live=False,
433
+ estimated_activation_duration_minutes=30.0
434
+ )
435
+ ```
436
+ """
437
+
438
+ PlatformDestination = Destination1
439
+ """Available signal destination on a DSP platform.
440
+
441
+ This variant uses type='platform' for platform-based signal destinations.
442
+
443
+ Fields:
444
+ - type: Literal['platform']
445
+ - platform: Platform identifier (e.g., 'the-trade-desk', 'amazon-dsp')
446
+ - account: Optional account identifier on the platform
447
+
448
+ Example:
449
+ ```python
450
+ from adcp import PlatformDestination
451
+
452
+ destination = PlatformDestination(
453
+ type="platform",
454
+ platform="the-trade-desk",
455
+ account="advertiser-123"
456
+ )
457
+ ```
458
+ """
459
+
460
+ AgentDestination = Destination2
461
+ """Available signal destination via a sales agent.
462
+
463
+ This variant uses type='agent' for agent-based signal destinations.
464
+
465
+ Fields:
466
+ - type: Literal['agent']
467
+ - agent_url: URL identifying the destination agent
468
+ - account: Optional account identifier on the agent
469
+
470
+ Example:
471
+ ```python
472
+ from adcp import AgentDestination
473
+
474
+ destination = AgentDestination(
475
+ type="agent",
476
+ agent_url="https://agent.example.com",
477
+ account="partner-456"
478
+ )
479
+ ```
480
+ """
481
+
255
482
  # ============================================================================
256
483
  # EXPORTS
257
484
  # ============================================================================
@@ -300,4 +527,17 @@ __all__ = [
300
527
  # Package type aliases
301
528
  "CreatedPackageReference",
302
529
  "Package",
530
+ # Publisher properties types
531
+ "PropertyId",
532
+ "PropertyTag",
533
+ # Publisher properties aliases
534
+ "PublisherPropertiesAll",
535
+ "PublisherPropertiesById",
536
+ "PublisherPropertiesByTag",
537
+ # Deployment aliases
538
+ "PlatformDeployment",
539
+ "AgentDeployment",
540
+ # Destination aliases
541
+ "PlatformDestination",
542
+ "AgentDestination",
303
543
  ]