@adcp/sdk 6.0.0 → 6.2.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/adapters/legacy/v2-5/create_media_buy.d.ts +4 -0
- package/dist/lib/adapters/legacy/v2-5/create_media_buy.d.ts.map +1 -0
- package/dist/lib/adapters/legacy/v2-5/create_media_buy.js +10 -0
- package/dist/lib/adapters/legacy/v2-5/create_media_buy.js.map +1 -0
- package/dist/lib/adapters/legacy/v2-5/get_products.d.ts +9 -0
- package/dist/lib/adapters/legacy/v2-5/get_products.d.ts.map +1 -0
- package/dist/lib/adapters/legacy/v2-5/get_products.js +15 -0
- package/dist/lib/adapters/legacy/v2-5/get_products.js.map +1 -0
- package/dist/lib/adapters/legacy/v2-5/index.d.ts +35 -0
- package/dist/lib/adapters/legacy/v2-5/index.d.ts.map +1 -0
- package/dist/lib/adapters/legacy/v2-5/index.js +56 -0
- package/dist/lib/adapters/legacy/v2-5/index.js.map +1 -0
- package/dist/lib/adapters/legacy/v2-5/list_creative_formats.d.ts +9 -0
- package/dist/lib/adapters/legacy/v2-5/list_creative_formats.d.ts.map +1 -0
- package/dist/lib/adapters/legacy/v2-5/list_creative_formats.js +15 -0
- package/dist/lib/adapters/legacy/v2-5/list_creative_formats.js.map +1 -0
- package/dist/lib/adapters/legacy/v2-5/preview_creative.d.ts +4 -0
- package/dist/lib/adapters/legacy/v2-5/preview_creative.d.ts.map +1 -0
- package/dist/lib/adapters/legacy/v2-5/preview_creative.js +10 -0
- package/dist/lib/adapters/legacy/v2-5/preview_creative.js.map +1 -0
- package/dist/lib/adapters/legacy/v2-5/sync_creatives.d.ts +11 -0
- package/dist/lib/adapters/legacy/v2-5/sync_creatives.d.ts.map +1 -0
- package/dist/lib/adapters/legacy/v2-5/sync_creatives.js +16 -0
- package/dist/lib/adapters/legacy/v2-5/sync_creatives.js.map +1 -0
- package/dist/lib/adapters/legacy/v2-5/types.d.ts +40 -0
- package/dist/lib/adapters/legacy/v2-5/types.d.ts.map +1 -0
- package/dist/lib/adapters/legacy/v2-5/types.js +25 -0
- package/dist/lib/adapters/legacy/v2-5/types.js.map +1 -0
- package/dist/lib/adapters/legacy/v2-5/update_media_buy.d.ts +4 -0
- package/dist/lib/adapters/legacy/v2-5/update_media_buy.d.ts.map +1 -0
- package/dist/lib/adapters/legacy/v2-5/update_media_buy.js +12 -0
- package/dist/lib/adapters/legacy/v2-5/update_media_buy.js.map +1 -0
- package/dist/lib/core/AgentClient.d.ts.map +1 -1
- package/dist/lib/core/ConversationTypes.d.ts +7 -0
- package/dist/lib/core/ConversationTypes.d.ts.map +1 -1
- package/dist/lib/core/SingleAgentClient.d.ts +9 -14
- package/dist/lib/core/SingleAgentClient.d.ts.map +1 -1
- package/dist/lib/core/SingleAgentClient.js +103 -35
- package/dist/lib/core/SingleAgentClient.js.map +1 -1
- package/dist/lib/core/TaskExecutor.d.ts +19 -0
- package/dist/lib/core/TaskExecutor.d.ts.map +1 -1
- package/dist/lib/core/TaskExecutor.js +28 -1
- package/dist/lib/core/TaskExecutor.js.map +1 -1
- package/dist/lib/errors/index.d.ts +30 -0
- package/dist/lib/errors/index.d.ts.map +1 -1
- package/dist/lib/errors/index.js +36 -1
- package/dist/lib/errors/index.js.map +1 -1
- package/dist/lib/index.d.ts +4 -2
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +12 -8
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/protocols/a2a.d.ts.map +1 -1
- package/dist/lib/protocols/a2a.js +5 -1
- package/dist/lib/protocols/a2a.js.map +1 -1
- package/dist/lib/protocols/index.d.ts +53 -3
- package/dist/lib/protocols/index.d.ts.map +1 -1
- package/dist/lib/protocols/index.js +19 -8
- package/dist/lib/protocols/index.js.map +1 -1
- package/dist/lib/protocols/mcp.d.ts.map +1 -1
- package/dist/lib/protocols/mcp.js +13 -5
- package/dist/lib/protocols/mcp.js.map +1 -1
- package/dist/lib/protocols/responseSizeLimit.d.ts +25 -0
- package/dist/lib/protocols/responseSizeLimit.d.ts.map +1 -0
- package/dist/lib/protocols/responseSizeLimit.js +141 -0
- package/dist/lib/protocols/responseSizeLimit.js.map +1 -0
- 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/server/decisioning/async-outcome.d.ts +16 -10
- package/dist/lib/server/decisioning/async-outcome.d.ts.map +1 -1
- package/dist/lib/server/decisioning/async-outcome.js +15 -56
- package/dist/lib/server/decisioning/async-outcome.js.map +1 -1
- package/dist/lib/server/decisioning/errors-typed.d.ts +10 -4
- package/dist/lib/server/decisioning/errors-typed.d.ts.map +1 -1
- package/dist/lib/server/decisioning/errors-typed.js +13 -29
- package/dist/lib/server/decisioning/errors-typed.js.map +1 -1
- package/dist/lib/server/decisioning/helpers.d.ts.map +1 -1
- package/dist/lib/server/decisioning/helpers.js +0 -2
- package/dist/lib/server/decisioning/helpers.js.map +1 -1
- package/dist/lib/server/decisioning/manifest-helpers.d.ts.map +1 -1
- package/dist/lib/server/decisioning/manifest-helpers.js +0 -2
- package/dist/lib/server/decisioning/manifest-helpers.js.map +1 -1
- package/dist/lib/server/decisioning/runtime/from-platform.js +0 -9
- package/dist/lib/server/decisioning/runtime/from-platform.js.map +1 -1
- package/dist/lib/server/decisioning/start-time.d.ts.map +1 -1
- package/dist/lib/server/decisioning/start-time.js +0 -2
- package/dist/lib/server/decisioning/start-time.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/types/error-codes.d.ts +196 -9
- package/dist/lib/types/error-codes.d.ts.map +1 -1
- package/dist/lib/types/error-codes.js +104 -26
- package/dist/lib/types/error-codes.js.map +1 -1
- package/dist/lib/types/v2-5/index.d.ts +2 -0
- package/dist/lib/types/v2-5/index.d.ts.map +1 -0
- package/dist/lib/types/v2-5/index.js +30 -0
- package/dist/lib/types/v2-5/index.js.map +1 -0
- package/dist/lib/types/v2-5/tools.generated.d.ts +3507 -0
- package/dist/lib/types/v2-5/tools.generated.d.ts.map +1 -0
- package/dist/lib/types/v2-5/tools.generated.js +6 -0
- package/dist/lib/types/v2-5/tools.generated.js.map +1 -0
- package/dist/lib/utils/buyer-retry-policy.d.ts +136 -0
- package/dist/lib/utils/buyer-retry-policy.d.ts.map +1 -0
- package/dist/lib/utils/buyer-retry-policy.js +247 -0
- package/dist/lib/utils/buyer-retry-policy.js.map +1 -0
- 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/utils/sync-creatives-adapter.d.ts +18 -8
- package/dist/lib/utils/sync-creatives-adapter.d.ts.map +1 -1
- package/dist/lib/utils/sync-creatives-adapter.js +70 -17
- package/dist/lib/utils/sync-creatives-adapter.js.map +1 -1
- package/dist/lib/validation/client-hooks.d.ts +13 -8
- package/dist/lib/validation/client-hooks.d.ts.map +1 -1
- package/dist/lib/validation/client-hooks.js +12 -12
- package/dist/lib/validation/client-hooks.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/docs/guides/BUILD-AN-AGENT.md +2 -0
- package/docs/llms.txt +39 -22
- package/package.json +17 -5
- package/skills/build-seller-agent/SKILL.md +38 -5
- package/skills/build-seller-agent/specialisms/sales-guaranteed.md +4 -3
- package/skills/call-adcp-agent.previous/SKILL.md +83 -4
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "/schemas/core/brand-manifest-ref.json",
|
|
4
|
+
"title": "Brand Manifest Reference",
|
|
5
|
+
"description": "Brand manifest provided either as an inline object or a URL string pointing to a hosted manifest",
|
|
6
|
+
"oneOf": [
|
|
7
|
+
{
|
|
8
|
+
"$ref": "/schemas/core/brand-manifest.json",
|
|
9
|
+
"description": "Inline brand manifest object"
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
"type": "string",
|
|
13
|
+
"format": "uri",
|
|
14
|
+
"description": "URL to a hosted brand manifest JSON file. The manifest at this URL must conform to the brand-manifest.json schema."
|
|
15
|
+
}
|
|
16
|
+
],
|
|
17
|
+
"examples": [
|
|
18
|
+
{
|
|
19
|
+
"description": "Inline brand manifest",
|
|
20
|
+
"data": {
|
|
21
|
+
"url": "https://acmecorp.com",
|
|
22
|
+
"name": "ACME Corporation",
|
|
23
|
+
"colors": {
|
|
24
|
+
"primary": "#FF6B35"
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"description": "URL string reference to hosted manifest",
|
|
30
|
+
"data": "https://cdn.acmecorp.com/brand-manifest.json"
|
|
31
|
+
}
|
|
32
|
+
]
|
|
33
|
+
}
|
|
@@ -0,0 +1,409 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "/schemas/core/brand-manifest.json",
|
|
4
|
+
"title": "Brand Manifest",
|
|
5
|
+
"description": "Standardized brand information manifest for creative generation and media buying. Enables low-friction creative workflows by providing brand context that can be easily cached and shared across requests.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"url": {
|
|
9
|
+
"type": "string",
|
|
10
|
+
"format": "uri",
|
|
11
|
+
"description": "Primary brand URL for context and asset discovery. Creative agents can infer brand information from this URL."
|
|
12
|
+
},
|
|
13
|
+
"name": {
|
|
14
|
+
"type": "string",
|
|
15
|
+
"description": "Brand or business name"
|
|
16
|
+
},
|
|
17
|
+
"logos": {
|
|
18
|
+
"type": "array",
|
|
19
|
+
"description": "Brand logo assets with semantic tags for different use cases",
|
|
20
|
+
"items": {
|
|
21
|
+
"type": "object",
|
|
22
|
+
"properties": {
|
|
23
|
+
"url": {
|
|
24
|
+
"type": "string",
|
|
25
|
+
"format": "uri",
|
|
26
|
+
"description": "URL to the logo asset"
|
|
27
|
+
},
|
|
28
|
+
"tags": {
|
|
29
|
+
"type": "array",
|
|
30
|
+
"description": "Semantic tags describing the logo variant (e.g., 'dark', 'light', 'square', 'horizontal', 'icon')",
|
|
31
|
+
"items": {
|
|
32
|
+
"type": "string"
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"width": {
|
|
36
|
+
"type": "integer",
|
|
37
|
+
"description": "Logo width in pixels"
|
|
38
|
+
},
|
|
39
|
+
"height": {
|
|
40
|
+
"type": "integer",
|
|
41
|
+
"description": "Logo height in pixels"
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"required": [
|
|
45
|
+
"url"
|
|
46
|
+
]
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
"colors": {
|
|
50
|
+
"type": "object",
|
|
51
|
+
"description": "Brand color palette",
|
|
52
|
+
"properties": {
|
|
53
|
+
"primary": {
|
|
54
|
+
"type": "string",
|
|
55
|
+
"pattern": "^#[0-9A-Fa-f]{6}$",
|
|
56
|
+
"description": "Primary brand color (hex format)"
|
|
57
|
+
},
|
|
58
|
+
"secondary": {
|
|
59
|
+
"type": "string",
|
|
60
|
+
"pattern": "^#[0-9A-Fa-f]{6}$",
|
|
61
|
+
"description": "Secondary brand color (hex format)"
|
|
62
|
+
},
|
|
63
|
+
"accent": {
|
|
64
|
+
"type": "string",
|
|
65
|
+
"pattern": "^#[0-9A-Fa-f]{6}$",
|
|
66
|
+
"description": "Accent color (hex format)"
|
|
67
|
+
},
|
|
68
|
+
"background": {
|
|
69
|
+
"type": "string",
|
|
70
|
+
"pattern": "^#[0-9A-Fa-f]{6}$",
|
|
71
|
+
"description": "Background color (hex format)"
|
|
72
|
+
},
|
|
73
|
+
"text": {
|
|
74
|
+
"type": "string",
|
|
75
|
+
"pattern": "^#[0-9A-Fa-f]{6}$",
|
|
76
|
+
"description": "Text color (hex format)"
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
"fonts": {
|
|
81
|
+
"type": "object",
|
|
82
|
+
"description": "Brand typography guidelines",
|
|
83
|
+
"properties": {
|
|
84
|
+
"primary": {
|
|
85
|
+
"type": "string",
|
|
86
|
+
"description": "Primary font family name"
|
|
87
|
+
},
|
|
88
|
+
"secondary": {
|
|
89
|
+
"type": "string",
|
|
90
|
+
"description": "Secondary font family name"
|
|
91
|
+
},
|
|
92
|
+
"font_urls": {
|
|
93
|
+
"type": "array",
|
|
94
|
+
"description": "URLs to web font files if using custom fonts",
|
|
95
|
+
"items": {
|
|
96
|
+
"type": "string",
|
|
97
|
+
"format": "uri"
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
"tone": {
|
|
103
|
+
"type": "string",
|
|
104
|
+
"description": "Brand voice and messaging tone (e.g., 'professional', 'casual', 'humorous', 'trustworthy', 'innovative')"
|
|
105
|
+
},
|
|
106
|
+
"tagline": {
|
|
107
|
+
"type": "string",
|
|
108
|
+
"description": "Brand tagline or slogan"
|
|
109
|
+
},
|
|
110
|
+
"assets": {
|
|
111
|
+
"type": "array",
|
|
112
|
+
"description": "Brand asset library with explicit assets and tags. Assets are referenced inline with URLs pointing to CDN-hosted files.",
|
|
113
|
+
"items": {
|
|
114
|
+
"type": "object",
|
|
115
|
+
"properties": {
|
|
116
|
+
"asset_id": {
|
|
117
|
+
"type": "string",
|
|
118
|
+
"description": "Unique identifier for this asset"
|
|
119
|
+
},
|
|
120
|
+
"asset_type": {
|
|
121
|
+
"$ref": "/schemas/enums/asset-content-type.json",
|
|
122
|
+
"description": "Type of asset. Note: Brand manifests typically contain basic media assets (image, video, audio, text). Code assets (html, javascript, css) and ad markup (vast, daast) are usually not part of brand asset libraries."
|
|
123
|
+
},
|
|
124
|
+
"url": {
|
|
125
|
+
"type": "string",
|
|
126
|
+
"format": "uri",
|
|
127
|
+
"description": "URL to CDN-hosted asset file"
|
|
128
|
+
},
|
|
129
|
+
"tags": {
|
|
130
|
+
"type": "array",
|
|
131
|
+
"description": "Tags for asset discovery (e.g., 'holiday', 'lifestyle', 'product_shot')",
|
|
132
|
+
"items": {
|
|
133
|
+
"type": "string"
|
|
134
|
+
}
|
|
135
|
+
},
|
|
136
|
+
"name": {
|
|
137
|
+
"type": "string",
|
|
138
|
+
"description": "Human-readable asset name"
|
|
139
|
+
},
|
|
140
|
+
"description": {
|
|
141
|
+
"type": "string",
|
|
142
|
+
"description": "Asset description or usage notes"
|
|
143
|
+
},
|
|
144
|
+
"width": {
|
|
145
|
+
"type": "integer",
|
|
146
|
+
"description": "Image/video width in pixels"
|
|
147
|
+
},
|
|
148
|
+
"height": {
|
|
149
|
+
"type": "integer",
|
|
150
|
+
"description": "Image/video height in pixels"
|
|
151
|
+
},
|
|
152
|
+
"duration_seconds": {
|
|
153
|
+
"type": "number",
|
|
154
|
+
"description": "Video/audio duration in seconds"
|
|
155
|
+
},
|
|
156
|
+
"file_size_bytes": {
|
|
157
|
+
"type": "integer",
|
|
158
|
+
"description": "File size in bytes"
|
|
159
|
+
},
|
|
160
|
+
"format": {
|
|
161
|
+
"type": "string",
|
|
162
|
+
"description": "File format (e.g., 'jpg', 'mp4', 'mp3')"
|
|
163
|
+
},
|
|
164
|
+
"metadata": {
|
|
165
|
+
"type": "object",
|
|
166
|
+
"description": "Additional asset-specific metadata",
|
|
167
|
+
"additionalProperties": true
|
|
168
|
+
}
|
|
169
|
+
},
|
|
170
|
+
"required": [
|
|
171
|
+
"asset_id",
|
|
172
|
+
"asset_type",
|
|
173
|
+
"url"
|
|
174
|
+
],
|
|
175
|
+
"additionalProperties": true
|
|
176
|
+
}
|
|
177
|
+
},
|
|
178
|
+
"product_catalog": {
|
|
179
|
+
"type": "object",
|
|
180
|
+
"description": "Product catalog information for e-commerce advertisers. Enables SKU-level creative generation and product selection.",
|
|
181
|
+
"properties": {
|
|
182
|
+
"feed_url": {
|
|
183
|
+
"type": "string",
|
|
184
|
+
"format": "uri",
|
|
185
|
+
"description": "URL to product catalog feed"
|
|
186
|
+
},
|
|
187
|
+
"feed_format": {
|
|
188
|
+
"type": "string",
|
|
189
|
+
"enum": [
|
|
190
|
+
"google_merchant_center",
|
|
191
|
+
"facebook_catalog",
|
|
192
|
+
"custom"
|
|
193
|
+
],
|
|
194
|
+
"default": "google_merchant_center",
|
|
195
|
+
"description": "Format of the product feed"
|
|
196
|
+
},
|
|
197
|
+
"categories": {
|
|
198
|
+
"type": "array",
|
|
199
|
+
"description": "Product categories available in the catalog (for filtering)",
|
|
200
|
+
"items": {
|
|
201
|
+
"type": "string"
|
|
202
|
+
}
|
|
203
|
+
},
|
|
204
|
+
"last_updated": {
|
|
205
|
+
"type": "string",
|
|
206
|
+
"format": "date-time",
|
|
207
|
+
"description": "When the product catalog was last updated"
|
|
208
|
+
},
|
|
209
|
+
"update_frequency": {
|
|
210
|
+
"type": "string",
|
|
211
|
+
"enum": [
|
|
212
|
+
"realtime",
|
|
213
|
+
"hourly",
|
|
214
|
+
"daily",
|
|
215
|
+
"weekly"
|
|
216
|
+
],
|
|
217
|
+
"description": "How frequently the product catalog is updated"
|
|
218
|
+
}
|
|
219
|
+
},
|
|
220
|
+
"required": [
|
|
221
|
+
"feed_url"
|
|
222
|
+
],
|
|
223
|
+
"additionalProperties": true
|
|
224
|
+
},
|
|
225
|
+
"disclaimers": {
|
|
226
|
+
"type": "array",
|
|
227
|
+
"description": "Legal disclaimers or required text that must appear in creatives",
|
|
228
|
+
"items": {
|
|
229
|
+
"type": "object",
|
|
230
|
+
"properties": {
|
|
231
|
+
"text": {
|
|
232
|
+
"type": "string",
|
|
233
|
+
"description": "Disclaimer text"
|
|
234
|
+
},
|
|
235
|
+
"context": {
|
|
236
|
+
"type": "string",
|
|
237
|
+
"description": "When this disclaimer applies (e.g., 'financial_products', 'health_claims', 'all')"
|
|
238
|
+
},
|
|
239
|
+
"required": {
|
|
240
|
+
"type": "boolean",
|
|
241
|
+
"description": "Whether this disclaimer must appear",
|
|
242
|
+
"default": true
|
|
243
|
+
}
|
|
244
|
+
},
|
|
245
|
+
"required": [
|
|
246
|
+
"text"
|
|
247
|
+
]
|
|
248
|
+
}
|
|
249
|
+
},
|
|
250
|
+
"industry": {
|
|
251
|
+
"type": "string",
|
|
252
|
+
"description": "Industry or vertical (e.g., 'retail', 'automotive', 'finance', 'healthcare')"
|
|
253
|
+
},
|
|
254
|
+
"target_audience": {
|
|
255
|
+
"type": "string",
|
|
256
|
+
"description": "Primary target audience description"
|
|
257
|
+
},
|
|
258
|
+
"contact": {
|
|
259
|
+
"type": "object",
|
|
260
|
+
"description": "Brand contact information",
|
|
261
|
+
"properties": {
|
|
262
|
+
"email": {
|
|
263
|
+
"type": "string",
|
|
264
|
+
"format": "email",
|
|
265
|
+
"description": "Contact email"
|
|
266
|
+
},
|
|
267
|
+
"phone": {
|
|
268
|
+
"type": "string",
|
|
269
|
+
"description": "Contact phone number"
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
},
|
|
273
|
+
"metadata": {
|
|
274
|
+
"type": "object",
|
|
275
|
+
"description": "Additional brand metadata",
|
|
276
|
+
"properties": {
|
|
277
|
+
"created_date": {
|
|
278
|
+
"type": "string",
|
|
279
|
+
"format": "date-time",
|
|
280
|
+
"description": "When this brand manifest was created"
|
|
281
|
+
},
|
|
282
|
+
"updated_date": {
|
|
283
|
+
"type": "string",
|
|
284
|
+
"format": "date-time",
|
|
285
|
+
"description": "When this brand manifest was last updated"
|
|
286
|
+
},
|
|
287
|
+
"version": {
|
|
288
|
+
"type": "string",
|
|
289
|
+
"description": "Brand card version number"
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
},
|
|
294
|
+
"required": [
|
|
295
|
+
"name"
|
|
296
|
+
],
|
|
297
|
+
"additionalProperties": true,
|
|
298
|
+
"examples": [
|
|
299
|
+
{
|
|
300
|
+
"description": "Example with both URL and name",
|
|
301
|
+
"data": {
|
|
302
|
+
"url": "https://bobsfunburgers.com",
|
|
303
|
+
"name": "Bob's Fun Burgers"
|
|
304
|
+
}
|
|
305
|
+
},
|
|
306
|
+
{
|
|
307
|
+
"description": "Example: white-label brand without dedicated URL",
|
|
308
|
+
"data": {
|
|
309
|
+
"name": "Great Value",
|
|
310
|
+
"colors": {
|
|
311
|
+
"primary": "#0071CE",
|
|
312
|
+
"secondary": "#FFC220"
|
|
313
|
+
},
|
|
314
|
+
"tone": "affordable and trustworthy"
|
|
315
|
+
}
|
|
316
|
+
},
|
|
317
|
+
{
|
|
318
|
+
"description": "Full brand manifest with all fields",
|
|
319
|
+
"data": {
|
|
320
|
+
"url": "https://acmecorp.com",
|
|
321
|
+
"name": "ACME Corporation",
|
|
322
|
+
"logos": [
|
|
323
|
+
{
|
|
324
|
+
"url": "https://cdn.acmecorp.com/logo-square-dark.png",
|
|
325
|
+
"tags": [
|
|
326
|
+
"dark",
|
|
327
|
+
"square"
|
|
328
|
+
],
|
|
329
|
+
"width": 512,
|
|
330
|
+
"height": 512
|
|
331
|
+
},
|
|
332
|
+
{
|
|
333
|
+
"url": "https://cdn.acmecorp.com/logo-horizontal-light.png",
|
|
334
|
+
"tags": [
|
|
335
|
+
"light",
|
|
336
|
+
"horizontal"
|
|
337
|
+
],
|
|
338
|
+
"width": 1200,
|
|
339
|
+
"height": 400
|
|
340
|
+
}
|
|
341
|
+
],
|
|
342
|
+
"colors": {
|
|
343
|
+
"primary": "#FF6B35",
|
|
344
|
+
"secondary": "#004E89",
|
|
345
|
+
"accent": "#F7931E",
|
|
346
|
+
"background": "#FFFFFF",
|
|
347
|
+
"text": "#1A1A1A"
|
|
348
|
+
},
|
|
349
|
+
"fonts": {
|
|
350
|
+
"primary": "Helvetica Neue",
|
|
351
|
+
"secondary": "Georgia"
|
|
352
|
+
},
|
|
353
|
+
"tone": "professional and trustworthy",
|
|
354
|
+
"tagline": "Innovation You Can Trust",
|
|
355
|
+
"assets": [
|
|
356
|
+
{
|
|
357
|
+
"asset_id": "hero_winter_2024",
|
|
358
|
+
"asset_type": "image",
|
|
359
|
+
"url": "https://cdn.acmecorp.com/hero-winter-2024.jpg",
|
|
360
|
+
"tags": [
|
|
361
|
+
"hero",
|
|
362
|
+
"winter",
|
|
363
|
+
"holiday",
|
|
364
|
+
"lifestyle"
|
|
365
|
+
],
|
|
366
|
+
"name": "Winter Campaign Hero",
|
|
367
|
+
"width": 1920,
|
|
368
|
+
"height": 1080,
|
|
369
|
+
"format": "jpg"
|
|
370
|
+
},
|
|
371
|
+
{
|
|
372
|
+
"asset_id": "product_video_30s",
|
|
373
|
+
"asset_type": "video",
|
|
374
|
+
"url": "https://cdn.acmecorp.com/product-demo-30s.mp4",
|
|
375
|
+
"tags": [
|
|
376
|
+
"product",
|
|
377
|
+
"demo",
|
|
378
|
+
"30s"
|
|
379
|
+
],
|
|
380
|
+
"name": "Product Demo 30 Second",
|
|
381
|
+
"width": 1920,
|
|
382
|
+
"height": 1080,
|
|
383
|
+
"duration_seconds": 30,
|
|
384
|
+
"format": "mp4"
|
|
385
|
+
}
|
|
386
|
+
],
|
|
387
|
+
"product_catalog": {
|
|
388
|
+
"feed_url": "https://acmecorp.com/products.xml",
|
|
389
|
+
"feed_format": "google_merchant_center",
|
|
390
|
+
"categories": [
|
|
391
|
+
"electronics/computers",
|
|
392
|
+
"electronics/accessories"
|
|
393
|
+
],
|
|
394
|
+
"last_updated": "2024-03-15T10:00:00Z",
|
|
395
|
+
"update_frequency": "hourly"
|
|
396
|
+
},
|
|
397
|
+
"disclaimers": [
|
|
398
|
+
{
|
|
399
|
+
"text": "Results may vary. Consult a professional before use.",
|
|
400
|
+
"context": "health_claims",
|
|
401
|
+
"required": true
|
|
402
|
+
}
|
|
403
|
+
],
|
|
404
|
+
"industry": "technology",
|
|
405
|
+
"target_audience": "business decision-makers aged 35-55"
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
]
|
|
409
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "/schemas/core/context.json",
|
|
4
|
+
"title": "Context Object",
|
|
5
|
+
"description": "Opaque correlation data that is echoed unchanged in responses. Used for internal tracking, UI session IDs, trace IDs, and other caller-specific identifiers that don't affect protocol behavior. Context data is never parsed by AdCP agents - it's simply preserved and returned.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": true
|
|
8
|
+
}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "/schemas/core/creative-asset.json",
|
|
4
|
+
"title": "Creative Asset",
|
|
5
|
+
"description": "Creative asset for upload to library - supports static assets, generative formats, and third-party snippets",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"creative_id": {
|
|
9
|
+
"type": "string",
|
|
10
|
+
"description": "Unique identifier for the creative"
|
|
11
|
+
},
|
|
12
|
+
"name": {
|
|
13
|
+
"type": "string",
|
|
14
|
+
"description": "Human-readable creative name"
|
|
15
|
+
},
|
|
16
|
+
"format_id": {
|
|
17
|
+
"$ref": "/schemas/core/format-id.json",
|
|
18
|
+
"description": "Format identifier specifying which format this creative conforms to. Can be: (1) concrete format_id referencing a format with fixed dimensions, (2) template format_id referencing a template format, or (3) parameterized format_id with dimensions/duration parameters for template formats."
|
|
19
|
+
},
|
|
20
|
+
"assets": {
|
|
21
|
+
"type": "object",
|
|
22
|
+
"description": "Assets required by the format, keyed by asset_role",
|
|
23
|
+
"patternProperties": {
|
|
24
|
+
"^[a-zA-Z0-9_-]+$": {
|
|
25
|
+
"oneOf": [
|
|
26
|
+
{
|
|
27
|
+
"$ref": "/schemas/core/assets/image-asset.json"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"$ref": "/schemas/core/assets/video-asset.json"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"$ref": "/schemas/core/assets/audio-asset.json"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"$ref": "/schemas/core/assets/text-asset.json"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"$ref": "/schemas/core/assets/html-asset.json"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"$ref": "/schemas/core/assets/css-asset.json"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"$ref": "/schemas/core/assets/javascript-asset.json"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"$ref": "/schemas/core/assets/vast-asset.json"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"$ref": "/schemas/core/assets/daast-asset.json"
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"$ref": "/schemas/core/promoted-offerings.json"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"$ref": "/schemas/core/assets/url-asset.json"
|
|
58
|
+
}
|
|
59
|
+
]
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
"additionalProperties": true
|
|
63
|
+
},
|
|
64
|
+
"inputs": {
|
|
65
|
+
"type": "array",
|
|
66
|
+
"description": "Preview contexts for generative formats - defines what scenarios to generate previews for",
|
|
67
|
+
"items": {
|
|
68
|
+
"type": "object",
|
|
69
|
+
"properties": {
|
|
70
|
+
"name": {
|
|
71
|
+
"type": "string",
|
|
72
|
+
"description": "Human-readable name for this preview variant"
|
|
73
|
+
},
|
|
74
|
+
"macros": {
|
|
75
|
+
"type": "object",
|
|
76
|
+
"description": "Macro values to apply for this preview",
|
|
77
|
+
"additionalProperties": {
|
|
78
|
+
"type": "string"
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
"context_description": {
|
|
82
|
+
"type": "string",
|
|
83
|
+
"description": "Natural language description of the context for AI-generated content"
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
"required": [
|
|
87
|
+
"name"
|
|
88
|
+
],
|
|
89
|
+
"additionalProperties": true
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
"tags": {
|
|
93
|
+
"type": "array",
|
|
94
|
+
"description": "User-defined tags for organization and searchability",
|
|
95
|
+
"items": {
|
|
96
|
+
"type": "string"
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
"approved": {
|
|
100
|
+
"type": "boolean",
|
|
101
|
+
"description": "For generative creatives: set to true to approve and finalize, false to request regeneration with updated assets/message. Omit for non-generative creatives."
|
|
102
|
+
},
|
|
103
|
+
"weight": {
|
|
104
|
+
"type": "number",
|
|
105
|
+
"description": "Optional delivery weight for creative rotation when uploading via create_media_buy or update_media_buy (0-100). If omitted, platform determines rotation. Only used during upload to media buy - not stored in creative library.",
|
|
106
|
+
"minimum": 0,
|
|
107
|
+
"maximum": 100
|
|
108
|
+
},
|
|
109
|
+
"placement_ids": {
|
|
110
|
+
"type": "array",
|
|
111
|
+
"description": "Optional array of placement IDs where this creative should run when uploading via create_media_buy or update_media_buy. References placement_id values from the product's placements array. If omitted, creative runs on all placements. Only used during upload to media buy - not stored in creative library.",
|
|
112
|
+
"items": {
|
|
113
|
+
"type": "string"
|
|
114
|
+
},
|
|
115
|
+
"minItems": 1
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
"required": [
|
|
119
|
+
"creative_id",
|
|
120
|
+
"name",
|
|
121
|
+
"format_id",
|
|
122
|
+
"assets"
|
|
123
|
+
],
|
|
124
|
+
"additionalProperties": true
|
|
125
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "/schemas/core/creative-assignment.json",
|
|
4
|
+
"title": "Creative Assignment",
|
|
5
|
+
"description": "Assignment of a creative asset to a package with optional placement targeting. Used in create_media_buy and update_media_buy requests. Note: sync_creatives does not support placement_ids - use create/update_media_buy for placement-level targeting.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"creative_id": {
|
|
9
|
+
"type": "string",
|
|
10
|
+
"description": "Unique identifier for the creative"
|
|
11
|
+
},
|
|
12
|
+
"weight": {
|
|
13
|
+
"type": "number",
|
|
14
|
+
"description": "Delivery weight for this creative",
|
|
15
|
+
"minimum": 0,
|
|
16
|
+
"maximum": 100
|
|
17
|
+
},
|
|
18
|
+
"placement_ids": {
|
|
19
|
+
"type": "array",
|
|
20
|
+
"description": "Optional array of placement IDs where this creative should run. When omitted, the creative runs on all placements in the package. References placement_id values from the product's placements array.",
|
|
21
|
+
"items": {
|
|
22
|
+
"type": "string"
|
|
23
|
+
},
|
|
24
|
+
"minItems": 1
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"required": [
|
|
28
|
+
"creative_id"
|
|
29
|
+
],
|
|
30
|
+
"additionalProperties": true
|
|
31
|
+
}
|