adcp 2.4.1__py3-none-any.whl → 2.6.0__py3-none-any.whl
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.
- adcp/__init__.py +22 -1
- adcp/types/__init__.py +15 -0
- adcp/types/_generated.py +1 -1
- adcp/types/aliases.py +295 -0
- adcp/types/stable.py +4 -2
- {adcp-2.4.1.dist-info → adcp-2.6.0.dist-info}/METADATA +17 -2
- {adcp-2.4.1.dist-info → adcp-2.6.0.dist-info}/RECORD +11 -11
- {adcp-2.4.1.dist-info → adcp-2.6.0.dist-info}/WHEEL +0 -0
- {adcp-2.4.1.dist-info → adcp-2.6.0.dist-info}/entry_points.txt +0 -0
- {adcp-2.4.1.dist-info → adcp-2.6.0.dist-info}/licenses/LICENSE +0 -0
- {adcp-2.4.1.dist-info → adcp-2.6.0.dist-info}/top_level.txt +0 -0
adcp/__init__.py
CHANGED
|
@@ -101,23 +101,33 @@ from adcp.types._generated import TaskStatus as GeneratedTaskStatus
|
|
|
101
101
|
from adcp.types.aliases import (
|
|
102
102
|
ActivateSignalErrorResponse,
|
|
103
103
|
ActivateSignalSuccessResponse,
|
|
104
|
+
AgentDeployment,
|
|
105
|
+
AgentDestination,
|
|
104
106
|
BothPreviewRender,
|
|
105
107
|
BuildCreativeErrorResponse,
|
|
106
108
|
BuildCreativeSuccessResponse,
|
|
109
|
+
CreatedPackageReference,
|
|
107
110
|
CreateMediaBuyErrorResponse,
|
|
108
111
|
CreateMediaBuySuccessResponse,
|
|
109
112
|
HtmlPreviewRender,
|
|
110
113
|
InlineDaastAsset,
|
|
111
114
|
InlineVastAsset,
|
|
112
115
|
MediaSubAsset,
|
|
116
|
+
PlatformDeployment,
|
|
117
|
+
PlatformDestination,
|
|
113
118
|
PreviewCreativeFormatRequest,
|
|
114
119
|
PreviewCreativeInteractiveResponse,
|
|
115
120
|
PreviewCreativeManifestRequest,
|
|
116
121
|
PreviewCreativeStaticResponse,
|
|
122
|
+
PropertyId,
|
|
117
123
|
PropertyIdActivationKey,
|
|
124
|
+
PropertyTag,
|
|
118
125
|
PropertyTagActivationKey,
|
|
119
126
|
ProvidePerformanceFeedbackErrorResponse,
|
|
120
127
|
ProvidePerformanceFeedbackSuccessResponse,
|
|
128
|
+
PublisherPropertiesAll,
|
|
129
|
+
PublisherPropertiesById,
|
|
130
|
+
PublisherPropertiesByTag,
|
|
121
131
|
SyncCreativesErrorResponse,
|
|
122
132
|
SyncCreativesSuccessResponse,
|
|
123
133
|
TextSubAsset,
|
|
@@ -164,7 +174,7 @@ from adcp.validation import (
|
|
|
164
174
|
validate_publisher_properties_item,
|
|
165
175
|
)
|
|
166
176
|
|
|
167
|
-
__version__ = "2.
|
|
177
|
+
__version__ = "2.6.0"
|
|
168
178
|
|
|
169
179
|
__all__ = [
|
|
170
180
|
# Client classes
|
|
@@ -213,6 +223,8 @@ __all__ = [
|
|
|
213
223
|
"CreativeManifest",
|
|
214
224
|
"MediaBuy",
|
|
215
225
|
"Package",
|
|
226
|
+
# Package type aliases
|
|
227
|
+
"CreatedPackageReference",
|
|
216
228
|
# Status enums (for control flow)
|
|
217
229
|
"CreativeStatus",
|
|
218
230
|
"MediaBuyStatus",
|
|
@@ -278,6 +290,8 @@ __all__ = [
|
|
|
278
290
|
# Semantic type aliases (for better API ergonomics)
|
|
279
291
|
"ActivateSignalSuccessResponse",
|
|
280
292
|
"ActivateSignalErrorResponse",
|
|
293
|
+
"AgentDeployment",
|
|
294
|
+
"AgentDestination",
|
|
281
295
|
"BothPreviewRender",
|
|
282
296
|
"BuildCreativeSuccessResponse",
|
|
283
297
|
"BuildCreativeErrorResponse",
|
|
@@ -287,14 +301,21 @@ __all__ = [
|
|
|
287
301
|
"InlineDaastAsset",
|
|
288
302
|
"InlineVastAsset",
|
|
289
303
|
"MediaSubAsset",
|
|
304
|
+
"PlatformDeployment",
|
|
305
|
+
"PlatformDestination",
|
|
290
306
|
"PreviewCreativeFormatRequest",
|
|
291
307
|
"PreviewCreativeManifestRequest",
|
|
292
308
|
"PreviewCreativeStaticResponse",
|
|
293
309
|
"PreviewCreativeInteractiveResponse",
|
|
310
|
+
"PropertyId",
|
|
294
311
|
"PropertyIdActivationKey",
|
|
312
|
+
"PropertyTag",
|
|
295
313
|
"PropertyTagActivationKey",
|
|
296
314
|
"ProvidePerformanceFeedbackSuccessResponse",
|
|
297
315
|
"ProvidePerformanceFeedbackErrorResponse",
|
|
316
|
+
"PublisherPropertiesAll",
|
|
317
|
+
"PublisherPropertiesById",
|
|
318
|
+
"PublisherPropertiesByTag",
|
|
298
319
|
"SyncCreativesSuccessResponse",
|
|
299
320
|
"SyncCreativesErrorResponse",
|
|
300
321
|
"TextSubAsset",
|
adcp/types/__init__.py
CHANGED
|
@@ -12,10 +12,16 @@ adcp.types or adcp.types.stable for stable, versioned types.
|
|
|
12
12
|
|
|
13
13
|
from adcp.types.aliases import (
|
|
14
14
|
BothPreviewRender,
|
|
15
|
+
CreatedPackageReference,
|
|
15
16
|
HtmlPreviewRender,
|
|
16
17
|
InlineDaastAsset,
|
|
17
18
|
InlineVastAsset,
|
|
18
19
|
MediaSubAsset,
|
|
20
|
+
PropertyId,
|
|
21
|
+
PropertyTag,
|
|
22
|
+
PublisherPropertiesAll,
|
|
23
|
+
PublisherPropertiesById,
|
|
24
|
+
PublisherPropertiesByTag,
|
|
19
25
|
TextSubAsset,
|
|
20
26
|
UrlDaastAsset,
|
|
21
27
|
UrlPreviewRender,
|
|
@@ -86,6 +92,15 @@ __all__ = [
|
|
|
86
92
|
"UrlDaastAsset",
|
|
87
93
|
"UrlPreviewRender",
|
|
88
94
|
"UrlVastAsset",
|
|
95
|
+
# Package type aliases
|
|
96
|
+
"CreatedPackageReference",
|
|
97
|
+
# Publisher properties types
|
|
98
|
+
"PropertyId",
|
|
99
|
+
"PropertyTag",
|
|
100
|
+
# Publisher properties aliases
|
|
101
|
+
"PublisherPropertiesAll",
|
|
102
|
+
"PublisherPropertiesById",
|
|
103
|
+
"PublisherPropertiesByTag",
|
|
89
104
|
# Stable API types (commonly used)
|
|
90
105
|
"BrandManifest",
|
|
91
106
|
"Creative",
|
adcp/types/_generated.py
CHANGED
|
@@ -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:
|
|
13
|
+
Generation date: 2025-11-18 12:52:17 UTC
|
|
14
14
|
"""
|
|
15
15
|
# ruff: noqa: E501, I001
|
|
16
16
|
from __future__ import annotations
|
adcp/types/aliases.py
CHANGED
|
@@ -48,6 +48,12 @@ from adcp.types._generated import (
|
|
|
48
48
|
# DAAST assets
|
|
49
49
|
DaastAsset1,
|
|
50
50
|
DaastAsset2,
|
|
51
|
+
# Deployment types
|
|
52
|
+
Deployment1,
|
|
53
|
+
Deployment2,
|
|
54
|
+
# Destination types
|
|
55
|
+
Destination1,
|
|
56
|
+
Destination2,
|
|
51
57
|
# Preview creative requests
|
|
52
58
|
PreviewCreativeRequest1,
|
|
53
59
|
PreviewCreativeRequest2,
|
|
@@ -78,6 +84,27 @@ from adcp.types._generated import (
|
|
|
78
84
|
VastAsset2,
|
|
79
85
|
)
|
|
80
86
|
|
|
87
|
+
# Import Package types directly from their modules to avoid collision issues
|
|
88
|
+
from adcp.types.generated_poc.create_media_buy_response import (
|
|
89
|
+
Package as CreatedPackageInternal,
|
|
90
|
+
)
|
|
91
|
+
from adcp.types.generated_poc.package import Package as FullPackageInternal
|
|
92
|
+
|
|
93
|
+
# Import PublisherProperties types and related types from product module
|
|
94
|
+
from adcp.types.generated_poc.product import (
|
|
95
|
+
PropertyId,
|
|
96
|
+
PropertyTag,
|
|
97
|
+
)
|
|
98
|
+
from adcp.types.generated_poc.product import (
|
|
99
|
+
PublisherProperties as PublisherPropertiesInternal,
|
|
100
|
+
)
|
|
101
|
+
from adcp.types.generated_poc.product import (
|
|
102
|
+
PublisherProperties4 as PublisherPropertiesByIdInternal,
|
|
103
|
+
)
|
|
104
|
+
from adcp.types.generated_poc.product import (
|
|
105
|
+
PublisherProperties5 as PublisherPropertiesByTagInternal,
|
|
106
|
+
)
|
|
107
|
+
|
|
81
108
|
# ============================================================================
|
|
82
109
|
# RESPONSE TYPE ALIASES - Success/Error Discriminated Unions
|
|
83
110
|
# ============================================================================
|
|
@@ -201,6 +228,258 @@ MediaSubAsset = SubAsset1
|
|
|
201
228
|
TextSubAsset = SubAsset2
|
|
202
229
|
"""SubAsset for text content (headlines, body text) - asset_kind='text', provides content."""
|
|
203
230
|
|
|
231
|
+
# ============================================================================
|
|
232
|
+
# PACKAGE TYPE ALIASES - Resolving Type Name Collisions
|
|
233
|
+
# ============================================================================
|
|
234
|
+
# The AdCP schemas define two genuinely different types both named "Package":
|
|
235
|
+
#
|
|
236
|
+
# 1. Full Package (from package.json schema):
|
|
237
|
+
# - Complete operational package with all fields (budget, pricing_option_id, etc.)
|
|
238
|
+
# - Used in MediaBuy, update operations, and package management
|
|
239
|
+
# - Has 12+ fields for full package configuration
|
|
240
|
+
#
|
|
241
|
+
# 2. Created Package (from create-media-buy-response.json schema):
|
|
242
|
+
# - Minimal response type with only IDs (buyer_ref, package_id)
|
|
243
|
+
# - Used in CreateMediaBuy success responses
|
|
244
|
+
# - Only 2 fields - represents newly created package references
|
|
245
|
+
#
|
|
246
|
+
# The code generator's "first wins" collision handling exports the Created Package
|
|
247
|
+
# as "Package", shadowing the Full Package. These semantic aliases provide clear,
|
|
248
|
+
# unambiguous names for both types.
|
|
249
|
+
|
|
250
|
+
Package = FullPackageInternal
|
|
251
|
+
"""Complete package configuration with all operational fields.
|
|
252
|
+
|
|
253
|
+
This is the canonical Package type used throughout AdCP for package management.
|
|
254
|
+
|
|
255
|
+
Used in:
|
|
256
|
+
- MediaBuy.packages (list of full package details)
|
|
257
|
+
- Update operations (modifying existing packages)
|
|
258
|
+
- Package management (creating/configuring packages)
|
|
259
|
+
|
|
260
|
+
Fields include: budget, pricing_option_id, product_id, status, bid_price,
|
|
261
|
+
creative_assignments, format_ids_to_provide, impressions, pacing, targeting_overlay
|
|
262
|
+
"""
|
|
263
|
+
|
|
264
|
+
CreatedPackageReference = CreatedPackageInternal
|
|
265
|
+
"""Minimal package reference with only IDs returned after creation.
|
|
266
|
+
|
|
267
|
+
This is NOT the full Package type - it's a lightweight reference returned
|
|
268
|
+
in CreateMediaBuySuccessResponse to indicate which packages were created.
|
|
269
|
+
|
|
270
|
+
Used in:
|
|
271
|
+
- CreateMediaBuySuccessResponse.packages (list of created package references)
|
|
272
|
+
|
|
273
|
+
Fields: buyer_ref, package_id only
|
|
274
|
+
"""
|
|
275
|
+
|
|
276
|
+
# ============================================================================
|
|
277
|
+
# PUBLISHER PROPERTIES ALIASES - Selection Type Discriminated Unions
|
|
278
|
+
# ============================================================================
|
|
279
|
+
# The AdCP schemas define PublisherProperties as a discriminated union with
|
|
280
|
+
# three variants based on the `selection_type` field:
|
|
281
|
+
#
|
|
282
|
+
# 1. All Properties (selection_type='all'):
|
|
283
|
+
# - Includes all properties from the publisher
|
|
284
|
+
# - Only requires publisher_domain
|
|
285
|
+
#
|
|
286
|
+
# 2. By ID (selection_type='by_id'):
|
|
287
|
+
# - Specific properties selected by property_id
|
|
288
|
+
# - Requires publisher_domain + property_ids array
|
|
289
|
+
#
|
|
290
|
+
# 3. By Tag (selection_type='by_tag'):
|
|
291
|
+
# - Properties selected by tags
|
|
292
|
+
# - Requires publisher_domain + property_tags array
|
|
293
|
+
#
|
|
294
|
+
# These semantic aliases match the discriminator values and make code more
|
|
295
|
+
# readable when constructing or pattern-matching publisher properties.
|
|
296
|
+
|
|
297
|
+
PublisherPropertiesAll = PublisherPropertiesInternal
|
|
298
|
+
"""Publisher properties covering all properties from the publisher.
|
|
299
|
+
|
|
300
|
+
This variant uses selection_type='all' and includes all properties listed
|
|
301
|
+
in the publisher's adagents.json file.
|
|
302
|
+
|
|
303
|
+
Fields:
|
|
304
|
+
- publisher_domain: Domain where adagents.json is hosted
|
|
305
|
+
- selection_type: Literal['all']
|
|
306
|
+
|
|
307
|
+
Example:
|
|
308
|
+
```python
|
|
309
|
+
from adcp import PublisherPropertiesAll
|
|
310
|
+
|
|
311
|
+
props = PublisherPropertiesAll(
|
|
312
|
+
publisher_domain="example.com",
|
|
313
|
+
selection_type="all"
|
|
314
|
+
)
|
|
315
|
+
```
|
|
316
|
+
"""
|
|
317
|
+
|
|
318
|
+
PublisherPropertiesById = PublisherPropertiesByIdInternal
|
|
319
|
+
"""Publisher properties selected by specific property IDs.
|
|
320
|
+
|
|
321
|
+
This variant uses selection_type='by_id' and specifies an explicit list
|
|
322
|
+
of property IDs from the publisher's adagents.json file.
|
|
323
|
+
|
|
324
|
+
Fields:
|
|
325
|
+
- publisher_domain: Domain where adagents.json is hosted
|
|
326
|
+
- selection_type: Literal['by_id']
|
|
327
|
+
- property_ids: List of PropertyId (non-empty)
|
|
328
|
+
|
|
329
|
+
Example:
|
|
330
|
+
```python
|
|
331
|
+
from adcp import PublisherPropertiesById, PropertyId
|
|
332
|
+
|
|
333
|
+
props = PublisherPropertiesById(
|
|
334
|
+
publisher_domain="example.com",
|
|
335
|
+
selection_type="by_id",
|
|
336
|
+
property_ids=[PropertyId("homepage"), PropertyId("sports_section")]
|
|
337
|
+
)
|
|
338
|
+
```
|
|
339
|
+
"""
|
|
340
|
+
|
|
341
|
+
PublisherPropertiesByTag = PublisherPropertiesByTagInternal
|
|
342
|
+
"""Publisher properties selected by tags.
|
|
343
|
+
|
|
344
|
+
This variant uses selection_type='by_tag' and specifies property tags.
|
|
345
|
+
The product covers all properties in the publisher's adagents.json that
|
|
346
|
+
have these tags.
|
|
347
|
+
|
|
348
|
+
Fields:
|
|
349
|
+
- publisher_domain: Domain where adagents.json is hosted
|
|
350
|
+
- selection_type: Literal['by_tag']
|
|
351
|
+
- property_tags: List of PropertyTag (non-empty)
|
|
352
|
+
|
|
353
|
+
Example:
|
|
354
|
+
```python
|
|
355
|
+
from adcp import PublisherPropertiesByTag, PropertyTag
|
|
356
|
+
|
|
357
|
+
props = PublisherPropertiesByTag(
|
|
358
|
+
publisher_domain="example.com",
|
|
359
|
+
selection_type="by_tag",
|
|
360
|
+
property_tags=[PropertyTag("premium"), PropertyTag("video")]
|
|
361
|
+
)
|
|
362
|
+
```
|
|
363
|
+
"""
|
|
364
|
+
|
|
365
|
+
# ============================================================================
|
|
366
|
+
# DEPLOYMENT & DESTINATION ALIASES - Signal Deployment Type Discriminated Unions
|
|
367
|
+
# ============================================================================
|
|
368
|
+
# The AdCP schemas define Deployment and Destination as discriminated unions
|
|
369
|
+
# with two variants based on the `type` field:
|
|
370
|
+
#
|
|
371
|
+
# Deployment (where a signal is activated):
|
|
372
|
+
# - Platform (type='platform'): DSP platform with platform ID
|
|
373
|
+
# - Agent (type='agent'): Sales agent with agent URL
|
|
374
|
+
#
|
|
375
|
+
# Destination (where a signal can be activated):
|
|
376
|
+
# - Platform (type='platform'): Target DSP platform
|
|
377
|
+
# - Agent (type='agent'): Target sales agent
|
|
378
|
+
#
|
|
379
|
+
# These are used in GetSignalsResponse to describe signal availability and
|
|
380
|
+
# activation status across different advertising platforms and agents.
|
|
381
|
+
|
|
382
|
+
PlatformDeployment = Deployment1
|
|
383
|
+
"""Signal deployment to a DSP platform.
|
|
384
|
+
|
|
385
|
+
This variant uses type='platform' for platform-based signal deployments
|
|
386
|
+
like The Trade Desk, Amazon DSP, etc.
|
|
387
|
+
|
|
388
|
+
Fields:
|
|
389
|
+
- type: Literal['platform']
|
|
390
|
+
- platform: Platform identifier (e.g., 'the-trade-desk')
|
|
391
|
+
- account: Optional account identifier
|
|
392
|
+
- is_live: Whether signal is currently active
|
|
393
|
+
- deployed_at: Activation timestamp if live
|
|
394
|
+
- activation_key: Targeting key if live and accessible
|
|
395
|
+
- estimated_activation_duration_minutes: Time to complete activation
|
|
396
|
+
|
|
397
|
+
Example:
|
|
398
|
+
```python
|
|
399
|
+
from adcp import PlatformDeployment
|
|
400
|
+
|
|
401
|
+
deployment = PlatformDeployment(
|
|
402
|
+
type="platform",
|
|
403
|
+
platform="the-trade-desk",
|
|
404
|
+
account="advertiser-123",
|
|
405
|
+
is_live=True,
|
|
406
|
+
deployed_at=datetime.now(timezone.utc)
|
|
407
|
+
)
|
|
408
|
+
```
|
|
409
|
+
"""
|
|
410
|
+
|
|
411
|
+
AgentDeployment = Deployment2
|
|
412
|
+
"""Signal deployment to a sales agent.
|
|
413
|
+
|
|
414
|
+
This variant uses type='agent' for agent-based signal deployments
|
|
415
|
+
using agent URLs.
|
|
416
|
+
|
|
417
|
+
Fields:
|
|
418
|
+
- type: Literal['agent']
|
|
419
|
+
- agent_url: URL identifying the destination agent
|
|
420
|
+
- account: Optional account identifier
|
|
421
|
+
- is_live: Whether signal is currently active
|
|
422
|
+
- deployed_at: Activation timestamp if live
|
|
423
|
+
- activation_key: Targeting key if live and accessible
|
|
424
|
+
- estimated_activation_duration_minutes: Time to complete activation
|
|
425
|
+
|
|
426
|
+
Example:
|
|
427
|
+
```python
|
|
428
|
+
from adcp import AgentDeployment
|
|
429
|
+
|
|
430
|
+
deployment = AgentDeployment(
|
|
431
|
+
type="agent",
|
|
432
|
+
agent_url="https://agent.example.com",
|
|
433
|
+
is_live=False,
|
|
434
|
+
estimated_activation_duration_minutes=30.0
|
|
435
|
+
)
|
|
436
|
+
```
|
|
437
|
+
"""
|
|
438
|
+
|
|
439
|
+
PlatformDestination = Destination1
|
|
440
|
+
"""Available signal destination on a DSP platform.
|
|
441
|
+
|
|
442
|
+
This variant uses type='platform' for platform-based signal destinations.
|
|
443
|
+
|
|
444
|
+
Fields:
|
|
445
|
+
- type: Literal['platform']
|
|
446
|
+
- platform: Platform identifier (e.g., 'the-trade-desk', 'amazon-dsp')
|
|
447
|
+
- account: Optional account identifier on the platform
|
|
448
|
+
|
|
449
|
+
Example:
|
|
450
|
+
```python
|
|
451
|
+
from adcp import PlatformDestination
|
|
452
|
+
|
|
453
|
+
destination = PlatformDestination(
|
|
454
|
+
type="platform",
|
|
455
|
+
platform="the-trade-desk",
|
|
456
|
+
account="advertiser-123"
|
|
457
|
+
)
|
|
458
|
+
```
|
|
459
|
+
"""
|
|
460
|
+
|
|
461
|
+
AgentDestination = Destination2
|
|
462
|
+
"""Available signal destination via a sales agent.
|
|
463
|
+
|
|
464
|
+
This variant uses type='agent' for agent-based signal destinations.
|
|
465
|
+
|
|
466
|
+
Fields:
|
|
467
|
+
- type: Literal['agent']
|
|
468
|
+
- agent_url: URL identifying the destination agent
|
|
469
|
+
- account: Optional account identifier on the agent
|
|
470
|
+
|
|
471
|
+
Example:
|
|
472
|
+
```python
|
|
473
|
+
from adcp import AgentDestination
|
|
474
|
+
|
|
475
|
+
destination = AgentDestination(
|
|
476
|
+
type="agent",
|
|
477
|
+
agent_url="https://agent.example.com",
|
|
478
|
+
account="partner-456"
|
|
479
|
+
)
|
|
480
|
+
```
|
|
481
|
+
"""
|
|
482
|
+
|
|
204
483
|
# ============================================================================
|
|
205
484
|
# EXPORTS
|
|
206
485
|
# ============================================================================
|
|
@@ -246,4 +525,20 @@ __all__ = [
|
|
|
246
525
|
# Update media buy responses
|
|
247
526
|
"UpdateMediaBuySuccessResponse",
|
|
248
527
|
"UpdateMediaBuyErrorResponse",
|
|
528
|
+
# Package type aliases
|
|
529
|
+
"CreatedPackageReference",
|
|
530
|
+
"Package",
|
|
531
|
+
# Publisher properties types
|
|
532
|
+
"PropertyId",
|
|
533
|
+
"PropertyTag",
|
|
534
|
+
# Publisher properties aliases
|
|
535
|
+
"PublisherPropertiesAll",
|
|
536
|
+
"PublisherPropertiesById",
|
|
537
|
+
"PublisherPropertiesByTag",
|
|
538
|
+
# Deployment aliases
|
|
539
|
+
"PlatformDeployment",
|
|
540
|
+
"AgentDeployment",
|
|
541
|
+
# Destination aliases
|
|
542
|
+
"PlatformDestination",
|
|
543
|
+
"AgentDestination",
|
|
249
544
|
]
|
adcp/types/stable.py
CHANGED
|
@@ -21,7 +21,6 @@ Schema Evolution:
|
|
|
21
21
|
|
|
22
22
|
from __future__ import annotations
|
|
23
23
|
|
|
24
|
-
# Import all generated types from internal consolidated module
|
|
25
24
|
from adcp.types._generated import (
|
|
26
25
|
# Core request/response types
|
|
27
26
|
ActivateSignalRequest,
|
|
@@ -67,7 +66,6 @@ from adcp.types._generated import (
|
|
|
67
66
|
MarkdownAsset,
|
|
68
67
|
MediaBuy,
|
|
69
68
|
MediaBuyStatus,
|
|
70
|
-
Package,
|
|
71
69
|
PackageStatus,
|
|
72
70
|
PreviewCreativeRequest,
|
|
73
71
|
PreviewCreativeResponse,
|
|
@@ -94,6 +92,10 @@ from adcp.types._generated import (
|
|
|
94
92
|
WebhookAsset,
|
|
95
93
|
)
|
|
96
94
|
|
|
95
|
+
# Import all generated types from internal consolidated module
|
|
96
|
+
# Import Package directly from its module to avoid collision with Response Package
|
|
97
|
+
from adcp.types.generated_poc.package import Package
|
|
98
|
+
|
|
97
99
|
# Note: BrandManifest is currently split into BrandManifest1/2 due to upstream schema
|
|
98
100
|
# using anyOf incorrectly. This will be fixed upstream to create a single BrandManifest type.
|
|
99
101
|
# For now, users should use BrandManifest1 (url required) which is most common.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: adcp
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.6.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
|
|
@@ -35,6 +35,8 @@ Requires-Dist: mypy>=1.0.0; extra == "dev"
|
|
|
35
35
|
Requires-Dist: black>=23.0.0; extra == "dev"
|
|
36
36
|
Requires-Dist: ruff>=0.1.0; extra == "dev"
|
|
37
37
|
Requires-Dist: datamodel-code-generator[http]>=0.35.0; extra == "dev"
|
|
38
|
+
Provides-Extra: docs
|
|
39
|
+
Requires-Dist: pdoc3>=0.10.0; extra == "docs"
|
|
38
40
|
Dynamic: license-file
|
|
39
41
|
|
|
40
42
|
# adcp - Python Client for Ad Context Protocol
|
|
@@ -177,6 +179,18 @@ async with ADCPMultiAgentClient(
|
|
|
177
179
|
# Connections automatically cleaned up here
|
|
178
180
|
```
|
|
179
181
|
|
|
182
|
+
## Documentation
|
|
183
|
+
|
|
184
|
+
- **[API Reference](https://adcontextprotocol.github.io/adcp-client-python/)** - Complete API documentation with type signatures and examples
|
|
185
|
+
- **[Protocol Spec](https://github.com/adcontextprotocol/adcp)** - Ad Context Protocol specification
|
|
186
|
+
- **[Examples](examples/)** - Code examples and usage patterns
|
|
187
|
+
|
|
188
|
+
The API reference documentation is automatically generated from the code and includes:
|
|
189
|
+
- Full type signatures for all methods
|
|
190
|
+
- Field descriptions from JSON Schema
|
|
191
|
+
- Method documentation with examples
|
|
192
|
+
- Searchable interface
|
|
193
|
+
|
|
180
194
|
## Features
|
|
181
195
|
|
|
182
196
|
### Test Helpers
|
|
@@ -801,6 +815,7 @@ Apache 2.0 License - see [LICENSE](LICENSE) file for details.
|
|
|
801
815
|
|
|
802
816
|
## Support
|
|
803
817
|
|
|
804
|
-
- **
|
|
818
|
+
- **API Reference**: [adcontextprotocol.github.io/adcp-client-python](https://adcontextprotocol.github.io/adcp-client-python/)
|
|
819
|
+
- **Protocol Documentation**: [docs.adcontextprotocol.org](https://docs.adcontextprotocol.org)
|
|
805
820
|
- **Issues**: [GitHub Issues](https://github.com/adcontextprotocol/adcp-client-python/issues)
|
|
806
821
|
- **Protocol Spec**: [AdCP Specification](https://github.com/adcontextprotocol/adcp)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
adcp/__init__.py,sha256=
|
|
1
|
+
adcp/__init__.py,sha256=WTIxgfr9VU1apx9J6AinZ3xwV61Z2O0smUnQEdEarmY,9034
|
|
2
2
|
adcp/__main__.py,sha256=YF2GUXF1LICW1TPxNQiGIfSp5cpAsejoEG2fuOgbzrc,12839
|
|
3
3
|
adcp/adagents.py,sha256=o-vTBmdZvu9aER-TAlLLL3s-WGYY8N67jnrAH24lST8,22333
|
|
4
4
|
adcp/client.py,sha256=Z70D0bHcLNmr0NBGXbFUvW8dBdzHkcv8CmFcYo3pIjw,28803
|
|
@@ -13,12 +13,12 @@ adcp/protocols/base.py,sha256=vBHD23Fzl_CCk_Gy9nvSbBYopcJlYkYyzoz-rhI8wHg,5214
|
|
|
13
13
|
adcp/protocols/mcp.py,sha256=d9uSpGd0BKvQ0JxztkfDvHwoDrDYhuiw5oivpYOAbmM,16647
|
|
14
14
|
adcp/testing/__init__.py,sha256=ZWp_floWjVZfy8RBG5v_FUXQ8YbN7xjXvVcX-_zl_HU,1416
|
|
15
15
|
adcp/testing/test_helpers.py,sha256=-UKuxxyKQald5EvXxguQH34b3J0JdsxKH_nRT6GTjkQ,10029
|
|
16
|
-
adcp/types/__init__.py,sha256=
|
|
17
|
-
adcp/types/_generated.py,sha256=
|
|
18
|
-
adcp/types/aliases.py,sha256=
|
|
16
|
+
adcp/types/__init__.py,sha256=V_Tme95-OoTGZkrMTQwNP76cN5QelO-Q-9sRTg-EBIA,2926
|
|
17
|
+
adcp/types/_generated.py,sha256=p4U_P3BROGjCnS0Cd2o9ZJ_bShQLffB3D9_0D29JB0g,14926
|
|
18
|
+
adcp/types/aliases.py,sha256=puqrz_cwlfSq6Td78EIaWtDUzcsCGMVM98Pv3T7qSlo,18445
|
|
19
19
|
adcp/types/base.py,sha256=QoEuVfI4yzefup0dc2KN11AcJTbcGxRep7xOw5hXfs8,837
|
|
20
20
|
adcp/types/core.py,sha256=RXkKCWCXS9BVJTNpe3Opm5O1I_LaQPMUuVwa-ipvS1Q,4839
|
|
21
|
-
adcp/types/stable.py,sha256=
|
|
21
|
+
adcp/types/stable.py,sha256=Q_rxnpLuUGfqGusiJcMuPADIGLQgs2uLp98S4YnAksw,4997
|
|
22
22
|
adcp/types/generated_poc/__init__.py,sha256=bgFFvPK1-e04eOnyw0qmtVMzoA2V7GeAMPDVrx-VIwA,103
|
|
23
23
|
adcp/types/generated_poc/activate_signal_request.py,sha256=mI1MskO30yEcbQQ7ueEExMF7FhfARQj0_kbz5CAdSzQ,1188
|
|
24
24
|
adcp/types/generated_poc/activate_signal_response.py,sha256=ltt5yDsocK3VfELeRuMjUiNMmUZe__VP5az6fsMCOuc,2015
|
|
@@ -121,9 +121,9 @@ adcp/utils/__init__.py,sha256=uetvSJB19CjQbtwEYZiTnumJG11GsafQmXm5eR3hL7E,153
|
|
|
121
121
|
adcp/utils/operation_id.py,sha256=wQX9Bb5epXzRq23xoeYPTqzu5yLuhshg7lKJZihcM2k,294
|
|
122
122
|
adcp/utils/preview_cache.py,sha256=oc1AUkPrHHmUqfZa5920OCKY7qrDDR86XO6oi1PEHTA,18504
|
|
123
123
|
adcp/utils/response_parser.py,sha256=uPk2vIH-RYZmq7y3i8lC4HTMQ3FfKdlgXKTjgJ1955M,6253
|
|
124
|
-
adcp-2.
|
|
125
|
-
adcp-2.
|
|
126
|
-
adcp-2.
|
|
127
|
-
adcp-2.
|
|
128
|
-
adcp-2.
|
|
129
|
-
adcp-2.
|
|
124
|
+
adcp-2.6.0.dist-info/licenses/LICENSE,sha256=PF39NR3Ae8PLgBhg3Uxw6ju7iGVIf8hfv9LRWQdii_U,629
|
|
125
|
+
adcp-2.6.0.dist-info/METADATA,sha256=r91G1kiiN13GSt8F5PBOxJQiqHBayDibdtvAd8v-blI,25810
|
|
126
|
+
adcp-2.6.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
127
|
+
adcp-2.6.0.dist-info/entry_points.txt,sha256=DQKpcGsJX8DtVI_SGApQ7tNvqUB4zkTLaTAEpFgmi3U,44
|
|
128
|
+
adcp-2.6.0.dist-info/top_level.txt,sha256=T1_NF0GefncFU9v_k56oDwKSJREyCqIM8lAwNZf0EOs,5
|
|
129
|
+
adcp-2.6.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|