@adcp/sdk 6.0.0 → 6.1.0
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.
- package/dist/lib/core/AgentClient.d.ts.map +1 -1
- package/dist/lib/core/SingleAgentClient.d.ts.map +1 -1
- package/dist/lib/core/SingleAgentClient.js +12 -0
- package/dist/lib/core/SingleAgentClient.js.map +1 -1
- package/dist/lib/core/TaskExecutor.d.ts +14 -0
- package/dist/lib/core/TaskExecutor.d.ts.map +1 -1
- package/dist/lib/core/TaskExecutor.js +16 -0
- package/dist/lib/core/TaskExecutor.js.map +1 -1
- package/dist/lib/schemas-data/v2.5/_provenance.json +8 -0
- package/dist/lib/schemas-data/v2.5/adagents.json +494 -0
- package/dist/lib/schemas-data/v2.5/core/activation-key.json +50 -0
- package/dist/lib/schemas-data/v2.5/core/assets/audio-asset.json +32 -0
- package/dist/lib/schemas-data/v2.5/core/assets/css-asset.json +21 -0
- package/dist/lib/schemas-data/v2.5/core/assets/daast-asset.json +87 -0
- package/dist/lib/schemas-data/v2.5/core/assets/html-asset.json +21 -0
- package/dist/lib/schemas-data/v2.5/core/assets/image-asset.json +38 -0
- package/dist/lib/schemas-data/v2.5/core/assets/javascript-asset.json +21 -0
- package/dist/lib/schemas-data/v2.5/core/assets/markdown-asset.json +31 -0
- package/dist/lib/schemas-data/v2.5/core/assets/text-asset.json +21 -0
- package/dist/lib/schemas-data/v2.5/core/assets/url-asset.json +26 -0
- package/dist/lib/schemas-data/v2.5/core/assets/vast-asset.json +87 -0
- package/dist/lib/schemas-data/v2.5/core/assets/video-asset.json +44 -0
- package/dist/lib/schemas-data/v2.5/core/assets/webhook-asset.json +71 -0
- package/dist/lib/schemas-data/v2.5/core/async-response-data.json +88 -0
- package/dist/lib/schemas-data/v2.5/core/brand-manifest-ref.json +33 -0
- package/dist/lib/schemas-data/v2.5/core/brand-manifest.json +409 -0
- package/dist/lib/schemas-data/v2.5/core/context.json +8 -0
- package/dist/lib/schemas-data/v2.5/core/creative-asset.json +125 -0
- package/dist/lib/schemas-data/v2.5/core/creative-assignment.json +31 -0
- package/dist/lib/schemas-data/v2.5/core/creative-filters.json +111 -0
- package/dist/lib/schemas-data/v2.5/core/creative-manifest.json +72 -0
- package/dist/lib/schemas-data/v2.5/core/creative-policy.json +27 -0
- package/dist/lib/schemas-data/v2.5/core/delivery-metrics.json +171 -0
- package/dist/lib/schemas-data/v2.5/core/deployment.json +93 -0
- package/dist/lib/schemas-data/v2.5/core/destination.json +53 -0
- package/dist/lib/schemas-data/v2.5/core/error.json +40 -0
- package/dist/lib/schemas-data/v2.5/core/ext.json +8 -0
- package/dist/lib/schemas-data/v2.5/core/format-id.json +47 -0
- package/dist/lib/schemas-data/v2.5/core/format.json +324 -0
- package/dist/lib/schemas-data/v2.5/core/frequency-cap.json +18 -0
- package/dist/lib/schemas-data/v2.5/core/mcp-webhook-payload.json +152 -0
- package/dist/lib/schemas-data/v2.5/core/measurement.json +48 -0
- package/dist/lib/schemas-data/v2.5/core/media-buy.json +62 -0
- package/dist/lib/schemas-data/v2.5/core/package.json +72 -0
- package/dist/lib/schemas-data/v2.5/core/performance-feedback.json +90 -0
- package/dist/lib/schemas-data/v2.5/core/placement.json +34 -0
- package/dist/lib/schemas-data/v2.5/core/pricing-option.json +35 -0
- package/dist/lib/schemas-data/v2.5/core/product-filters.json +102 -0
- package/dist/lib/schemas-data/v2.5/core/product.json +153 -0
- package/dist/lib/schemas-data/v2.5/core/promoted-offerings.json +115 -0
- package/dist/lib/schemas-data/v2.5/core/promoted-products.json +67 -0
- package/dist/lib/schemas-data/v2.5/core/property-id.json +14 -0
- package/dist/lib/schemas-data/v2.5/core/property-tag.json +16 -0
- package/dist/lib/schemas-data/v2.5/core/property.json +62 -0
- package/dist/lib/schemas-data/v2.5/core/protocol-envelope.json +146 -0
- package/dist/lib/schemas-data/v2.5/core/publisher-property-selector.json +92 -0
- package/dist/lib/schemas-data/v2.5/core/push-notification-config.json +48 -0
- package/dist/lib/schemas-data/v2.5/core/reporting-capabilities.json +71 -0
- package/dist/lib/schemas-data/v2.5/core/response.json +24 -0
- package/dist/lib/schemas-data/v2.5/core/signal-filters.json +35 -0
- package/dist/lib/schemas-data/v2.5/core/start-timing.json +18 -0
- package/dist/lib/schemas-data/v2.5/core/sub-asset.json +79 -0
- package/dist/lib/schemas-data/v2.5/core/targeting.json +50 -0
- package/dist/lib/schemas-data/v2.5/core/tasks-get-request.json +43 -0
- package/dist/lib/schemas-data/v2.5/core/tasks-get-response.json +166 -0
- package/dist/lib/schemas-data/v2.5/core/tasks-list-request.json +192 -0
- package/dist/lib/schemas-data/v2.5/core/tasks-list-response.json +183 -0
- package/dist/lib/schemas-data/v2.5/creative/asset-types/index.json +101 -0
- package/dist/lib/schemas-data/v2.5/creative/list-creative-formats-request.json +73 -0
- package/dist/lib/schemas-data/v2.5/creative/list-creative-formats-response.json +61 -0
- package/dist/lib/schemas-data/v2.5/creative/preview-creative-request.json +164 -0
- package/dist/lib/schemas-data/v2.5/creative/preview-creative-response.json +245 -0
- package/dist/lib/schemas-data/v2.5/creative/preview-render.json +225 -0
- package/dist/lib/schemas-data/v2.5/enums/adcp-domain.json +11 -0
- package/dist/lib/schemas-data/v2.5/enums/asset-content-type.json +22 -0
- package/dist/lib/schemas-data/v2.5/enums/auth-scheme.json +11 -0
- package/dist/lib/schemas-data/v2.5/enums/available-metric.json +18 -0
- package/dist/lib/schemas-data/v2.5/enums/channels.json +18 -0
- package/dist/lib/schemas-data/v2.5/enums/co-branding-requirement.json +12 -0
- package/dist/lib/schemas-data/v2.5/enums/creative-action.json +14 -0
- package/dist/lib/schemas-data/v2.5/enums/creative-agent-capability.json +13 -0
- package/dist/lib/schemas-data/v2.5/enums/creative-sort-field.json +15 -0
- package/dist/lib/schemas-data/v2.5/enums/creative-status.json +19 -0
- package/dist/lib/schemas-data/v2.5/enums/daast-tracking-event.json +20 -0
- package/dist/lib/schemas-data/v2.5/enums/daast-version.json +11 -0
- package/dist/lib/schemas-data/v2.5/enums/delivery-type.json +15 -0
- package/dist/lib/schemas-data/v2.5/enums/dimension-unit.json +13 -0
- package/dist/lib/schemas-data/v2.5/enums/feed-format.json +12 -0
- package/dist/lib/schemas-data/v2.5/enums/feedback-source.json +13 -0
- package/dist/lib/schemas-data/v2.5/enums/format-category.json +16 -0
- package/dist/lib/schemas-data/v2.5/enums/format-id-parameter.json +11 -0
- package/dist/lib/schemas-data/v2.5/enums/frequency-cap-scope.json +13 -0
- package/dist/lib/schemas-data/v2.5/enums/history-entry-type.json +11 -0
- package/dist/lib/schemas-data/v2.5/enums/http-method.json +11 -0
- package/dist/lib/schemas-data/v2.5/enums/identifier-types.json +34 -0
- package/dist/lib/schemas-data/v2.5/enums/javascript-module-type.json +12 -0
- package/dist/lib/schemas-data/v2.5/enums/landing-page-requirement.json +12 -0
- package/dist/lib/schemas-data/v2.5/enums/markdown-flavor.json +11 -0
- package/dist/lib/schemas-data/v2.5/enums/media-buy-status.json +19 -0
- package/dist/lib/schemas-data/v2.5/enums/metric-type.json +17 -0
- package/dist/lib/schemas-data/v2.5/enums/notification-type.json +13 -0
- package/dist/lib/schemas-data/v2.5/enums/pacing.json +17 -0
- package/dist/lib/schemas-data/v2.5/enums/preview-output-format.json +11 -0
- package/dist/lib/schemas-data/v2.5/enums/pricing-model.json +25 -0
- package/dist/lib/schemas-data/v2.5/enums/property-type.json +16 -0
- package/dist/lib/schemas-data/v2.5/enums/publisher-identifier-types.json +19 -0
- package/dist/lib/schemas-data/v2.5/enums/reporting-frequency.json +12 -0
- package/dist/lib/schemas-data/v2.5/enums/signal-catalog-type.json +12 -0
- package/dist/lib/schemas-data/v2.5/enums/sort-direction.json +11 -0
- package/dist/lib/schemas-data/v2.5/enums/standard-format-ids.json +103 -0
- package/dist/lib/schemas-data/v2.5/enums/task-status.json +29 -0
- package/dist/lib/schemas-data/v2.5/enums/task-type.json +27 -0
- package/dist/lib/schemas-data/v2.5/enums/update-frequency.json +13 -0
- package/dist/lib/schemas-data/v2.5/enums/url-asset-type.json +12 -0
- package/dist/lib/schemas-data/v2.5/enums/validation-mode.json +11 -0
- package/dist/lib/schemas-data/v2.5/enums/vast-tracking-event.json +25 -0
- package/dist/lib/schemas-data/v2.5/enums/vast-version.json +14 -0
- package/dist/lib/schemas-data/v2.5/enums/webhook-response-type.json +13 -0
- package/dist/lib/schemas-data/v2.5/enums/webhook-security-method.json +12 -0
- package/dist/lib/schemas-data/v2.5/index.json +604 -0
- package/dist/lib/schemas-data/v2.5/media-buy/build-creative-request.json +31 -0
- package/dist/lib/schemas-data/v2.5/media-buy/build-creative-response.json +65 -0
- package/dist/lib/schemas-data/v2.5/media-buy/create-media-buy-async-response-input-required.json +31 -0
- package/dist/lib/schemas-data/v2.5/media-buy/create-media-buy-async-response-submitted.json +16 -0
- package/dist/lib/schemas-data/v2.5/media-buy/create-media-buy-async-response-working.json +36 -0
- package/dist/lib/schemas-data/v2.5/media-buy/create-media-buy-request.json +126 -0
- package/dist/lib/schemas-data/v2.5/media-buy/create-media-buy-response.json +97 -0
- package/dist/lib/schemas-data/v2.5/media-buy/get-media-buy-delivery-request.json +54 -0
- package/dist/lib/schemas-data/v2.5/media-buy/get-media-buy-delivery-response.json +285 -0
- package/dist/lib/schemas-data/v2.5/media-buy/get-products-async-response-input-required.json +38 -0
- package/dist/lib/schemas-data/v2.5/media-buy/get-products-async-response-submitted.json +21 -0
- package/dist/lib/schemas-data/v2.5/media-buy/get-products-async-response-working.json +34 -0
- package/dist/lib/schemas-data/v2.5/media-buy/get-products-request.json +28 -0
- package/dist/lib/schemas-data/v2.5/media-buy/get-products-response.json +33 -0
- package/dist/lib/schemas-data/v2.5/media-buy/list-authorized-properties-request.json +26 -0
- package/dist/lib/schemas-data/v2.5/media-buy/list-authorized-properties-response.json +70 -0
- package/dist/lib/schemas-data/v2.5/media-buy/list-creative-formats-request.json +58 -0
- package/dist/lib/schemas-data/v2.5/media-buy/list-creative-formats-response.json +61 -0
- package/dist/lib/schemas-data/v2.5/media-buy/list-creatives-request.json +137 -0
- package/dist/lib/schemas-data/v2.5/media-buy/list-creatives-response.json +437 -0
- package/dist/lib/schemas-data/v2.5/media-buy/package-request.json +80 -0
- package/dist/lib/schemas-data/v2.5/media-buy/provide-performance-feedback-request.json +88 -0
- package/dist/lib/schemas-data/v2.5/media-buy/provide-performance-feedback-response.json +66 -0
- package/dist/lib/schemas-data/v2.5/media-buy/sync-creatives-async-response-input-required.json +25 -0
- package/dist/lib/schemas-data/v2.5/media-buy/sync-creatives-async-response-submitted.json +16 -0
- package/dist/lib/schemas-data/v2.5/media-buy/sync-creatives-async-response-working.json +46 -0
- package/dist/lib/schemas-data/v2.5/media-buy/sync-creatives-request.json +178 -0
- package/dist/lib/schemas-data/v2.5/media-buy/sync-creatives-response.json +149 -0
- package/dist/lib/schemas-data/v2.5/media-buy/update-media-buy-async-response-input-required.json +24 -0
- package/dist/lib/schemas-data/v2.5/media-buy/update-media-buy-async-response-submitted.json +16 -0
- package/dist/lib/schemas-data/v2.5/media-buy/update-media-buy-async-response-working.json +36 -0
- package/dist/lib/schemas-data/v2.5/media-buy/update-media-buy-request.json +129 -0
- package/dist/lib/schemas-data/v2.5/media-buy/update-media-buy-response.json +99 -0
- package/dist/lib/schemas-data/v2.5/pricing-options/cpc-option.json +52 -0
- package/dist/lib/schemas-data/v2.5/pricing-options/cpcv-option.json +52 -0
- package/dist/lib/schemas-data/v2.5/pricing-options/cpm-auction-option.json +81 -0
- package/dist/lib/schemas-data/v2.5/pricing-options/cpm-fixed-option.json +52 -0
- package/dist/lib/schemas-data/v2.5/pricing-options/cpp-option.json +73 -0
- package/dist/lib/schemas-data/v2.5/pricing-options/cpv-option.json +88 -0
- package/dist/lib/schemas-data/v2.5/pricing-options/flat-rate-option.json +93 -0
- package/dist/lib/schemas-data/v2.5/pricing-options/vcpm-auction-option.json +81 -0
- package/dist/lib/schemas-data/v2.5/pricing-options/vcpm-fixed-option.json +52 -0
- package/dist/lib/schemas-data/v2.5/protocols/adcp-extension.json +33 -0
- package/dist/lib/schemas-data/v2.5/signals/activate-signal-request.json +32 -0
- package/dist/lib/schemas-data/v2.5/signals/activate-signal-response.json +68 -0
- package/dist/lib/schemas-data/v2.5/signals/get-signals-request.json +59 -0
- package/dist/lib/schemas-data/v2.5/signals/get-signals-response.json +100 -0
- package/dist/lib/server/create-adcp-server.d.ts.map +1 -1
- package/dist/lib/server/create-adcp-server.js +40 -25
- package/dist/lib/server/create-adcp-server.js.map +1 -1
- package/dist/lib/testing/storyboard/runner.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/runner.js +107 -26
- package/dist/lib/testing/storyboard/runner.js.map +1 -1
- package/dist/lib/utils/creative-adapter.d.ts +32 -2
- package/dist/lib/utils/creative-adapter.d.ts.map +1 -1
- package/dist/lib/utils/creative-adapter.js +42 -6
- package/dist/lib/utils/creative-adapter.js.map +1 -1
- package/dist/lib/validation/schema-loader.d.ts.map +1 -1
- package/dist/lib/validation/schema-loader.js +20 -2
- package/dist/lib/validation/schema-loader.js.map +1 -1
- package/dist/lib/version.d.ts +3 -3
- package/dist/lib/version.js +3 -3
- package/package.json +7 -5
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "/schemas/media-buy/list-creatives-request.json",
|
|
4
|
+
"title": "List Creatives Request",
|
|
5
|
+
"description": "Request parameters for querying creative assets from the centralized library with filtering, sorting, and pagination",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"filters": {
|
|
9
|
+
"$ref": "/schemas/core/creative-filters.json"
|
|
10
|
+
},
|
|
11
|
+
"sort": {
|
|
12
|
+
"type": "object",
|
|
13
|
+
"description": "Sorting parameters",
|
|
14
|
+
"properties": {
|
|
15
|
+
"field": {
|
|
16
|
+
"$ref": "/schemas/enums/creative-sort-field.json",
|
|
17
|
+
"default": "created_date",
|
|
18
|
+
"description": "Field to sort by"
|
|
19
|
+
},
|
|
20
|
+
"direction": {
|
|
21
|
+
"$ref": "/schemas/enums/sort-direction.json",
|
|
22
|
+
"default": "desc",
|
|
23
|
+
"description": "Sort direction"
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"additionalProperties": true
|
|
27
|
+
},
|
|
28
|
+
"pagination": {
|
|
29
|
+
"type": "object",
|
|
30
|
+
"description": "Pagination parameters",
|
|
31
|
+
"properties": {
|
|
32
|
+
"limit": {
|
|
33
|
+
"type": "integer",
|
|
34
|
+
"minimum": 1,
|
|
35
|
+
"maximum": 100,
|
|
36
|
+
"default": 50,
|
|
37
|
+
"description": "Maximum number of creatives to return"
|
|
38
|
+
},
|
|
39
|
+
"offset": {
|
|
40
|
+
"type": "integer",
|
|
41
|
+
"minimum": 0,
|
|
42
|
+
"default": 0,
|
|
43
|
+
"description": "Number of creatives to skip"
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"additionalProperties": true
|
|
47
|
+
},
|
|
48
|
+
"include_assignments": {
|
|
49
|
+
"type": "boolean",
|
|
50
|
+
"default": true,
|
|
51
|
+
"description": "Include package assignment information in response"
|
|
52
|
+
},
|
|
53
|
+
"include_performance": {
|
|
54
|
+
"type": "boolean",
|
|
55
|
+
"default": false,
|
|
56
|
+
"description": "Include aggregated performance metrics in response"
|
|
57
|
+
},
|
|
58
|
+
"include_sub_assets": {
|
|
59
|
+
"type": "boolean",
|
|
60
|
+
"default": false,
|
|
61
|
+
"description": "Include sub-assets (for carousel/native formats) in response"
|
|
62
|
+
},
|
|
63
|
+
"fields": {
|
|
64
|
+
"type": "array",
|
|
65
|
+
"description": "Specific fields to include in response (omit for all fields)",
|
|
66
|
+
"items": {
|
|
67
|
+
"type": "string",
|
|
68
|
+
"enum": [
|
|
69
|
+
"creative_id",
|
|
70
|
+
"name",
|
|
71
|
+
"format",
|
|
72
|
+
"status",
|
|
73
|
+
"created_date",
|
|
74
|
+
"updated_date",
|
|
75
|
+
"tags",
|
|
76
|
+
"assignments",
|
|
77
|
+
"performance",
|
|
78
|
+
"sub_assets"
|
|
79
|
+
]
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
"context": {
|
|
83
|
+
"$ref": "/schemas/core/context.json"
|
|
84
|
+
},
|
|
85
|
+
"ext": {
|
|
86
|
+
"$ref": "/schemas/core/ext.json"
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
"additionalProperties": true,
|
|
90
|
+
"examples": [
|
|
91
|
+
{
|
|
92
|
+
"description": "List all approved video creatives",
|
|
93
|
+
"data": {
|
|
94
|
+
"filters": {
|
|
95
|
+
"format": "video",
|
|
96
|
+
"status": "approved"
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"description": "Search for Nike creatives with performance data",
|
|
102
|
+
"data": {
|
|
103
|
+
"filters": {
|
|
104
|
+
"name_contains": "nike",
|
|
105
|
+
"has_performance_data": true
|
|
106
|
+
},
|
|
107
|
+
"include_performance": true
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
"description": "Get unassigned creatives for assignment",
|
|
112
|
+
"data": {
|
|
113
|
+
"filters": {
|
|
114
|
+
"unassigned": true
|
|
115
|
+
},
|
|
116
|
+
"sort": {
|
|
117
|
+
"field": "created_date",
|
|
118
|
+
"direction": "desc"
|
|
119
|
+
},
|
|
120
|
+
"pagination": {
|
|
121
|
+
"limit": 20
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"description": "Lightweight list with minimal fields",
|
|
127
|
+
"data": {
|
|
128
|
+
"fields": [
|
|
129
|
+
"creative_id",
|
|
130
|
+
"name",
|
|
131
|
+
"status"
|
|
132
|
+
],
|
|
133
|
+
"include_assignments": false
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
]
|
|
137
|
+
}
|
|
@@ -0,0 +1,437 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "/schemas/media-buy/list-creatives-response.json",
|
|
4
|
+
"title": "List Creatives Response",
|
|
5
|
+
"description": "Response from creative library query with filtered results, metadata, and optional enriched data",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"query_summary": {
|
|
9
|
+
"type": "object",
|
|
10
|
+
"description": "Summary of the query that was executed",
|
|
11
|
+
"properties": {
|
|
12
|
+
"total_matching": {
|
|
13
|
+
"type": "integer",
|
|
14
|
+
"description": "Total number of creatives matching filters (across all pages)",
|
|
15
|
+
"minimum": 0
|
|
16
|
+
},
|
|
17
|
+
"returned": {
|
|
18
|
+
"type": "integer",
|
|
19
|
+
"description": "Number of creatives returned in this response",
|
|
20
|
+
"minimum": 0
|
|
21
|
+
},
|
|
22
|
+
"filters_applied": {
|
|
23
|
+
"type": "array",
|
|
24
|
+
"description": "List of filters that were applied to the query",
|
|
25
|
+
"items": {
|
|
26
|
+
"type": "string"
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
"sort_applied": {
|
|
30
|
+
"type": "object",
|
|
31
|
+
"description": "Sort order that was applied",
|
|
32
|
+
"properties": {
|
|
33
|
+
"field": {
|
|
34
|
+
"type": "string"
|
|
35
|
+
},
|
|
36
|
+
"direction": {
|
|
37
|
+
"$ref": "/schemas/enums/sort-direction.json"
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
"required": [
|
|
43
|
+
"total_matching",
|
|
44
|
+
"returned"
|
|
45
|
+
],
|
|
46
|
+
"additionalProperties": true
|
|
47
|
+
},
|
|
48
|
+
"pagination": {
|
|
49
|
+
"type": "object",
|
|
50
|
+
"description": "Pagination information for navigating results",
|
|
51
|
+
"properties": {
|
|
52
|
+
"limit": {
|
|
53
|
+
"type": "integer",
|
|
54
|
+
"description": "Maximum number of results requested",
|
|
55
|
+
"minimum": 1
|
|
56
|
+
},
|
|
57
|
+
"offset": {
|
|
58
|
+
"type": "integer",
|
|
59
|
+
"description": "Number of results skipped",
|
|
60
|
+
"minimum": 0
|
|
61
|
+
},
|
|
62
|
+
"has_more": {
|
|
63
|
+
"type": "boolean",
|
|
64
|
+
"description": "Whether more results are available"
|
|
65
|
+
},
|
|
66
|
+
"total_pages": {
|
|
67
|
+
"type": "integer",
|
|
68
|
+
"description": "Total number of pages available",
|
|
69
|
+
"minimum": 0
|
|
70
|
+
},
|
|
71
|
+
"current_page": {
|
|
72
|
+
"type": "integer",
|
|
73
|
+
"description": "Current page number (1-based)",
|
|
74
|
+
"minimum": 1
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
"required": [
|
|
78
|
+
"limit",
|
|
79
|
+
"offset",
|
|
80
|
+
"has_more"
|
|
81
|
+
],
|
|
82
|
+
"additionalProperties": true
|
|
83
|
+
},
|
|
84
|
+
"creatives": {
|
|
85
|
+
"type": "array",
|
|
86
|
+
"description": "Array of creative assets matching the query",
|
|
87
|
+
"items": {
|
|
88
|
+
"type": "object",
|
|
89
|
+
"properties": {
|
|
90
|
+
"creative_id": {
|
|
91
|
+
"type": "string",
|
|
92
|
+
"description": "Unique identifier for the creative"
|
|
93
|
+
},
|
|
94
|
+
"name": {
|
|
95
|
+
"type": "string",
|
|
96
|
+
"description": "Human-readable creative name"
|
|
97
|
+
},
|
|
98
|
+
"format_id": {
|
|
99
|
+
"$ref": "/schemas/core/format-id.json",
|
|
100
|
+
"description": "Format identifier specifying which format this creative conforms to"
|
|
101
|
+
},
|
|
102
|
+
"status": {
|
|
103
|
+
"$ref": "/schemas/enums/creative-status.json",
|
|
104
|
+
"description": "Current approval status of the creative"
|
|
105
|
+
},
|
|
106
|
+
"created_date": {
|
|
107
|
+
"type": "string",
|
|
108
|
+
"format": "date-time",
|
|
109
|
+
"description": "When the creative was uploaded to the library"
|
|
110
|
+
},
|
|
111
|
+
"updated_date": {
|
|
112
|
+
"type": "string",
|
|
113
|
+
"format": "date-time",
|
|
114
|
+
"description": "When the creative was last modified"
|
|
115
|
+
},
|
|
116
|
+
"assets": {
|
|
117
|
+
"type": "object",
|
|
118
|
+
"description": "Assets for this creative, keyed by asset_role",
|
|
119
|
+
"patternProperties": {
|
|
120
|
+
"^[a-zA-Z0-9_-]+$": {
|
|
121
|
+
"oneOf": [
|
|
122
|
+
{
|
|
123
|
+
"$ref": "/schemas/core/assets/image-asset.json"
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"$ref": "/schemas/core/assets/video-asset.json"
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"$ref": "/schemas/core/assets/audio-asset.json"
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
"$ref": "/schemas/core/assets/text-asset.json"
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"$ref": "/schemas/core/assets/html-asset.json"
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
"$ref": "/schemas/core/assets/css-asset.json"
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
"$ref": "/schemas/core/assets/javascript-asset.json"
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"$ref": "/schemas/core/assets/vast-asset.json"
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"$ref": "/schemas/core/assets/daast-asset.json"
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"$ref": "/schemas/core/promoted-offerings.json"
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
"$ref": "/schemas/core/assets/url-asset.json"
|
|
154
|
+
}
|
|
155
|
+
]
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
},
|
|
159
|
+
"tags": {
|
|
160
|
+
"type": "array",
|
|
161
|
+
"description": "User-defined tags for organization and searchability",
|
|
162
|
+
"items": {
|
|
163
|
+
"type": "string"
|
|
164
|
+
}
|
|
165
|
+
},
|
|
166
|
+
"assignments": {
|
|
167
|
+
"type": "object",
|
|
168
|
+
"description": "Current package assignments (included when include_assignments=true)",
|
|
169
|
+
"properties": {
|
|
170
|
+
"assignment_count": {
|
|
171
|
+
"type": "integer",
|
|
172
|
+
"description": "Total number of active package assignments",
|
|
173
|
+
"minimum": 0
|
|
174
|
+
},
|
|
175
|
+
"assigned_packages": {
|
|
176
|
+
"type": "array",
|
|
177
|
+
"description": "List of packages this creative is assigned to",
|
|
178
|
+
"items": {
|
|
179
|
+
"type": "object",
|
|
180
|
+
"properties": {
|
|
181
|
+
"package_id": {
|
|
182
|
+
"type": "string",
|
|
183
|
+
"description": "Package identifier"
|
|
184
|
+
},
|
|
185
|
+
"package_name": {
|
|
186
|
+
"type": "string",
|
|
187
|
+
"description": "Human-readable package name"
|
|
188
|
+
},
|
|
189
|
+
"assigned_date": {
|
|
190
|
+
"type": "string",
|
|
191
|
+
"format": "date-time",
|
|
192
|
+
"description": "When this assignment was created"
|
|
193
|
+
},
|
|
194
|
+
"status": {
|
|
195
|
+
"type": "string",
|
|
196
|
+
"enum": [
|
|
197
|
+
"active",
|
|
198
|
+
"paused",
|
|
199
|
+
"ended"
|
|
200
|
+
],
|
|
201
|
+
"description": "Status of this specific assignment"
|
|
202
|
+
}
|
|
203
|
+
},
|
|
204
|
+
"required": [
|
|
205
|
+
"package_id",
|
|
206
|
+
"assigned_date",
|
|
207
|
+
"status"
|
|
208
|
+
],
|
|
209
|
+
"additionalProperties": true
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
},
|
|
213
|
+
"required": [
|
|
214
|
+
"assignment_count"
|
|
215
|
+
],
|
|
216
|
+
"additionalProperties": true
|
|
217
|
+
},
|
|
218
|
+
"performance": {
|
|
219
|
+
"type": "object",
|
|
220
|
+
"description": "Aggregated performance metrics (included when include_performance=true)",
|
|
221
|
+
"properties": {
|
|
222
|
+
"impressions": {
|
|
223
|
+
"type": "integer",
|
|
224
|
+
"description": "Total impressions across all assignments",
|
|
225
|
+
"minimum": 0
|
|
226
|
+
},
|
|
227
|
+
"clicks": {
|
|
228
|
+
"type": "integer",
|
|
229
|
+
"description": "Total clicks across all assignments",
|
|
230
|
+
"minimum": 0
|
|
231
|
+
},
|
|
232
|
+
"ctr": {
|
|
233
|
+
"type": "number",
|
|
234
|
+
"description": "Click-through rate (clicks/impressions)",
|
|
235
|
+
"minimum": 0,
|
|
236
|
+
"maximum": 1
|
|
237
|
+
},
|
|
238
|
+
"conversion_rate": {
|
|
239
|
+
"type": "number",
|
|
240
|
+
"description": "Conversion rate across all assignments",
|
|
241
|
+
"minimum": 0,
|
|
242
|
+
"maximum": 1
|
|
243
|
+
},
|
|
244
|
+
"performance_score": {
|
|
245
|
+
"type": "number",
|
|
246
|
+
"description": "Aggregated performance score (0-100)",
|
|
247
|
+
"minimum": 0,
|
|
248
|
+
"maximum": 100
|
|
249
|
+
},
|
|
250
|
+
"last_updated": {
|
|
251
|
+
"type": "string",
|
|
252
|
+
"format": "date-time",
|
|
253
|
+
"description": "When performance data was last updated"
|
|
254
|
+
}
|
|
255
|
+
},
|
|
256
|
+
"required": [
|
|
257
|
+
"last_updated"
|
|
258
|
+
],
|
|
259
|
+
"additionalProperties": true
|
|
260
|
+
},
|
|
261
|
+
"sub_assets": {
|
|
262
|
+
"type": "array",
|
|
263
|
+
"description": "Sub-assets for multi-asset formats (included when include_sub_assets=true)",
|
|
264
|
+
"items": {
|
|
265
|
+
"$ref": "/schemas/core/sub-asset.json"
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
},
|
|
269
|
+
"required": [
|
|
270
|
+
"creative_id",
|
|
271
|
+
"name",
|
|
272
|
+
"format_id",
|
|
273
|
+
"status",
|
|
274
|
+
"created_date",
|
|
275
|
+
"updated_date"
|
|
276
|
+
],
|
|
277
|
+
"additionalProperties": true
|
|
278
|
+
}
|
|
279
|
+
},
|
|
280
|
+
"format_summary": {
|
|
281
|
+
"type": "object",
|
|
282
|
+
"description": "Breakdown of creatives by format type",
|
|
283
|
+
"patternProperties": {
|
|
284
|
+
"^[a-zA-Z0-9_-]+$": {
|
|
285
|
+
"type": "integer",
|
|
286
|
+
"description": "Number of creatives with this format",
|
|
287
|
+
"minimum": 0
|
|
288
|
+
}
|
|
289
|
+
},
|
|
290
|
+
"additionalProperties": true
|
|
291
|
+
},
|
|
292
|
+
"status_summary": {
|
|
293
|
+
"type": "object",
|
|
294
|
+
"description": "Breakdown of creatives by status",
|
|
295
|
+
"properties": {
|
|
296
|
+
"approved": {
|
|
297
|
+
"type": "integer",
|
|
298
|
+
"description": "Number of approved creatives",
|
|
299
|
+
"minimum": 0
|
|
300
|
+
},
|
|
301
|
+
"pending_review": {
|
|
302
|
+
"type": "integer",
|
|
303
|
+
"description": "Number of creatives pending review",
|
|
304
|
+
"minimum": 0
|
|
305
|
+
},
|
|
306
|
+
"rejected": {
|
|
307
|
+
"type": "integer",
|
|
308
|
+
"description": "Number of rejected creatives",
|
|
309
|
+
"minimum": 0
|
|
310
|
+
},
|
|
311
|
+
"archived": {
|
|
312
|
+
"type": "integer",
|
|
313
|
+
"description": "Number of archived creatives",
|
|
314
|
+
"minimum": 0
|
|
315
|
+
}
|
|
316
|
+
},
|
|
317
|
+
"additionalProperties": true
|
|
318
|
+
},
|
|
319
|
+
"context": {
|
|
320
|
+
"$ref": "/schemas/core/context.json"
|
|
321
|
+
},
|
|
322
|
+
"ext": {
|
|
323
|
+
"$ref": "/schemas/core/ext.json"
|
|
324
|
+
}
|
|
325
|
+
},
|
|
326
|
+
"required": [
|
|
327
|
+
"query_summary",
|
|
328
|
+
"pagination",
|
|
329
|
+
"creatives"
|
|
330
|
+
],
|
|
331
|
+
"additionalProperties": true,
|
|
332
|
+
"examples": [
|
|
333
|
+
{
|
|
334
|
+
"description": "Successful library query with results",
|
|
335
|
+
"data": {
|
|
336
|
+
"query_summary": {
|
|
337
|
+
"total_matching": 3,
|
|
338
|
+
"returned": 3,
|
|
339
|
+
"filters_applied": [
|
|
340
|
+
"format=video",
|
|
341
|
+
"status=approved"
|
|
342
|
+
],
|
|
343
|
+
"sort_applied": {
|
|
344
|
+
"field": "created_date",
|
|
345
|
+
"direction": "desc"
|
|
346
|
+
}
|
|
347
|
+
},
|
|
348
|
+
"pagination": {
|
|
349
|
+
"limit": 50,
|
|
350
|
+
"offset": 0,
|
|
351
|
+
"has_more": false,
|
|
352
|
+
"total_pages": 1,
|
|
353
|
+
"current_page": 1
|
|
354
|
+
},
|
|
355
|
+
"creatives": [
|
|
356
|
+
{
|
|
357
|
+
"creative_id": "hero_video_30s",
|
|
358
|
+
"name": "Brand Hero Video 30s",
|
|
359
|
+
"format_id": {
|
|
360
|
+
"agent_url": "https://creative.adcontextprotocol.org",
|
|
361
|
+
"id": "video_30s_vast"
|
|
362
|
+
},
|
|
363
|
+
"status": "approved",
|
|
364
|
+
"created_date": "2024-01-15T10:30:00Z",
|
|
365
|
+
"updated_date": "2024-01-15T14:20:00Z",
|
|
366
|
+
"assets": {
|
|
367
|
+
"vast": {
|
|
368
|
+
"url": "https://vast.example.com/video/123",
|
|
369
|
+
"vast_version": "4.1"
|
|
370
|
+
}
|
|
371
|
+
},
|
|
372
|
+
"tags": [
|
|
373
|
+
"q1_2024",
|
|
374
|
+
"video",
|
|
375
|
+
"brand_awareness"
|
|
376
|
+
]
|
|
377
|
+
}
|
|
378
|
+
],
|
|
379
|
+
"format_summary": {
|
|
380
|
+
"video_30s_vast": 2,
|
|
381
|
+
"display_300x250": 1
|
|
382
|
+
},
|
|
383
|
+
"status_summary": {
|
|
384
|
+
"approved": 3,
|
|
385
|
+
"pending_review": 0,
|
|
386
|
+
"rejected": 0,
|
|
387
|
+
"archived": 0
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
},
|
|
391
|
+
{
|
|
392
|
+
"description": "Query with assignments and performance data",
|
|
393
|
+
"data": {
|
|
394
|
+
"query_summary": {
|
|
395
|
+
"total_matching": 1,
|
|
396
|
+
"returned": 1
|
|
397
|
+
},
|
|
398
|
+
"pagination": {
|
|
399
|
+
"limit": 50,
|
|
400
|
+
"offset": 0,
|
|
401
|
+
"has_more": false
|
|
402
|
+
},
|
|
403
|
+
"creatives": [
|
|
404
|
+
{
|
|
405
|
+
"creative_id": "hero_video_30s",
|
|
406
|
+
"name": "Brand Hero Video 30s",
|
|
407
|
+
"format_id": {
|
|
408
|
+
"agent_url": "https://creative.adcontextprotocol.org",
|
|
409
|
+
"id": "video_30s_vast"
|
|
410
|
+
},
|
|
411
|
+
"status": "approved",
|
|
412
|
+
"created_date": "2024-01-15T10:30:00Z",
|
|
413
|
+
"updated_date": "2024-01-15T14:20:00Z",
|
|
414
|
+
"assignments": {
|
|
415
|
+
"assignment_count": 2,
|
|
416
|
+
"assigned_packages": [
|
|
417
|
+
{
|
|
418
|
+
"package_id": "pkg_ctv_001",
|
|
419
|
+
"package_name": "CTV Prime Time",
|
|
420
|
+
"assigned_date": "2024-01-16T09:00:00Z",
|
|
421
|
+
"status": "active"
|
|
422
|
+
}
|
|
423
|
+
]
|
|
424
|
+
},
|
|
425
|
+
"performance": {
|
|
426
|
+
"impressions": 150000,
|
|
427
|
+
"clicks": 1200,
|
|
428
|
+
"ctr": 0.008,
|
|
429
|
+
"performance_score": 85.2,
|
|
430
|
+
"last_updated": "2024-01-20T12:00:00Z"
|
|
431
|
+
}
|
|
432
|
+
}
|
|
433
|
+
]
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
]
|
|
437
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "/schemas/media-buy/package-request.json",
|
|
4
|
+
"title": "Package Request",
|
|
5
|
+
"description": "Package configuration for media buy creation",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"buyer_ref": {
|
|
9
|
+
"type": "string",
|
|
10
|
+
"description": "Buyer's reference identifier for this package"
|
|
11
|
+
},
|
|
12
|
+
"product_id": {
|
|
13
|
+
"type": "string",
|
|
14
|
+
"description": "Product ID for this package"
|
|
15
|
+
},
|
|
16
|
+
"format_ids": {
|
|
17
|
+
"type": "array",
|
|
18
|
+
"description": "Array of format IDs that will be used for this package - must be supported by the product. If omitted, defaults to all formats supported by the product.",
|
|
19
|
+
"items": {
|
|
20
|
+
"$ref": "/schemas/core/format-id.json"
|
|
21
|
+
},
|
|
22
|
+
"minItems": 1
|
|
23
|
+
},
|
|
24
|
+
"budget": {
|
|
25
|
+
"type": "number",
|
|
26
|
+
"description": "Budget allocation for this package in the media buy's currency",
|
|
27
|
+
"minimum": 0
|
|
28
|
+
},
|
|
29
|
+
"pacing": {
|
|
30
|
+
"$ref": "/schemas/enums/pacing.json"
|
|
31
|
+
},
|
|
32
|
+
"pricing_option_id": {
|
|
33
|
+
"type": "string",
|
|
34
|
+
"description": "ID of the selected pricing option from the product's pricing_options array"
|
|
35
|
+
},
|
|
36
|
+
"bid_price": {
|
|
37
|
+
"type": "number",
|
|
38
|
+
"description": "Bid price for auction-based CPM pricing (required if using cpm-auction-option)",
|
|
39
|
+
"minimum": 0
|
|
40
|
+
},
|
|
41
|
+
"impressions": {
|
|
42
|
+
"type": "number",
|
|
43
|
+
"description": "Impression goal for this package",
|
|
44
|
+
"minimum": 0
|
|
45
|
+
},
|
|
46
|
+
"paused": {
|
|
47
|
+
"type": "boolean",
|
|
48
|
+
"description": "Whether this package should be created in a paused state. Paused packages do not deliver impressions. Defaults to false.",
|
|
49
|
+
"default": false
|
|
50
|
+
},
|
|
51
|
+
"targeting_overlay": {
|
|
52
|
+
"$ref": "/schemas/core/targeting.json"
|
|
53
|
+
},
|
|
54
|
+
"creative_ids": {
|
|
55
|
+
"type": "array",
|
|
56
|
+
"description": "Creative IDs to assign to this package at creation time (references existing library creatives)",
|
|
57
|
+
"items": {
|
|
58
|
+
"type": "string"
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
"creatives": {
|
|
62
|
+
"type": "array",
|
|
63
|
+
"description": "Full creative objects to upload and assign to this package at creation time (alternative to creative_ids - creatives will be added to library). Supports both static and generative creatives.",
|
|
64
|
+
"items": {
|
|
65
|
+
"$ref": "/schemas/core/creative-asset.json"
|
|
66
|
+
},
|
|
67
|
+
"maxItems": 100
|
|
68
|
+
},
|
|
69
|
+
"ext": {
|
|
70
|
+
"$ref": "/schemas/core/ext.json"
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
"required": [
|
|
74
|
+
"buyer_ref",
|
|
75
|
+
"product_id",
|
|
76
|
+
"budget",
|
|
77
|
+
"pricing_option_id"
|
|
78
|
+
],
|
|
79
|
+
"additionalProperties": true
|
|
80
|
+
}
|